Назад | Перейти на главную страницу

Что эквивалентно chdir для UNIX?

Я работаю над OSX 10.11.4, пытаясь написать простой сценарий bash. я собираюсь command not found когда я пытаюсь использовать chdir. Когда я тестирую с which chdir Я ничего не получаю. В чем дело?

Я использую этот неуклюжий обходной путь ...

alias vagrants_up='here=$(pwd) && cd ~/Vagrant && vagrant up && cd $(echo $here)'

Предполагая, что вы используете bash оболочка, взгляни на pushd и popd. Это две очень невоспетые команды, которые полезны в подобных случаях. pushd помещает текущий рабочий каталог в стек, а затем выполняет cd в указанный вами каталог. popd затем вытолкнет верхний каталог из этого стека и cd к нему. Используя их, ваш псевдоним будет:

alias vagrants_up=`pushd ~/Vagrant && vagrant up && popd`

Они также очень удобны для интерактивного использования. Я псевдоним cd к pushd и bk к popd и обнаружил, что мой рабочий процесс менее загроможден, когда мне нужно только подумать о том, чтобы сделать одно, два или три изменения каталога, которые мне не нужно записывать по буквам, вместо того, чтобы постоянно вводить имена каталогов.