Non so quante volte ho desiderato un comando che avrebbe sia creato una directory che spostato in quella directory. Fondamentalmente, vorrei l'equivalente di quanto segue:
mkdir -p /arbitrarily/long/path; cd /arbitrarily/long/path
ma solo dover digitare /arbitrarily/long/pathuna volta, qualcosa del tipo:
mk-cd /arbitrarily/long/path
Ho provato a creare uno script per farlo, ma cambia solo la directory all'interno dello script. Vorrei che anche la directory nella shell fosse cambiata.
#!/bin/bash
mkdir $1
cd $1
export PWD=$PWD
Come potrei riuscire a farlo funzionare?
cd(torna alla directory precedente usando cd -, usa pushde popdper mantenere una "pila" di directory): superuser.com/questions/324512/…
mkdir -p /very/long/path, quindi utilizzare cd, spazio, quindi premere Alt + .per ripetere l'ultimo argomento, ovvero il nome della directory.
mkdir -p /very/long/path; cd !#:2. La stringa !#:2si espanderà all'argomento nr. 2 (cioè il terzo argomento /very/long/path, poiché il conteggio inizia con zero).
!$. Uso sempre questo trucco particolare, anche se c'è molto di più che puoi fare con l'espansione della storia .
cd, hai scelto un caso speciale fin dall'inizio. : D