View Full Version : Come rendere un file eseguibile avviabile da qualunque directoy mi trovo
ciottano
20-07-2005, 21:16
Ciao a tutti, ho decompresso da un file tar.gz un programma in una cartella. Ora per avviarlo devo far scrivere ./nomefile. Vorrei renderlo avviabile scrivendo solo nomefile e da qualsiasi directory mi trovo. Credo sia un problema legato alla bash, ma nn so di cosa si tratta. Vi prego di darmi spiegazioni.
Grazie a tutti, Giordano.
eclissi83
20-07-2005, 21:51
metti la dir estratta in una di quelle del PATH (echo $PATH per vedere quali sono queste dir), oppure aggiungi il percorso attuale della dir nel PATH editando /etc/profile
ciao
stefanoxjx
20-07-2005, 21:59
Ciao a tutti, ho decompresso da un file tar.gz un programma in una cartella. Ora per avviarlo devo far scrivere ./nomefile. Vorrei renderlo avviabile scrivendo solo nomefile e da qualsiasi directory mi trovo. Credo sia un problema legato alla bash, ma nn so di cosa si tratta. Vi prego di darmi spiegazioni.
Grazie a tutti, Giordano.
Oppure crei un link simbolico dentro a una cartella raggiunta dal path (es. bin) al file che ti interessa.
Ciao.
ciottano
20-07-2005, 22:08
Ho editato quel file ma nn ci sono scritte i percorsi ottenuti con echo
stefanoxjx
20-07-2005, 22:11
Ho editato quel file ma nn ci sono scritte i percorsi ottenuti con echo
Secondo me non ti conviene aggiungere un ulteriore percorso al path, è meglio creare un link simbolico.
Ciao.
ciottano
20-07-2005, 22:12
Ho creato un link ad un'applicazione ma nn va
stefanoxjx
21-07-2005, 10:48
Ho creato un link ad un'applicazione ma nn va
Ma dove l'hai creato?
Devi crearlo in una cartella raggiunta dal path, per esempio /bin.
Io ho provato e da me funziona !!!!!
Ciao a tutti.
Io ho lo stesso problema.
Ecco cosa ho fatto.
Il comando bash che voglio rendre avviabile in qualsiasi path si trova in
/home/utente/ciccio/pasticcio.sh
Ho avviato il comando
echo $PATH
Tra le folder risoltanti c'era
/usr/bin/
Allora sono entrato in questa folder e ho scritto
ln -s /home/utente/ciccio/pasticcio.sh
Poi sono andato nella folder root e ho provato a lanciare questi comandi
./pasticcio.sh
sh ./pasticcio.sh
sh pasticcio.sh
pasticcio.sh
Li ho provati a lanciare anche come root, ma nulla da fare....
Sapreste dirmi l'errore che commetto?
Grazie
Ciao
MpMp
Compiando direttamente il file in
/usr/bin/
funziona, perchè col link simbolico no?
stefanoxjx
07-12-2007, 11:06
Ciao a tutti.
Io ho lo stesso problema.
Ecco cosa ho fatto.
Il comando bash che voglio rendre avviabile in qualsiasi path si trova in
/home/utente/ciccio/pasticcio.sh
Ho avviato il comando
echo $PATH
Tra le folder risoltanti c'era
/usr/bin/
Allora sono entrato in questa folder e ho scritto
ln -s /home/utente/ciccio/pasticcio.sh
Poi sono andato nella folder root e ho provato a lanciare questi comandi
./pasticcio.sh
sh ./pasticcio.sh
sh pasticcio.sh
pasticcio.sh
Li ho provati a lanciare anche come root, ma nulla da fare....
Sapreste dirmi l'errore che commetto?
Grazie
Ciao
MpMp
Non so se hai sbagliato a trascrivere, però:
ln -s /home/utente/ciccio/pasticcio.sh
è sbagliato.
La formula corretta sarebbe
ln -s pasticcio /home/utente/ciccio/pasticcio.sh
Ma forse hai solo sbagliato a trasrivere :confused:
Ciao a tutti.
Io ho lo stesso problema.
Ecco cosa ho fatto.
...
[CUT]
Segnalo un altro semplice modo che sicuramente funziona sotto Mandriva, ma potrebbe funzionare anche sotto altre distro.
In mandriva la cartella bin nella cartella home dell'utente e' automaticamente nel path, anche se tale cartella non viene creata normalmente durante l'installazione.
Di conseguenza io ho creato la cartella bin nella mia home e ci ho copiato i miei script, cosi' li posso lanciare da qualunque path.
Saluti
Non so se hai sbagliato a trascrivere, però:
ln -s /home/utente/ciccio/pasticcio.sh
è sbagliato.
La formula corretta sarebbe
ln -s pasticcio /home/utente/ciccio/pasticcio.sh
Ma forse hai solo sbagliato a trasrivere :confused:
No non avevo sbagliato a trascrivere :doh:
Non sapevo si facesse così :p
Grazie mille vescio!
Ciao
MpMp
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.