Вы можете попробовать Gradio. Я думаю, что это лучшее. Для этого вы можете использовать команду wget. $ wget https://github.com/haecker-felix/gradio/releases/download/v4.0.0/gradio_4.0.0.r105-0.ubuntu16.04.1_amd64.deb $ sudo dpkg -i gradio_4.0.0.r105-0 .ubuntu16.04.1_amd64.deb
Сохраните этот сценарий как Open symlink's parent dir в своем ~/.gnome2/nautilus-scripts/. При щелчке правой кнопкой мыши у вас будет опция в разделе «скрипты», «Открыть родительский каталог symlink».
вы можете открыть родительский каталог любой символической ссылки. символическая ссылка может быть любого файла или папки. Если это не символическая ссылка, вы получите уведомление.
#!/bin/bash
if [ -h $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS ]; then
var="$(readlink $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS)"
else
zenity --info --text="$(basename "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS") is not a symbolic link"
exit 0
fi
if [ -d "$var" ]; then
var2="$var"
else
var2="$(dirname "$var")"
fi
nautilus "$var2"
Если есть более одного soft link
Вы можете использовать readmultilink из этого ответа Radu Rădeanu. После этого скрипт сможет перейти к родительскому каталогу, перемещаясь по нескольким программным ссылкам сразу.
Вам нужно скопировать вставку функции в свой код и использовать readmultilink вместо readlink. [!d10 ]
В конце «NAUTILUS_SCRIPT_SELECTED_FILE_PATHS» есть дополнительный канал, который вызывает проблемы, когда я пытаюсь добавить двойные кавычки для правильного обнаружения файлов.
Я изменил приятное предложение от souravc, поэтому он отлично подходит для меня (фид строки в конце удален, добавлены двойные кавычки, поэтому нет проблем с именами файлов с пробелами).
#!/bin/bash
# Remove line feed at the end of the path
selectedPath="${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS%?}"
# Check if the selected file is a symbolic link
if [ -h "$selectedPath" ]; then
var="$( readlink "$selectedPath" )"
else
zenity --info --text="$( basename "$selectedPath" ) is not a symbolic link"
exit 0
fi
# Open the parent directory of the symbolic link
nautilus "$( dirname "$var" )"