Нет никакого способа предотвратить **
от того, чтобы переходить по символьным ссылкам в ударе, ни имеет запрос для позволения встреченный любой ответ.
Если Вы чувствуете себя подобно написанию кода, Вы могли бы исправить удар для представления новой опции, которая выключает обход символьной ссылки с **
. При представлении патча к специалисту по обслуживанию удара это увеличило бы шанс той функции, присутствующей один день. Тем не менее, по крайней мере тем временем, Вы закончили бы с необходимостью развернуть и поддержать локальную версию критической системной программы, которая является, вероятно, плохой идеей.
Нет никакого способа изменить поведение **
с псевдонимом. Если Вы используете промежуточный массив для хранения результата расширения, вот то, как можно использовать find
вместо этого:
find . … -print0 | {
a=()
while read -r -d "" line; do
a+=("$line")
done
frobnicate "${a[@]}"
}
Обратите внимание, что целая часть программы, которая использует вывод find
должен быть в правой стороне конвейера, так как удар выполняет правую сторону конвейера в подпроцессе.
Если нормально исключать файлы, имя которых содержит символ новой строки, это легче:
set -f; IFS=
a=($(find . … ! -name $'*\n*' -print))
set +f; unset IFS
frobnicate "${a[@]}"
Вы могли попытаться запустить свои существующие скрипты в ksh режиме эмуляции zsh. Zsh не реализует все опции удара — почти вся функциональность удара существует в zsh, но иногда с несовместимым синтаксисом. Вы могли также попытаться выполнить сценарии wih ksh93: версии с тех пор 93o + поддержка **
как в zsh, и большинство (но снова, не все) функций удара от ksh, таким образом, Ваши сценарии могут быть легкими к порту к ksh93. Переключение на ksh обладает дополнительным преимуществом, что это имеет тенденцию быть быстрее или, чем удар или, чем zsh.
Когда вы используете NetworkManager, он обычно управляет /etc/resolv.conf
, поэтому вы не хотите управлять этим непосредственно с помощью кукол. Вместо этого вы хотите управлять файлами конфигурации, которые зависят от битовой распределения.
Но формат конфигурации восходящего по умолчанию хранится в / etc / ettewmanager / system-connections
и в этом каталоге вы можете отбросить новые файлы конфигурации E.g. с марионеткой. Другим способом заключается в том, чтобы сделать это разговаривать с NetworkManager через API (прямо через D-Bus или через LIBNM
или даже NMCLI
).
Есть еще опция настройки DNS = none
в главном разделе /etc/networkmanager/networkmanager.conf
и обработка resolv.conf
Отказ