#!/bin/bash
# Nautilus opens folders in new tabs
# Dependencies: sudo apt-get install wmctrl xclip
# Pass directories as parameters, i.e. nautab /opt /var/log /usr/local/etc
# Wrong parameters will be shown as invalid directories
if [ "$(wmctrl -xl | grep "nautilus\.Nautilus")" == "" ]; then
# wmctrl reports Nautilus not running
if [[ -d $1 ]]; then
nautilus "$1" &
else
>&2 echo Not a directory: $1
nautilus &
fi
shift
# Nautilus takes some time to become responsive to automation
sleep 2
fi
#Save old clipboard value
oldclip="$(xclip -o -sel clip)"
for folder in "$@"
{
if [ -d "$folder" ]; then
echo -n $folder | xclip -i -sel clip
wmctrl -xF -R nautilus.Nautilus && xdotool key --delay 120 ctrl+t ctrl+l ctrl+v Return
# Use this if you suspect funny clipboard behaviour
#xclip -verbose -o -sel clip
#Leave some time before opening a new tab
sleep 0.5
else
>&2 echo Not a directory: $folder
fi
}
#Restore old clipboard value
echo -n "$oldclip" | xclip -i -sel clip
Nautilus 本身仍然不支持它,但是如果不运行,您可以使用允许多个参数的脚本重用或打开一个新的 Nautilus 实例。
要使用此解决方案,您需要安装 软件包
wmctrl
和xclip
. 您可以使用软件中心(单击链接)或通过终端安装wmctrl和xclipsudo apt-get install wmctrl xclip
。创建一个新文件
nautab.sh
并添加以下代码:此代码基于其他问题的答案。
运行
nautab [directory]...
并在其上打开新选项卡。请注意,会有一些延迟;这是为了等待 Nautilus 响应。随意玩数字。根据豪尔赫的评论,答案是“不”......
所以作为一个附带问题,因为它不是 Nautilus 中的当前选项,所以我拼凑了一个脚本.. 考虑到情况,它适合我。
我最初有一些时间问题导致修饰键状态变坏,所以我在步骤之间添加了 100 毫秒的延迟,现在它在我的系统上运行......
这可能需要在不同的环境中更改...... 。 这里是; 在paste.ubuntu.com