Відповідно до документації freedesktop Standard Thumbnail Managing Standard
. Ви можете змусити nautilus відтворити ескіз, якщо mtime (час модифікації) у мініатюрі нижче, ніж mtime у вихідному файлі.
- Виявити зміни
Одне важливе - переконатися, що ескіз зображення показує ту саму інформацію, що й оригінал, лише у зменшеній версії. Щоб зробити це можливим, ми використовуємо час модифікації, який зберігається в необхідній клавіші 'Thumb :: MTime' і перевіряємо, чи дорівнює він поточному часу модифікації оригіналу. Якщо ні, ми повинні відтворити ескіз.
Приклад 2. Алгоритм для перевірки на модифікацію.
if (file.mtime! = thumb.MTime) {recreate_thumbnail (); }
Недостатньо зробити файл.mtime> thumb.MTime check. Якщо користувач перемістить> інший файл над оригіналом, де mtime змінюється, але насправді нижче, ніж> ескіз, що зберігається mtime, ми не визнаємо цю модифікацію.
Для того, щоб досягти цього ... ви можете спробувати за допомогою трохи Nautilus-Script встановити mtime в оригінальному файлі на поточний час дотиком команди.
1) Створення сценарію. Відкрийте вікно терміналу Ctrl+ Alt+ Tта введіть:
Для Ubuntu 12.04 та 12.10
nano ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail
Для Ubuntu 13.04 і вище
nano ~/.local/share/nautilus/scripts/Regenerate-Thumbnail
2) Зміст сценарію.
#!/bin/bash
BAKIFS=$IFS
IFS=$'\n'
for FILE in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
touch -m "$FILE"
done
IFS=$BAKIFS
Щоб зберегти зміни в nano .. Ctrl+ O, Enterтоді Ctrl+ X.
3) Щоб зробити сценарій виконуваним.
Для Ubuntu 12.04 та 12.10
chmod +x ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail
Для Ubuntu 13.04 і вище
chmod +x ~/.local/share/nautilus/scripts/Regenerate-Thumbnail
4) Для тестування сценарію ви можете відкрити nautilus, виберіть файл (и), клацніть правою кнопкою миші та перейдіть до « Сценарії»> «Відновити-мініатюру» .
Сподіваюсь, це допомагає.
mv file newfile
, почекати трохи іmv newfile file
. Використовується для роботи.