bash if -f в домашнем каталоге

Да. По крайней мере, один процесс ждал 5,9 с. Увидел то же самое (5,3 секунды). Похоже, это был сломанный путь волоконно-оптического канала, который не был обнаружен как сломанный; он сработал (иначе симптом исчез) после отключения одного порта на коммутаторе fibrechannel: https://serverfault.com/questions/575447/server-hangs-randomly-without-log-entries

0
18.02.2019, 21:33
1 ответ

Я нашел проблему.

Проблема заключалась в том, что я получал путь из конфигурационного файла, поэтому путь сохранялся в виде строки. Из-за этого тильда не была расширена , что и является причиной проблемы. Мой обходной путь состоял в том, чтобы вручную заменить тильду на $HOME, которая будет расширена, даже если путь указан в кавычках. Так что в основном:

mypath="${mypath/#\~/$HOME}"
#if $mypath is a file
if [[ -f $mypath ]]; then
0
28.01.2020, 03:59

Теги

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