2

Если кто-то скажет мне «сохранить файл в $ PWD», что это значит?

Знак «$» широко используется пользователями Linux для представления чего-либо?

К вашему сведению, я получил эту фразу из моей инструкции из базового курса C++, который проводится в лаборатории linux.

1 ответ1

3

В большинстве оболочек - sh, bash, csh ..., - синтаксис $NAME обозначает переменные (аналогично %NAME% в Windows cmd.exe); обычно переменные среды, но некоторые из них являются внутренними для оболочки.

(Но учтите, что это соглашение иногда распространяется и на письменные инструкции, в которых вы должны мысленно подставлять значения при чтении текста.)

Аналогично, некоторые языки программирования - PHP, Perl - также используют $name для имен переменных.


В вашем примере $PWD - это автоматический envvar, который раскрывает путь к текущему каталогу:

> cd /etc/modprobe.d
> echo $PWD
/etc/modprobe.d

Таким образом, чтобы сохранить файл «в $ PWD», вам не нужно делать ничего особенного; попытка открыть пустое имя файла без пути уже использует текущий каталог.

Если бы вам дали другую пользовательскую переменную, вам пришлось бы использовать getenv("NAME") чтобы получить ее значение в программе на C++.

Вы можете использовать env чтобы увидеть все переменные окружения, а также проверить документацию оболочки на наличие нескольких необычных.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .