Je cherche un moyen de créer un répertoire et de changer mon répertoire de travail actuel en un répertoire nouvellement créé simplement en utilisant une seule commande. Comment puis-je faire ceci?
c'est à dire au lieu de faire
user@Computer:~$ mkdir NewDirectory
user@Computer:~$ cd NewDirectory
user@Computer:~/NewDirectory$
je veux faire
user@computer:~$ **command** NewDirectory
user@Computer:~/NewDirectory$
Quelle peut être la commande ?
la source
mkdir "NewDir" && cd "$_"
fonctionne très bienmkdir "NewDir" && cd "NewDir"
car la saisie automatique ne fonctionne pas. BTW qu'est-ce que "$ _"?mkdir
pour passer au nouveau répertoire créé..bashrc
;)Il n'y a pas de fonction intégrée pour cela, mais vous pouvez utiliser la fonctionnalité shell pour vous éviter d'avoir à taper à nouveau l'argument de la
cd
commande après l'exécutionmkdir
:cd
, puis Esc .(ou Alt+ .) pour insérer le dernier argument de la commande précédente.cd !$
s'exécutecd
sur le dernier argument de la commande précédente.mkdir
encd
.Vous pouvez définir une fonction de répertoire de création et de modification simple dans votre
~/.bashrc
:Rechargez votre
.bashrc
(. ~/.bashrc
) ou redémarrez bash, et maintenant vous pouvez tapermkcd new-directory
.Cette version simple échoue dans certains cas inhabituels impliquant des noms de répertoire étranges ou
..
des liens symboliques. Voici celui qui fait. Pour des explications, voir la version Unix et Linux de cette question .la source
il y a une solution listée ci-dessus (identique à ma solution mais sans option -p), mais je pense qu'elle a quelques pièges.
Cela nous donne deux avantages:
&& cd "$_"
changera dans le répertoire nouvellement créé, car$_
maintenez la valeur renvoyée monmkdir
la source