Não sei dizer quantas vezes desejei um comando que crie um diretório e mude para esse diretório. Basicamente, eu gostaria do equivalente ao seguinte:
mkdir -p /arbitrarily/long/path; cd /arbitrarily/long/path
mas apenas tendo que digitar /arbitrarily/long/path
uma vez, algo como:
mk-cd /arbitrarily/long/path
Tentei criar um script para fazer isso, mas ele apenas altera o diretório dentro do script. Eu gostaria que o diretório no shell também tivesse mudado.
#!/bin/bash
mkdir $1
cd $1
export PWD=$PWD
Como eu posso fazer isso funcionar?
cd
informações relacionadas a informações muito legais (retorne ao diretório anterior usando cd -
, use pushd
e popd
para manter uma "pilha" de diretórios): superuser.com/questions/324512/…
mkdir -p /very/long/path
, usar cd
espaço e pressionar Alt + .
para repetir o último argumento, ou seja, o nome do diretório.
mkdir -p /very/long/path; cd !#:2
. A string !#:2
será expandida para o argumento nr. 2 (ou seja, o terceiro argumento /very/long/path
, conforme a contagem começa com zero).
!$
. Eu uso esse truque em particular o tempo todo, embora haja muito mais a fazer com a expansão do histórico .
cd
, você escolheu um caso especial desde o início. : D