Je ne sais pas si c'est possible et comment cd
par exemple dans un répertoire qui n'est pas nommé avec des caractères latins.
Exemple: $ cd άλφα
ou $ cd альфа
Mise à jour: dans un terminal, c'est ok, mais pas dans un environnement CLI.
Oui, bien sûr, c'est possible tant qu'il existe des répertoires avec ces noms.
Comment j'ai fait:
ls
dans le répertoire parent où se trouve un répertoire nommé avec des caractères non latins.cd
suivi d'un Space puis j'ai appuyé Shift+Insert et bien sûr Enter(encore une fois, rien de plus).Si vous ne pouvez pas utiliser la souris, voir ce tutoriel rapide .
Ajoutez les nouvelles dispositions de clavier dont vous avez besoin (grec, russe, ...)
Allez dans Paramètres système → Personnel → Disposition du clavier et ajoutez une nouvelle disposition:
Lorsque vous tapez terminal, basculez entre les mises en page pour saisir la langue que vous souhaitez.
Pour tty1 (où vous pouvez aller avec Ctrl+Alt+F1) - et pas seulement - j'ai trouvé une autre astuce:
~ $ ls bin Desktop file.gif Nohup.out Envoyé à Ubuntu One ttyrecord άλφα Descărcări Documente Muzică Poze tmp.txt Video ~ $ ls> tmp.txt # redirige la sortie de la commande 'ls' vers le fichier 'tmp.txt'~ $ cat tmp.txt bin Descărcări Desktop Documente file.gif Muzică Nohup.out Poze Envoyé à Ubuntu One Tmp.txt Ttyrecord Vidéo Άλφα ~ $ # notre répertoire est en ligne 13 (dans mon cas); nous utiliserons ce numéro dans la prochaine commande~ $ cat tmp.txt | sed -n 13p άλφα ~ $ cd $ (cat tmp.txt | sed -n 13p)~/άλφα $ # voila~/άλφα> rm -v ../tmp.txt a supprimé ‘../tmp.txt ’’s..____.]~/άλφα $
La chose intéressante à propos des fichiers et répertoires sous Linux est qu'ils ont tous inode nombre. Par exemple, faire ls -i
me donne dans mon dossier personnel les résultats suivants:
6038625 图片/
5809021 搜狐影音/
6038605 文档/
6038600 桌面/
Maintenant, ce qui est bien, c'est que nous pouvons utiliser ce numéro pour obtenir son nom via la commande find
avec son -inum
flag et cd
vers l'un de ces dossiers comme ceci:
$ pwd
/home/xieerqi
$ cd "$(find -maxdepth 1 -type d -inum 6038625)"
$ pwd
/home/xieerqi/图片
Et bien sûr, puisque nous avons fait ls -i
à partir du répertoire de travail actuel, nous avons seulement besoin de -maxdepth 1
. Il s'agit en fait d'une approche très fréquente pour supprimer les noms de fichiers qui sont problématiques ou impossibles à obtenir via le copier-coller.
Une possibilité d'éviter d'avoir à le faire du tout: Sudo apt-get install nautilus-open-terminal
Cela ajoute un élément "Ouvrir dans le terminal" au menu Fichier et au menu contextuel du clic droit (lorsqu'aucun fichier n'est sélectionné) dans Nautilus. Par exemple: accédez au dossier incriminé dans Nautilus, puis dans Fichier, Ouvrir dans le terminal.
Vous pouvez utiliser zsh comme terminal par défaut (si vous le faites, je vous suggère également d'obtenir oh-my-zsh pour des cadeaux supplémentaires). zsh tab-complete vous permet de "faire défiler" le contenu d'un répertoire en appuyant sur tab. Vous pouvez voir ce dont je parle à 0:53 dans cette vidéo: http://www.youtube.com/watch?v=fE3tYK_wUj8