Newsgroup: it.comp.os.linux.iniziare
Titolo: [principiante] link simbolici

Ho due versioni della stesso programma (o forse dovrei chiamarla "suite"),
che e' composto da un centinaio di eseguibili (A, B, C, ecc.). Quindi ho
qualcosa del tipo:
home/utente/directory1/percorso1/eseguibileA
 "  /  "   /     "    /    "    /eseguibileB
ecc.
home/utente/directory2/percorso2/eseguibileA
 "  /  "   /     "    /    "    /eseguibileB
ecc.
Quello che mi serve e' poter lanciare, a mia scelta, l'eseguibile che
voglio. Ad esempio, l'eseguibile D della prima versione, oppure
l'eseguibile A della seconda versione, ecc. E vorrei poterlo fare da
qualsiasi home/utente/altradirectory mi trovi.
Avevo pensato di andare in una directory che e' nel path, home/utente/bin,
e di creare dei link simbolici in modo da poter poi lanciare l'eseguibile
che mi serve, ovunque mi trovi, con:
(esempi)
versione1/eseguibileD
versione2/eseguibileA
ecc.
Ma e' corretto? E come si farebbe in pratica? Grazie in anticipo!
Max
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Max
Non ho capito un granchè.......comunque x creare un link il comando è :
ln -sf "file A"    "file B"  
ciao ..
-- 
 Dmec   Linuxuser  "Slackwaredotato"..............
 

 ha scritto nel messaggio
news:8Z0pc.256090$rM4.10...@news4.tin.it...

Perfetto, se metti il link simbolico in una dir che e' nel path lo
puoi richiamare da ovunque ti trovi.
Se poi, come ho fatto io, aggiungi al path (mi sembra in
/etc/profile) la directory corrente, eviti di digitare ./ prima del
nome dell'eseguibile che si trova nella directory in cui sei e che
non e' inclusa nel path.
Ciao!!
- --
- ------------------------------------------------
[Salvatore L.B.]
- ------------------------------------------------
Computer Science Student
University of Palermo - [Italy]
- ------------------------------------------------
HTTP://WWW.SHOGOKI.IT
- ------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32) - GPGOE 0.4.1
iD8DBQFApJ54fiRcUU4L9NkRAogPAJwPsbQPJctpLC6ShTCHYmjwcxa0mwCgwJqa
79p3KdWbkGQxrWJL6NvXLTY=
=zgsF
-----END PGP SIGNATURE-----

Perché non aggiungi direttamente
/home/utente/directory1/percorso1
/home/utente/directory1/percorso2
al path del tuo utente?
Non sarebbe più semplice e più pulito?
Se poi cambi nome alle stesse, le sposti ecc, non devi diventare scemo a
cambiare tutti i link simbolici, ma ti basta aggiornare il path.
Anzi... magari fai due link simbolici tipo
applicazione1 -> /home/utente/directory1/percorso1
applicazione2 -> /home/utente/directory1/percorso2
e poi aggiungi questi link al tuo path. Così ti basta cambiare questi due
link (se più utenti usano quei eseguibili eviti di ricambiare tutti i path
se cambi il percorso delle cartelle).
BlueSky
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ln -sf "file A"    "file B"  
Non va bene. Come dicevo, ho un centinaio di eseguibili, e se seguissi il
tuo consiglio dovrei quindi fare una cosa tipo:
ln -sf file1 fileA  
ln -sf file2 fileB  
ln -sf file3 fileC
...
Ossia cento volte! Anzi, duecento, visto che ho due directories. Il punto
e' che il comando man mi dice che la sintassi di ln e':
ln -fs sourcename targetname, con sourcename = file... ma io vorrei
linkare tutta la directory!
Ciao   


 se cambi il percorso delle cartelle).
Posso farlo? Il man del ln mi dice che la sintassi e':
ln -fs sourcename target
con sourcename che e' "path of a file to be linked"... dunque un file, non
una directory!
Ciao, grazie.


 non e' inclusa nel path.
E come la indico la directory corrente? Forse "./"? E poi come avviene la
ricerca all'interno delle directory che sono nel path, forse nell'ordine
in cui sono messe nel path?
Comunque volevo proprio evitare una situazione del genere... Perche' se
metto tutto nel path, e poi lancio l'eseguibile Pippo, essendo questo
presente in due directory (in una versione diversa in ciascuna delle due
directory) poi non so mai quale dei due sta eseguendo...
Ciao!


 una directory!
Non ho seguito il discorso, quindi non so il problema specifico.
La frase di sopra e' pero' un po' errata. Uno degli assiomi di linux e'
che tutto e' un file :)

 Posso farlo? Il man del ln mi dice che la sintassi e':
puoi linkare una cartella se usi un soft link, ovvero se usi
ln -s cartella link


 Max
Puoi fare tutto con tr o quattro righe di comando:
cd /home/utente/d1/p1/
for EXE in *; do ln -s /home/utente/d1/p1/$EXE /usr/local/bin/$i.1
cd /home/utente/d2/p2/
for EXE in *; do ln -s /home/utente/d1/p1/$EXE /usr/local/bin/$i.2
se non puoi o non vuoi scrivere in /usr/local/bin puoi usare un'altra 
destinazione, ad esempio /percorso/dei/collegamenti  che poi aggiungi 
alla PATH
PATH=$PATH:/percorso/dei/collegamenti
rendi permanente la modifica aggiungendo quest'ultima riga a ~/.bashrc
-- 
Lorenzo "Paulatz" Paulatto
Trieste
--
Dagli errori di Windows 98:
  277 0x0115 Il file con la tabella degli attributi estesi è pieno.
1070 0x042E Dopo l'avvio, il servizio si è sospeso in uno stato di attesa.
1440 0x05A0 Schermo già bloccato.
1757 0x06DD Membri esauriti.
1907 0x0773 L'utente deve modificare la password prima di accedere la 
prima volta.

 Ciao!
Allora, per il path corrente (anche se non e' indispensabile, ma per
me e' comodo) io ho aggiunto queste 2 righe alla fine di
/etc/profile
PATH=$PATH:.
export PATH
Poi per il problema che dici tu, a dire la verita' non ci avevo
pensato, ma credo che l'albero delle directory venga esplorato
gerarchicamente, quindi il primo a venir eseguito dovrebbe essere
quello piu' vicino alla dir dove ti trovi (non ne sono sicuro, molto
probabilmente quello che ho detto e' una stupidata col botto)
Ciao ;)
- --
- ------------------------------------------------
[Salvatore L.B.]
- ------------------------------------------------
Computer Science Student
University of Palermo - [Italy]
- ------------------------------------------------
HTTP://WWW.SHOGOKI.IT
- ------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32) - GPGOE 0.4.1
iD8DBQFApQg/fiRcUU4L9NkRAiz3AJ43spotnIGjhpfpFNG335DJwVwzUQCfScv5
ZTPA2/i9W2T05t4hQJciGes=
=/E1c
-----END PGP SIGNATURE-----

 Ciao ;)
