I just don't know if it's possible and how to cd
for example in a dir that is not named with latin characters.
Example: $ cd άλφα
or $ cd альфа
Update: In a terminal it is ok, but in a CLI environment not.
Yes, of course it's possible as long as directories with these names exists.
How I made:
ls
command in the parent directory where a directory what is named with non-latin characters.cd
followed by a Space then I pressed Shift+Insert and, of course Enter(again, nothing more).If you can't use the mouse, see this quick tutorial.
Add the new keyboard layouts that you need (greek, russian,...)
Go in System settings → Personal → Keyboard Layout and add a new layout:
When you type in terminal, switch between layouts to type in what language do you wish.
For tty1 (where you can go with Ctrl+Alt+F1) - and not only - I found another trick:
~ $ ls bin Desktop file.gif nohup.out Sent to Ubuntu One ttyrecord άλφα Descărcări Documente Muzică Poze tmp.txt Video ~ $ ls > tmp.txt # redirect the output of 'ls' command to 'tmp.txt' file ~ $ cat tmp.txt bin Descărcări Desktop Documente file.gif Muzică nohup.out Poze Sent to Ubuntu One tmp.txt ttyrecord Video άλφα ~ $ # our directory is on line 13 (in my case); we will use this number in next command ~ $ cat tmp.txt | sed -n 13p άλφα ~ $ cd $(cat tmp.txt | sed -n 13p) ~/άλφα $ # voila ~/άλφα > rm -v ../tmp.txt removed ‘../tmp.txt’ ~/άλφα $
$ ls
command every greek named dir appears like chinese? Will it work? (That's happening only when I am in tty1-6)
Sep 15, 2013 at 19:29
The neat thing about files and directories on Linux is that they all have inode number. For instance, doing ls -i
gives me in my home folder the following results:
6038625 图片/
5809021 搜狐影音/
6038605 文档/
6038600 桌面/
Now, what's good about this is that we can use that number to obtain its name via find
command with its -inum
flag, and cd
to any of those folders like so:
$ pwd
/home/xieerqi
$ cd "$(find -maxdepth 1 -type d -inum 6038625)"
$ pwd
/home/xieerqi/图片
And of course since we did ls -i
from the current working directory, we only need -maxdepth 1
. This is actually a very frequent approach to deleting filenames that are problematic or impossible to obtain via copy-paste.
A possibility to avoid having to do that at all: sudo apt-get install nautilus-open-terminal
This adds an "Open in Terminal" item to the File menu and the right-click context menu (when no file is selected) in Nautilus. i.e.: Navigate to the offending folder in Nautilus and then File,Open in Terminal.
You could use zsh as your default terminal (if you do, I'd suggest getting oh-my-zsh as well for extra goodies). zsh tab-complete allows you 'scroll' through the contents of a directory by pressing tab. You can see a what I'm talking about at 0:53 in this video: http://www.youtube.com/watch?v=fE3tYK_wUj8