Σελίδα 1 από 1

.sh : command not found

ΔημοσίευσηΔημοσιεύτηκε: 06 Σεπ 2015, 23:46
από Mutrich
Καλησπέρα σας.
Είμαι καινούργιος στον κόσμο των linux, καθώς επίσης και στο shell script.
Προσπαθώ να φτιάξω ένα script για να καθαρίζει τον browser απο το ιστορικό μου, τις προτιμησεις μου και τα cookies.
Το script είναι το εξής:
Κώδικας: Επιλογή όλων
#!/bin/sh

PATH=`zenity --file-selection --directory --title="Choose you folder"`
cd /$PATH/.mozilla/firefox
FILE=`zenity --file-selection --directory --title="Choose your folder "`
cd $FILE
rm places.sqlite search.json cookies.sqlite prefs.js


ενώ μου ανοίγει κανονικά το zenity με μεταβλητή path όταν συνεχίζει παρακάτω στο file μου δείνει το εξής error:
Κώδικας: Επιλογή όλων
name.sh: line 6: zenity: command not found
name.sh: line 9: rm: command not found

Είναι πολυ πρόχειρο ακόμα :angel:

Προσπαθώ να καταλάβω ποιό είναι το πρόβλημα αλλά δεν...
Ευχαριστώ εκ των προτέρων

Re: .sh : command not found  Το θέμα επιλύθηκε

ΔημοσίευσηΔημοσιεύτηκε: 07 Σεπ 2015, 01:35
από fkol k4
Χρησιμοποιείς το όνομα μεταβλητής PATH
Αυτό το όνομα χρησιμοποιείται από το σύστημα ως μεταβλητή και περιέχει τα σημεία στα οποία το ίδιο το σύστημα ψάχνει να βρει εκτελέσιμα.
Άνοιξε ένα τερματικό και γράψε την εντολή
Κώδικας: Επιλογή όλων
echo $PATH

για να δεις που ψάχνει το σύστημα για εκτελέσιμα.

Από τη στιγμή που το αλλάζεις μέσα από το σκριπτ, τότε (μιας και ο ρόλος της $PATH δεν αλλάζει), το σύστημα ψάχνει να βρει τα επόμενα εκτελέσιμα στο νέο $PATH, όπου φυσικά δεν υπάρχουν, εξ' ου και το μήνυμα command not found.

Mην χρησιμοποιείς το όνομα μιας global μεταβλητής συστήματος μέσα σε ένα script. Άλλαξε όνομα.
Και επειδή οι global μεταβλητές συστήματος είναι λέξεις σε κεφαλαία, καλό θα είναι γενικότερα να μην χρησιμοποιείς κεφαλαία για το όνομα των μεταβλητών σου.

Αν θέλεις να δεις ποιες είναι οι global μεταβλητές συστήματος, άνοιξε ένα τερματικό, γράψε
Κώδικας: Επιλογή όλων
echo $
και πάτα 2 φορές το <ΤΑΒ> για να στις δείξει το autocomplete.

Re: .sh : command not found

ΔημοσίευσηΔημοσιεύτηκε: 07 Σεπ 2015, 02:19
από Mutrich
Ευχαριστώ πολυ. Λύθηκε το θέμα :D