在 Ubuntu 16.10 中,每次我提取文件时,Nautilus 都会显示对话框“提取已成功完成”。
我怎样才能让 Nautilus 默默地完成提取(就像在 16.04 中那样)?
答案1
制作一个包装器并删除 --notify 参数:
sudo mv /usr/bin/file-roller /usr/bin/file-roller_orig
sudo vi /usr/bin/file-roller
输入以下内容:
#!/bin/bash
p1=$1
p2=$2
p3=$3
p4=$4
p5=$5
p6=$6
if [[ $p2 == *"notify"* ]]; then
p2=""
fi
/usr/bin/file-roller_orig $p1 $p2 $p3 $p4 $p5 $p6
然后赋予文件执行权限:
sudo chmod +x /usr/bin/file-roller
答案2
您需要获取 file-roller 源代码并还原此提交,然后构建/重新打包并安装
https://mail.gnome.org/archives/commits-list/2016-May/msg01732.html
IE
--- file-roller-3.22.2.orig/nautilus/nautilus-fileroller.c
+++ file-roller-3.22.2/nautilus/nautilus-fileroller.c
@@ -82,7 +82,7 @@ extract_here_callback (NautilusMenuItem
dir = nautilus_file_info_get_parent_uri (file);
cmd = g_string_new ("file-roller");
- g_string_append_printf (cmd," --extract-here --notify");
+ g_string_append_printf (cmd," --extract-here");
g_free (dir);
答案3
谢谢尼尔·金对于该包装器/脚本 - 它工作得很好,但一次只能提取最多 4 个档案。我不是命令行专家,但我认为在 p6=$6 之后添加更多条目会起作用,而且确实如此,但是一旦您到达 p9=$9(7 个档案),那就是最大值,因为那些两位数的(例如:p10=$10)将被忽略。所以我加入这里以了解如何让这个脚本解压无限数量的档案,所以如果您也想实现这一点,这是您应该使用的脚本代码:
#!/bin/bash
p1=$1
p2=$2
shift 2
if [[ $p2 == *"notify"* ]]; then
p2=""
fi
/usr/bin/file-roller_orig $p1 $p2 $@
然后赋予文件执行权限:
sudo chmod +x /usr/bin/file-roller
非常感谢luk3yx答案在Bash 脚本:如何使用两位数(如“p10=$10”)或指定全部(用于 File-Roller 脚本)(上面的脚本是我编辑掉一些引号的脚本,因为原始解决方案中有太多引号并且出现错误,但删除除 if/then 行之外的所有引号后问题就解决了。但是虽然不需要引号,但您可以通过上面的链接查看原始解决方案)。