View previous topic :: View next topic |
Author |
Message |
UnoSD Apprentice
Joined: 27 Jun 2011 Posts: 273
|
Posted: Sun Jul 03, 2011 1:53 pm Post subject: [RISOLTO] Esecuzione binario da cartella diversa |
|
|
Salve a tutti!
Come si fa ad avviare un binario da un'altra cartella?
Ho provato:
PWD=/nuovacartella gedit
bash -c 'export PWD=/nuovacartella; gedit'
Nulla sembra intaccare la directory in cui crede di essere gedit!! Pensa sempre di essere da dove l'ho lanciato! (E nel caso delle scorciatoie da tastiera da root (questo è il vero problema).
Come posso risolvere?
Grazie.
Last edited by UnoSD on Sun Jul 03, 2011 2:27 pm; edited 1 time in total |
|
Back to top |
|
|
ago Developer
Joined: 01 Mar 2008 Posts: 1527 Location: Milan, Italy
|
Posted: Sun Jul 03, 2011 2:15 pm Post subject: |
|
|
se tu fai un: Code: | export PWD="/home/ago/.cache/" | equivale ad aver fatto un cd; quindi, Code: | export PWD="/home/ago/.cache/";gedit | equivale a Code: | cd /home/ago/.cache/;gedit |
Ora mi chiedo..come mai non entri nella cartella e lanci il binario che preferisci? |
|
Back to top |
|
|
UnoSD Apprentice
Joined: 27 Jun 2011 Posts: 273
|
Posted: Sun Jul 03, 2011 2:27 pm Post subject: |
|
|
Quote: | equivale ad aver fatto un cd; quindi, |
Anche io ne ero convinto!!! Ma questo maledetto gedit sembra non fregarsene assolutamente!
cd non funziona nel mio caso perché ho creato una scorciatoia da tastiera (che esegue gnome-text-editor) e non supporta i comandi bash.
P.s. Mentre scrivevo ho provato con: Code: | bash -c "cd /home/uno; gnome-text-editor" | e funziona!!! La cosa più banale
Comunque resta un mistero il perché non funzioni negli altri due modi... (nemmeno da terminale, non solo da nautilus)
PWD=/home/uno gedit
export PWD=/home/uno; gedit
bash -c "export PWD=/home/uno; gedit"
bash -c "PWD=/home/uno; gedit"
È assurdo!!
Cmq grazie mille, il problema così è risolto; resta comunque una cosa incomprensibile! |
|
Back to top |
|
|
Onip Advocate
Joined: 02 Sep 2004 Posts: 2912 Location: Parma (Italy)
|
Posted: Sun Jul 03, 2011 5:49 pm Post subject: |
|
|
secondo me sbagli ad invocare il comando. tu vuoi eseguire il binario di nome gedit che risiede nella tal directory e non quello presente nel path, di conseguenza io farei
Quote: | exporta PWD="foobar";./gedit |
oppure, che è anche più semplice,
Code: | /path/alla/tua/directory/gedit |
_________________ Linux Registered User n. 373835
Titus Lucretius Carus, De Rerum Natura - Tantum religio potuit suadere malorum |
|
Back to top |
|
|
UnoSD Apprentice
Joined: 27 Jun 2011 Posts: 273
|
Posted: Sun Jul 03, 2011 11:59 pm Post subject: |
|
|
No! Quella sarebbe stata una domanda infinitamente stupida! XD
Io volevo fare in modo che il programma (ovunque sia l'eseguibile non mi interessa) pensi di essere stato avviato in una data cartella e non in quella dove è stato avviato effettivamene. gedit si trova fisso in /usr/bin/gedit ma se lo avvio da /media quando vado a salvare il nuovo file mi da come percorso di partenza /media ovviamente; io per esempio vorrei avviarlo da /media ma fare in modo che pensi di essere stato invocato da /home/USER in maniera tale che quando salvo un file mi da come percorso di partenza per il salvataggio /home/USER. (Da gnome-panel mi da come percorso base / (root) e quando salvo rapidamente i file (senza pensarci) perdo tempo a scrivere il nome del file (magari lungo), do invio e bam.... Non me lo salva e devo riscrivere il nome punto e da capo e cambiare cartella...
P.s. spero di essermi spiegato in maniera non contorta perché è tardi e sto un po' rincretinito... |
|
Back to top |
|
|
Kernel78 Moderator
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Mon Jul 04, 2011 7:01 am Post subject: |
|
|
Moved from Forum italiano (Italian) to Forum di discussione italiano. _________________ Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con Code: | grep -vE '(^[[:space:]]*($|(#|!|;|//)))' |
|
|
Back to top |
|
|
|