Неработающая символическая ссылка / usr / bin / env?

Оболочка выполняет расширение тильды. readlink doesn't. Bash не будет расширять тильду внутри кавычек.

readlink -f $a не делает того, что вы хотите, поскольку расширение тильды происходит до расширения переменной, то есть переменная расширяется до ~, но эта тильда не будет расширена дальше.

Порядок выполнения действий в Bash следующий: расширение скобок, расширение тильды, расширение параметров и переменных, команда подстановка, арифметическое расширение, разделение слов и расширение имени пути расширение.

Использование $HOME может быть предпочтительнее использования тильды при некоторых обстоятельствах, поскольку она ведет себя как любая другая переменная.

Также, пожалуйста, не работайте, войдя в систему как root...

1
29.11.2016, 11:18
1 ответ

Нет, теоретически переустановка coreutils не должна быть опасной, и да, она должна вернуть env.

Однако я бы больше беспокоился о том, почему он вообще пропал. Если вы уверены, что ничего не меняли, и это веб-сервер, то есть, предположительно, открытый для интернета, вы хотите проверить, не была ли ваша система взломана.

1
27.01.2020, 23:46

Теги

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