Sida 1 av 1
zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 11:11
av webaake
I Feisty funkade detta bash/zenityscript
cp ~Desktop/ "$*" /nånannatsans/"$*"
I Hardy fuankar inte detta och inte heller dessa:
cp ~Skrivbord/ "$*" /nånannatsans/"$*
-
cp "$*" /nånannatsans/"$*
/home/user/Desktop eller /hoime/user/Skrivbord hjälper inte heller.
I alla andra mappar funkar detta i Hardy
cp "$*" /nånannatsans/"$*
Men inte om filen ligger på skrivbordet!?
Mitt script ser ut cirka såhär:
#!/bin/bash
# EGET script som flyttar vald fil
(
echo "10"
echo "20"
cp ~/Skrivbord/"$*" /home/user/awatch/"$*"
echo "90"
) | zenity --progress --pulsate --auto-close --title "FLYTTAR TILL " --text "$*"
zenity --info --title "FLYTTAT" --text "$* flyttad"
exit 0
Scriptet gör alltså att man genom att högerklikc på en fil kan flytta den till specificerad mapp. Probelmet är alltså att under Feisty var ~Desktop/"$* inte tom under Harrdy är den det.
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 14:40
av mcNisse
Jag har svårt att hänga med.
~Desktop betyter hemkatalogen för användare Desktop. Är det det du menar eller ~/Desktop?
Rent generellt är det fel att skriva:
eftersom om skriptet får fler än ett argument kommer det bli fel (förhoppningsvis). $* expanderas till alla argument som skriptet får.
borde fungera bättre...
Men du säger att det inte fungerar från desktop. testa med ett extra zenity fönster och kolla var du står när skriptet körs.
Kod: Markera allt
zenity --info --title `pwd` --text "`pwd` $*"
Så kanske du kan lista ut vad som är problemet...
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 15:17
av webaake
Din kod gav /home/user/Skrivbod precis som det skulle.
Detta funkade i Feisty, varför funkar det inte nu?
cp "$*" funkar som sagt fin-fint överallt annars, men inte på filer på skrivbordet. Vare sig om man skriver ~/Skrivbord eller /home/user/Skrivbord
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 15:25
av mcNisse
Det låter som du inte skulle ha rätt att komma åt ditt skrivbord?!
vad ger ls -ld ~/Skrivbord ~/Desktop?
För att beskriva skillnaden mellan "$@" och "$*".
Så expanderas "$*" till "$1 $2 $3 osv" medan "$@" blir "$1" "$2" "$3" osv.
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 15:53
av webaake
ls -ld ~/Skrivbord ~/Desktop
ls: cannot access /home/mrmedia/Desktop: No such file or directory
drwxr-xr-x 2 mrmedia mrmedia 4096 2008-04-26 01:06 /home/mrmedia/Skrivbord
Också som det skulle väl?
Kanske skulle pröva $@ istället?
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 16:01
av mcNisse
webaake skrev:Också som det skulle väl?
Det är bra omm ditt användarnamn är mrmedia. Fast å andra sidan borde du få kopiera därifrån ändå.... Det hänger på rättigheterna i /home/mrmedia
webaake skrev:Kanske skulle pröva $@ istället?
Det är bättre, men kommer inte lösa ditt problem.
Du kan testa vad som blir fel med detta... du får ev fel i ~/copy.log
Kod: Markera allt
cp "$@" /home/user/awatch 2>&1 >> ~/copy.log
Re: zenity och flytta filer från Desktop?
Postat: 26 apr 2008, 18:35
av webaake
Om man kör den koden på en fil som ligger på Skrivbordet blir copy.log helt tom.
Jag tror att problemet ligger i att $* är en tom variabel när man försöker köra nautilus-scriptet direkt från skrivbordet.
Kör man scriptet s a s inifårn Nautlius, helt enkelt letar upp mappen Skrivbord i nautlius, och därifrån kör samma script. Så funkar det.
Men det funkade som sagt i Feisty direkt från skrivbordet.
Kan det ha nåt att göra med att man gått över till GVFS?