Насколько я знаю, не рекомендуется использовать CD в сценариях оболочки. Я знаю о пушд. Но не смог найти способ двигаться назад. Предположим, в настоящее время я нахожусь в
/Users/PrashastKumar/Documents/finalDiskCleanUp/script/month
и я хочу переехать в
/Users/PrashastKumar/Documents/finalDiskCleanUp/logs
Как это можно сделать. Я пытался использовать popd, но это не работает. Любой альтернативный метод.
cd
сценарий оболочки и какpushd
лучше.Ответы:
Вы на правильном пути, но пока еще не совсем. Посмотрите на этот пример:
Предпосылка позади
pushd
и вpopd
том , что вы нажимаете папку в стек, а затем , когда вы закончите, вы вытолкнуть его из стека, возвращая к начальной точке.Для того, чтобы добраться до
/Users/PrashastKumar/Documents/finalDiskCleanUp/logs
от/Users/PrashastKumar/Documents/finalDiskCleanUp/script/month
, все , что вам нужно сделать , этоpushd /Users/PrashastKumar/Documents/finalDiskCleanUp/logs
popd
источник
man pushd
иman popd
предоставить такую информацию, но, к сожалению, это не так.pushd
иpopd
приходят с некоторыми из тех же предупреждений, что иcd
- если что-то пойдет не так, вы можете столкнуться с тем , что части вашего скрипта выполняются в неожиданных местах. Всегда проверяйте наличие ошибок при смене каталогов в скрипте, и если у вас нет хорошего способа восстановления, вероятно, лучше выйти с ошибкой, чем продолжить выполнение в неправильном месте.