Estoy buscando una manera de crear un directorio y cambiar mi directorio de trabajo actual a un directorio recién creado con solo usar un comando. ¿Cómo puedo hacer esto?
es decir, en lugar de hacer
user@Computer:~$ mkdir NewDirectory
user@Computer:~$ cd NewDirectory
user@Computer:~/NewDirectory$
quiero hacer
user@computer:~$ **command** NewDirectory
user@Computer:~/NewDirectory$
¿Cuál puede ser el comando ?
fuente

mkdir "NewDir" && cd "$_"funciona muy bien quemkdir "NewDir" && cd "NewDir"como autocompletar no funciona. Por cierto, ¿qué es "$ _"?mkdirpara cambiar al nuevo directorio creado..bashrc;)No hay una función incorporada para eso, pero puede usar la funcionalidad de shell para ayudarlo a no tener que
cdvolver a escribir el argumento del comando después de ejecutarmkdir:cd, luego Esc .(o Alt+ .) para insertar el último argumento del comando anterior.cd !$se ejecutacden el último argumento del comando anterior.mkdiracd.Puede definir una función simple de crear y cambiar directorios en su
~/.bashrc:Vuelva a cargar su
.bashrc(. ~/.bashrc) o reinicie bash, y ahora puede escribirmkcd new-directory.Esta versión simple falla en algunos casos inusuales que involucran nombres de directorios extraños o
..enlaces simbólicos. Aquí hay uno que sí. Para obtener explicaciones, consulte la versión de Unix y Linux de esta pregunta .fuente
hay una solución mencionada anteriormente (igual que mi solución pero sin la opción -p), pero creo que tiene algunos inconvenientes.
Esto nos da dos beneficios:
&& cd "$_"cambiará al directorio recién creado, ya que$_mantener el valor devuelto mimkdirfuente