2012-01-18 4 views
3

Привет всем Я довольно новичок в Unix, так что простите меня!Псевдоним в Unix для изменения каталога

У меня есть следующий файл .profile, который я использую для назначения псевдонимов!

alias here='export THERE_PWD=`echo $PWD`' 
    alias there='cd $THERE_PWD' 

Надеюсь, вы увидите, что я пытаюсь сделать. Используя команду «здесь», я могу указать, где я в конечном итоге хочу сменить каталог обратно после работы в другом каталоге (набрав «там»).

Однако, похоже, что это не сработало! Где я ошибся? Это сэкономит мне много времени, если я заработаю!

+0

Попробуйте использовать 'THERE_PWD =" {tickmark} cwd {tickmark} "' – Blender

+1

Соответствует ли 'cd -' вашим требованиям? ('cd' использует переменную' $ OLDPWD' при вызове с '-') – olibre

+1

Поскольку вы новичок в Unix, вам лучше научиться использовать существующие команды, а не придумывать свои собственные: тогда, когда вам придется используйте новый (для вас) хост Unix, можете работать и выполнять свою работу без необходимости создавать псевдонимы. – Johnsyweb

ответ

3

Вы можете просто использовать встроенный в стек дир через pushd и popd:
pushd new_dir выталкивает текущую директорию в стек и изменения в new_dir
popd возвращается туда, где вы пришли.

+0

, так что бы псевдоним здесь просто был 'here = 'pushd $ PWD'' –

+1

Да, вы могли бы сделать так. Я бы использовал 'alias here = 'pushd .'', и ваша команда' there' была просто 'popd'. Лично я бы не стал беспокоиться об алиасах. 'pushd. 'достаточно кратким. – tzaman

+0

большое спасибо tzaman! –

Смежные вопросы