![Nautilus 脚本 - 选择每个第二个文件](https://linux22.com/image/1122445/Nautilus%20%E8%84%9A%E6%9C%AC%20-%20%E9%80%89%E6%8B%A9%E6%AF%8F%E4%B8%AA%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%96%87%E4%BB%B6.png)
是否可以编写一个脚本来选择每个第二个文件
我发现了类似的东西
http://g-scripts.sourceforge.net/cat-filesysmgt.php
但已下线。
我创建了许多例行备份,但过了一段时间后,保留所有备份就没有用了,通过选择每隔一个备份将它们减半会很有用。
使用 Ubuntu 12.04 中的 Nautilus 3.4。
答案1
或许将文件移至垃圾文件夹比将它们全部删除更为明智。您可以通过从 nautilus 上下文菜单中选择脚本来实现此目的。我不知道您指的是哪个脚本,但这个脚本就足够了。
因此,创建脚本,使其可执行并将其放在 nautilus 脚本文件夹中。
#!/bin/bash
comm_susbst=$(echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
files_del=$(echo "$comm_susbst" | sed -n 'n;p')
num_files=$(echo "$files_del" | wc -l)
zenity --question --title="Delete every second file" \
--text="Are you sure you want to delete these files? \n You will delete $num_files files! \n\n $files_del"
if [ $? == 0 ]; then
echo "$files_del" | while read; do mv -t /home/$USER/.local/share/Trash/files "$REPLY"; sleep 0.1; done
else exit 1
fi
exit 0
选择文件并运行脚本后,zenity 窗口将弹出以供确认。如果您坚持删除文件,请将该mv
行替换为do rm -f "$REPLY"
。我希望它能像您想象的那样工作 :)