[+] Bash - problem z importem zmiennych

Potrzebujesz pomocy z C, C++, perl, python, itp.
szczypior88
Posty: 29
Rejestracja: 05 lutego 2007, 10:11
Lokalizacja: Poznañ

[+] Bash - problem z importem zmiennych

Post autor: szczypior88 »

Witam.

Mam tak problem, polecenie:

Kod: Zaznacz cały

tar -cf /home/grzesiek/temp.tar /media/hda1/Program\ Files/STREAM\ soft/Ala/Kopia*
kończy się poprawnie utworzeniem archiwum z danymi, ale kiedy chcę pokombinować z importowaniem zmiennych i uruchamiam skrypt:

Kod: Zaznacz cały

#!/bin/bash
foldery=`cat zmienne | grep Foldery| cut -d = -f2`
tar -cf /home/grzesiek/temp.tar $foldery
gdzie plik zmienne wygląda tak:

Kod: Zaznacz cały

Foldery=/media/hda1/Program\ Files/STREAM\ soft/Ala/Kopia*
to wyświetla:

Kod: Zaznacz cały

tar: Usunięcie początkowego `/' z nazw plików
tar: /media/hda1/Program\\: Nie można stat: Nie ma takiego pliku ani katalogu
tar: Files/STREAM\\: Nie można stat: Nie ma takiego pliku ani katalogu
tar: soft/Ala/Kopia*: Nie można stat: Nie ma takiego pliku ani katalogu
tar: Zakończenie z błędem z powodu uprzednich błędów
Choć na mój chłopski rozum jedno z drugim jest równoważne.
bartek
Beginner
Posty: 129
Rejestracja: 01 maja 2006, 08:14

Post autor: bartek »

tar: /media/hda1/Program\\: Nie można stat: Nie ma takiego pliku ani katalogu
tar: Files/STREAM\\: Nie można stat: Nie ma takiego pliku ani katalogu
tar: soft/Ala/Kopia*: Nie można stat: Nie ma takiego pliku ani katalogu
Jak widać nie bash nie radzi sobie z katalogami zawierającymi spację w nazwie. W skrypcie podmień

Kod: Zaznacz cały

tar -cf /home/grzesiek/temp.tar $foldery 

na

Kod: Zaznacz cały

tar -cf /home/grzesiek/temp.tar "$foldery"
Możesz jeszcze wcześniej za pomocą echo wyświetlić tą zmienna, żeby sprawdzić czy jest poprawna.

pzd
br
szczypior88
Posty: 29
Rejestracja: 05 lutego 2007, 10:11
Lokalizacja: Poznañ

Post autor: szczypior88 »

W skrypcie podmień

Kod: Zaznacz cały

tar -cf /home/grzesiek/temp.tar $foldery
na

Kod: Zaznacz cały

tar -cf /home/grzesiek/temp.tar "$foldery"
super! teraz działa :D dzięki wielkie :)

[ Dodano: 2007-03-24, 16:20 ]
kurczę, za wcześnie się cieszyłem :(

problem pojawia się w momencie, kiedy chcę w tej zmiennej umieścić kilka folderów, bo są traktowane jako jedna ścieżka...
ODPOWIEDZ