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 ejecutar mkdir:
- Escriba
cd , luego Esc .(o Alt+ .) para insertar el último argumento del comando anterior.
cd !$se ejecuta cden el último argumento del comando anterior.
- Presione Uppara recuperar la línea de comandos anterior, luego editarlo para cambiar
mkdira cd.
Puede definir una función simple de crear y cambiar directorios en su ~/.bashrc:
mkcd () { mkdir "$1" && cd "$1"; }
Vuelva a cargar su .bashrc( . ~/.bashrc) o reinicie bash, y ahora puede escribir mkcd 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 .
mkcd () {
case "$1" in
/*) mkdir -p "$1" && cd "$1";;
*/../*) (cd "./${1%/../*}/.." && mkdir -p "./${1##*/../}") && cd "$1";;
../*) (cd .. && mkdir -p "${1#.}") && cd "$1";;
*) mkdir -p "./$1" && cd "./$1";;
esac
}
mkdir "NewDir" && cd "$_"funciona muy bien quemkdir "NewDir" && cd "NewDir"como autocompletar no funciona. Por cierto, ¿qué es "$ _"?