выполнение команд в оболочке и отключение отображения команд по умолчанию в консоли

Это мой сценарий

cd /opt/product/vinoth -- some operations -- cd - 

Выполняя эту команду, cd - старый путь будет отображаться в консоли.

есть ли способ заблокировать это от отображения в консоли.

То же самое можно избежать в make-файлах с помощью @ infront команды.

При серфинге я понял, что это можно достичь, используя cmd=$(cd -)

Команда не выполнялась, и путь не был изменен.

  • Zsh скрипт, как конкатенировать элементы массива со строкой
  • Работает в командной строке, но не в сценарии оболочки
  • Динамически присваивать массив значению переменной. Eval?
  • Есть ли что-то эквивалентное getch () в ksh?
  • Добавление 2 переменных в файл в сценарии ожидания
  • Какой интерпретатор оболочки запускает скрипт без shebang?
  • Как использовать эту команду в Crontab?
  • Извлечение строк между специальными символами
  • 2 Solutions collect form web for “выполнение команд в оболочке и отключение отображения команд по умолчанию в консоли”

    OLDPWD этого используйте OLDPWD :

     / $ cd /tmp /tmp $ echo $OLDPWD / /tmp $ cd "$OLDPWD" / $ 

    От man bash :

      OLDPWD The previous working directory as set by the cd command. ... cd An argument of - is converted to $OLDPWD before the directory change is attempted. 

    $(cd -) запускается в подоболочке, поэтому он не может влиять на текущую оболочку.

    Вы также можете сделать:

     cd - >/dev/null 

    Как поясняется в этом ответе, короткий вариант, чтобы не отображать каталог, когда cd в предыдущий рабочий каталог использует расширение тильды ~- :

     cd ~- 
    Linux и Unix - лучшая ОС в мире.