Зачем вам запускать cd. прежде чем что-либо делать?
В этой компиляции ужасов sysadmin , один из авторы, как правило, пишут:
Всегда делайте
cd .
, прежде чем что-либо делать.
Зачем вам это нужно?
3 ответа
Нет.
По крайней мере, не так. Следующая строка в цитируемом документе имеет значение:
- Настройте свое приглашение, чтобы сделать
pwd
каждый раз, когда вы cd.- Всегда делайте
cd .
, прежде чем что-либо делать.
Таким образом, вы, как оператор, проверяете текущую рабочую директорию, прежде чем делать что-либо важное, поскольку оно распечатывается с каждым изменением. cd .
не имеет никакого смысла.
Эта «проверка» - это хорошо, и вы должны адаптировать ее форму. Более общий (IMHO) общий вариант этой темы - всегда печатать рабочий каталог в командной строке.
Если текущий рабочий каталог вашей оболочки удален, можно потерять данные.
Например,
$ pwd
/home/user/test
$ rmdir /home/user/test
$ pwd
/home/user/test
$ some_command | tee command.log
tee: command.log: No such file or directory
<long output>
Выход some_command
не был записан на диск.
Ввод cd .
перед запуском команды выявит проблему.
$ pwd
/home/user/test
$ rmdir /home/user/test
$ cd .
$ pwd
.
Если текущий каталог рабочего каталога был удален и повторно создан, введите cd .
, чтобы «обновить» ссылку на этот каталог.
$ ls
foo bar ljz
$ pwd
/home/user/test
$ rmdir /home/user/test
$ mkdir /home/user/test
$ pwd
/home/user/test
$ ls
$ cd .
$ ls
foo bar ljz
Я думаю, что более важно показать текущий каталог.
На каждом сервере linux я изменяю приглашение в /etc/bashrc
, меняя «W» на «w».
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[email protected]\h \W]\\$ "
к
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[email protected]\h \w]\\$ "
Эффект от этого:
[[email protected] include]#
против
[[email protected] /usr/src/spl-0.6.1/include]#