Bearbeiten Sie den symbolischen Link in Nautilus
Das Skript
Um dies in Nautilus zu tun, müssen wir ein Skript erstellen mit:
mkdir -p ~/.local/share/nautilus/scripts
gedit ~/.local/share/nautilus/scripts/edit-link
Fügen Sie Folgendes ein:
#!/bin/bash
# NAME: edit-link
# PATH: $HOME/.local/share/nautilus/scripts
# DESC: Edit symbolic link
# CALL: Called from Nautilus file manager.
# DATE: August 18, 2018.
# strip new line char passed by Nautilus
FILENAME=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')
# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))
if [[ $LINE_COUNT > 1 ]] ; then
zenity --error --text "Ony one file can be selected at a time! "
exit 1
fi
# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
zenity --error --text "$FILENAME is a directory!";
exit 1
else
if [ -L "${FILENAME}" ]; then
: # Bash noop
else
zenity --error --text "${FILENAME} is not a symbolic link!";
exit 2
fi
fi
NewLink=$(zenity --entry --text "Enter new symbolic link")
ln -sf "$NewLink" "${FILENAME}"
exit 0
und machen es ausführbar
chmod +x ~/.local/share/nautilus/scripts/edit-link
Beispielausgabe
Dies sind die verwendeten Testdaten. Der vorletzte Abschnitt zeigt den defekten Link. Dann wird unser Skript mit einem neuen Dateinamen ausgeführt. Der letzte Abschnitt zeigt den neuen guten Link.
Beispielbildschirm
So sieht das Skript aus, wenn Sie es ausführen:
- Markieren Sie eine unterbrochene Verbindung mit Nautilus
- Klicken Sie mit der rechten Maustaste für das Kontextmenü
- Wählen
Scripts
- Wählen
edit-link
- Geben Sie oben einen neuen Dateinamen ein und klicken Sie auf die OKSchaltfläche
Bearbeiten Sie den symbolischen Link in Caja
Die Methode ähnelt Nautilus, weist jedoch einige Caja-Besonderheiten auf. Wir sollten dem GNOME2 → MATE-Migrationshandbuch folgen .
Also müssen wir ein Skript erstellen in ~/.config/caja/scripts
:
mkdir -p ~/.config/caja/scripts
cat > ~/.config/caja/scripts/edit-link << \EOF
#!/bin/bash
# NAME: edit-link
# PATH: $HOME/.config/caja/scripts
# DESC: Edit symbolic link
# CALL: Called from Caja file manager.
# DATE: August 19, 2018.
# strip new line char passed by Caja
FILENAME=$(echo $CAJA_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')
# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$CAJA_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))
if [[ $LINE_COUNT > 1 ]] ; then
zenity --error --text "Ony one file can be selected at a time! "
exit 1
fi
# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
zenity --error --text "$FILENAME is a directory!";
exit 1
else
if [ -L "${FILENAME}" ]; then
: # Bash noop
else
zenity --error --text "${FILENAME} is not a symbolic link!";
exit 2
fi
fi
NewLink=$(zenity --entry --text "Enter new symbolic link")
ln -sf "$NewLink" "${FILENAME}"
exit 0
EOF
und machen es ausführbar
chmod +x ~/.config/caja/scripts/edit-link
Dann können wir dieses Skript aus dem Dropdown-Menü Caja Scripts verwenden.