Si vous venez de commencer à utiliser les outils de ligne de commande dans le système Linux, sachez qu'il s'agit de l'un des outils les plus puissants et les plus utiles du système d'exploitation Linux. La difficulté de l’apprentissage dépend de l’approfondissement que vous souhaitez approfondir. Cependant, quel que soit votre niveau de compétence, quelques trucs et astuces contenus dans cet article vous aideront.
Dans cette série d'articles, nous aborderons quelques conseils très pratiques pour utiliser les outils de ligne de commande et espérons que votre expérience en ligne de commande sera plus agréable.
Cependant, avant de passer à l'étape suivante, je dois souligner que les exemples de tests de cet article ont tous été testés sous le système Ubuntu 14.04LTS. La version du shell de ligne de commande que nous utilisons est bash 4.3.11.
Quelques conseils sur l'utilisation des outils de ligne de commande Linux
Nous supposons que vous maîtrisez certaines connaissances de base de la ligne de commande Linux, telles que ce qu'est le compte root et le répertoire personnel, que sont les variables d'environnement, comment afficher le contenu du répertoire, etc. Ces conseils sont expliqués tout en introduisant les concepts impliqués, le cas échéant.
Changer facilement de répertoire - raccourci
Supposons que vous effectuiez certaines opérations sur la ligne de commande et que vous deviez basculer fréquemment entre les deux répertoires. Et ces deux répertoires se trouvent dans deux chemins complètement différents, par exemple sous /home/ et /usr/ respectivement. Que feriez-vous ?
Parmi eux, le moyen le plus simple et le plus direct est de saisir les chemins complets de ces répertoires. Bien qu’il n’y ait rien de mal à utiliser cette méthode en soi, c’est une perte de temps. Une autre façon consiste à ouvrir deux fenêtres de terminal et à les faire fonctionner séparément. Cependant, ces deux méthodes ne sont ni pratiques à utiliser ni techniques.
Vous devriez être reconnaissant qu'il existe un autre moyen plus simple de résoudre ce problème. Tout ce que vous avez à faire est de basculer manuellement vers ces deux répertoires d'abord (ajouter leurs chemins respectifs via la commande cd), puis d'utiliser la commande cd – pour basculer rapidement entre les deux répertoires.
Par exemple :
Je suis actuellement dans l'annuaire suivant :
]$ pwd /home/himanshu/Downloads
Ensuite, je passe à d'autres répertoires sous le chemin /usr/ :
cd /usr/lib/
Maintenant, je peux facilement utiliser les commandes suivantes pour basculer rapidement vers l'avant et l'arrière vers deux répertoires :
cd -
Ce qui suit est une capture d'écran du fonctionnement de la commande cd :
Une chose que je dois vous souligner est que si vous utilisez cd plus path pour basculer vers le troisième répertoire pendant l'opération, alors la commande cd – sera utilisée pour basculer entre le répertoire actuel et le troisième répertoire.
Changez facilement de répertoire - détails associés
Pour les utilisateurs très curieux et souhaitant comprendre comment fonctionne cd –, l'explication est la suivante : Comme tout le monde le sait, la commande cd nécessite un chemin comme paramètre. Désormais, lorsque le symbole - est passé en argument à la commande cd, il sera remplacé par la valeur de la variable d'environnement OLDPWD.
Vous devez comprendre maintenant que la variable d'environnement OLDPWD stocke le chemin du répertoire d'exploitation précédent. Cette explication est expliquée dans le document d'aide man de la commande cd. Cependant, malheureusement, l'outil d'aide de la commande man n'est peut-être pas préinstallé sur votre système (du moins pas sous le système Ubuntu).
Cependant, l'installation de cet outil d'aide homme est également très simple, il vous suffit d'exécuter la commande d'installation suivante :
sudo apt-get install manpages-posix
Ensuite, procédez comme suit :
man cd
Après avoir ouvert la page d'accueil du document d'aide man, vous verrez l'explication claire suivante :
——Lorsque le symbole - est utilisé comme valeur de paramètre de la commande cd, il sera équivalent à la commande d'opération suivante :
cd "$OLDPWD" && pwd
Il ne fait aucun doute que la commande cd définit la valeur de la variable d'environnement OLDPWD. Ainsi, chaque fois que vous changez de répertoire d'exploitation, le chemin d'accès au répertoire précédent sera enregistré dans cette variable. Cela nous fait également voir un point très important : chaque fois que vous démarrez une nouvelle instance de shell (y compris en exécution manuelle ou en utilisant un script shell), il n'y a pas de « répertoire de travail précédent ».
C'est également logique car la commande cd définit la valeur de la variable d'environnement OLDPWD. Par conséquent, la variable d'environnement OLDPWD ne contiendra aucune valeur sauf si vous exécutez la commande cd au moins une fois.
Passons à autre chose, bien que cela soit un peu difficile à comprendre, les résultats des commandes cd – et cd $OLDWPD ne sont pas les mêmes dans tous les environnements. Par exemple, lorsque vous rouvrez une nouvelle fenêtre shell.
Il ressort clairement de la capture d'écran ci-dessus que lorsque l'invite de commande cd - est exécutée sans définir la valeur OLDPWD, la commande cd $OLDPWD ne signale aucune erreur. En fait, elle remplace le répertoire de travail actuel par le répertoire personnel de l'utilisateur ; annuaire.
那是因为 OLDPWD 变量目前还没有被设置, $OLDPWD 仅仅是一个空字符串。因此, cd $OLDPWD 命令跟 cd 命令的执行结果是一致的,默认情况下,会把用户当前的工作目录切换到用户的 home 目录里。
最后,我还遇到过这样的要求,需要让 cd – 命令执行的结果不显示出来。我的意思是,有这样的情况(比如说,在写 shell 脚本的时候),你想让 cd – 命令的执行结果不要把目录信息显示出来。那种情况下,你就可以使用下面的命令方式了:
cd - &>/dev/null
上面的命令把文件描述符 2(标准输入)和 1(标准输出)的结果重定向到 /dev/null 目录。这意味着,这个命令产生的所有的错误不会显示出来。但是,你也可以使用通用的 $? 方式来检查这个命令的执行是否异常。如果这个命令执行报错, echo $? 将会返回 1,否则返回 0。
或者说,如果你觉得 cd – 命令出错时输出信息没有关系,你也可以使用下面的命令来代替:
cd - > /dev/null
这个命令仅用于将文件描述符 1 (标准输出)重定向到 /dev/null 。
总结
遗憾的是,这篇文章仅包含了一个跟命令行相关的小技巧,但是,我们已经地对 cd – 命令的使用进行了深入地探讨。建议你在自己的 Linux 系统的命令行终端中测试本文中的实例。此外,也强烈建议你查看 man 帮助文档,然后对 cd 命令进行全面测试。
如果你对这篇文章有什么疑问,请在下面的评论区跟大家交流。同时,敬请关注下一篇文章,我们将以同样的方式探讨更多有用的命令行使用技巧。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!