Sida 1 av 1
Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 12:07
av StefanB
Jag håller på att skapa ett Nautilusskript för att kunna välja mellan att öppna som vanlig användare eller som root:
Kod: Markera allt
#!/bin/bash
# Source: http://g-scripts.sourceforge.net/nautilus-scripts/Execute/Misc/gedit
# Source: http://linux.byexamples.com/archives/265/a-complete-zenity-dialog-examples-2/
filesall=""
while [ $# -gt 0 ]
do
files=`echo "$1" | sed 's/ /\?/g'`
filesall="$files $filesall"
shift
done
ans=$(zenity --list --text "Open normally or as root" --radiolist --column "Pick" --column "Option" TRUE Normally FALSE Root);
if [ "$ans" = "Normally" ]
then gedit $filesall&
else gksudo gedit $filesall&
fi
När jag väljer Normally öppnas den valda filen som den ska, men när jag väljer Root öppnas även ett nytt dokument ("Namnlöst dokument") vid sidan av den valda filen. Hur kan jag förhindra det?
Re: Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 14:14
av ubot
Har du sett det här:
http://gnome-look.org/content/show.php/ ... tent=76932
Jag misstänker att det är något knas med variabeln $filesall.
Vad innehåller den egentligen för sträng/värde?
Varför ska man välja mellan att öppna filen som vanlig användare och att öppna filen med administratörsrättigheter? Är det inte bättre att bara ha ett högerklicksalt. i Nautilus som heter "Öppna som root" eller något och sedan öppna som vanlig användare om man öppnar filen som vanligt? Eller du är kanske ute efter funktionen att öppna många filer samtidigt som root?
Det finns även ett paket i Ubuntus förråd som heter:
nautilus-gksu - privilege granting extension for nautilus using gksu
Det här är ska också vara en workaround på ett problem som ditt:
Kod: Markera allt
quoted=$(echo -e "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | awk 'BEGIN { FS = "\n" } { printf "\"%s\" ", $1 }' | sed -e s#\"\"##)
eval "your-program $quoted"
Du kan ju testa att byta ut NAUTILUS_SCRIPT_SELECTED_FILE_PATHS mot NAUTILUS_SCRIPT_SELECTED_URIS. Läs mer här:
http://g-scripts.sourceforge.net/faq.php
Re: Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 14:44
av StefanB
ubot skrev:Har du sett det här:
http://gnome-look.org/content/show.php/ ... tent=76932
Jag misstänker att det är något knas med variabeln $filesall.
Vad innehåller den egentligen för sträng/värde?
Varför ska man välja mellan att öppna filen som vanlig användare och att öppna filen med administratörsrättigheter? Är det inte bättre att bara ha ett högerklicksalt. i Nautilus som heter "Öppna som root" eller något och sedan öppna som vanlig användare om man öppnar filen som vanligt? Eller du är kanske ute efter funktionen att öppna många filer samtidigt som root?
Det finns även ett paket i Ubuntus förråd som heter:
nautilus-gksu - privilege granting extension for nautilus using gksu
Jag vill helt enkelt ha ett menyalternativ där jag väljer om fil/er ska öppnas som vanlig användare eller som root. Jag har två olika för vanlig och root, men jag tycker det skulle vara snyggare med endast ett alternativ där jag kan välja via en dialog. Det är främst i systemmapparna det blir aktuellt att välja, ibland vill jag öppna en fil utan att kunna ändra den och andra gånger vill jag ändra.
Re: Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 15:17
av StefanB
Det verkar som att det inte är skriptet det är fel på. Om jag i terminalen kör
så öppnas gedit med aktuell fil, men även med ett nytt dokument. Det kanske är en bugg.
Edit: Ja, det är en bugg:
https://bugs.launchpad.net/ubuntu/+source/gedit/+bug/796076
Re: Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 16:20
av ubot
Jaha. Se där.
Re: Nautliusskript öppnar ett nytt dokument
Postat: 27 nov 2011, 17:01
av Bowmore
En "nödlösning" för kommandot
gedit är att använda
sudo istf
gksu/gksudo.
Skapade själv ett nautilus-skript för root-fallet då
nautilus-gksu slutade att fungera iom övergången från Gnome2 till Gnome3 i Oneiric. I mitt fall ser det skriptet ut så här:
Kod: Markera allt
#!/bin/bash
for uri in $NAUTILUS_SCRIPT_SELECTED_URIS; do
sudo gedit $uri &
done