En Bash y shells similares, cd -
cambia el directorio actual a uno visitado anteriormente. Suele ser muy útil. Me pregunto si existe una abreviatura similar para copiar o mover archivos, como:
~/project-a/ $ cd ../project-b
~/project-b/ $ cp Makefile LICENSE - # this won't work, hence the question
También estaría contento con zsh
respuestas específicas.
Respuesta1
Si su shell tiene cd -
, entonces probablemente tendrá la variable especial $OLDPWD
y/o el acceso directo ~-
para el directorio en el que estuvo anteriormente.
cp Makefile LICENSE "$OLDPWD/"
cp Makefile LICENSE ~-
cat ~-/Makefile
De hecho, el lenguaje de shell POSIX (sobre el cual se construyen ksh/bash/zsh)especificaeso cd -
debería ser igual a cd "$OLDPWD"
.
Respuesta2
Siempre puedes usarcomillas traseras de shell.
Actúan como una subcapa: el comando entre comillas se ejecuta primero y su salida se coloca como argumento del comando principal.
~/folderA$ cd ../folderB
~/folderB$ cp Makefile `cd -`
# gets expended to "cp Makefile ~/folderA"