Как правильно использовать параллельный интерфейс в этой ситуации ?

Если вы хотите «вручную» проверить изменение метки времени модификации, а не фактическую разницу в содержании, вам потребуется:

  • stat -c% y $ 1 последовательно с ] разделяющие пространства и внутри $ (...) . Еще лучше, stat -c% y "$ 1" будет работать, если ваше имя файла содержит пробелы или какой-либо символ «подстановки»

  • , тест с классическим [...] или ] test ... и "$ var" (потому что stat% y содержит пробелы; stat% Y позволит избежать этого) или с расширением bash [[...]] , который не требует кавычек, но не (...) , который делает что-то совершенно другое, а именно выполняется в подоболочке

  • некоторая задержка между циклы, чтобы это не перегружало вашу систему

 #!/bin/bash 
 date=$(stat -c %y "$1")
 while sleep 1; do date2=$(stat -c %y "$1")
   if [[ $date2 != $date ]]; then echo "changed!"; break; fi
   # possibly exit [status] instead of break
   # or if you want to watch for another change, date=$date2
 done
0
22.08.2018, 06:16
0 ответов

Теги

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