Добавьте метку времени Unix в файлы с пространством с помощью сценария

Skype использует QT, не Gtk +. Можно проверить библиотеки с ldd команда:

> ldd /usr/lib32/skype/skype | grep Qt
    libQtDBus.so.4 => /usr/lib32/libQtDBus.so.4 (0xf57aa000)
    libQtWebKit.so.4 => /usr/lib32/libQtWebKit.so.4 (0xf40fa000)
    libQtXml.so.4 => /usr/lib32/libQtXml.so.4 (0xf40b6000)
    libQtGui.so.4 => /usr/lib32/libQtGui.so.4 (0xf35e1000)
    libQtNetwork.so.4 => /usr/lib32/libQtNetwork.so.4 (0xf349c000)
    libQtCore.so.4 => /usr/lib32/libQtCore.so.4 (0xf31ac000)

Мое предположение было бы то, что это, возможно, использовало Gtk + в прошлом следовательно страница Wiki, но что это изменилось на QT когда-то в прошлом году.

3
26.12.2014, 03:06
2 ответа

Попробуйте NULL-Delimited в то время как цикл (и не забудьте процитировать все переменные расширения):

#!/bin/bash

dir="/data/"
while IFS= read -r -d '' filename
do
  i="$(date -r "$filename" +%s)"
  mv -- "$filename" "$filename.$i"
done < <(find "$dir" -type f -print0)
2
27.01.2020, 21:19

Попробуйте это вместо этого:

 #!/bin/bash

 shopt -s globstar # require bash4 : recursive

 dir="/data/"
 for filename in $dir**; do
    i=".$(date -r $filename +%s)"
    mv "$filename" "$filename$i"
 done

Если у вас нет Bash4:

find "$dir" -type f -exec bash -c '
    i=".$(date -r $1 +%s)"
    mv "$1" "$1$i"
' -- {} \;

Не забудьте дважды цитировать все переменные!

См. http://mywiki.woolegeed.org/quotes , http://mywiki.woolege.org/arguments и http: //wiki.bash -hackers.org/syntax/words.

2
27.01.2020, 21:19

Теги

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