С чего начинается Plasmashell?

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

d=$(cd some-name)

Например:

$ mkdir /tmp/{a..d}
$ CDPATH=/tmp
$ cd /
$ pwd
/
$ dir=$(cd c)
$ printf '%s\n' "${dir%/*}"
/tmp
$ pwd
/

Здесь я записал вывод из cd cв предположении, что запись в CDPATHему удовлетворяет. Результатом является новый рабочий каталог, поэтому, чтобы вернуть соответствующую запись пути из CDPATH, я использую расширение параметра, чтобы удалить последнюю косую черту и далее --, по сути, имя самого глубокого каталога. Он преобразует /tmp/cв /tmpвыше.

1
08.06.2020, 07:26
0 ответов

Теги

Похожие вопросы