Pagina 1 di 1
[Risolto] Creare un alias con un parametro entrante
Inviato: giovedì 12 giugno 2014, 20:21
da White rabbit
Ciao a tutti,
sto cercando di fare degli alias personalizzati. E a questo punto dei fatti non so come andare avanti. Ho cercato in varie guide ma poi sforo nella programmazione più complessa e decisamente mi perdo
Comunque, quello che sto cercando di fare è relativamente semplice. Dal momento che aprendo un programma da shell questa rimane attiva e se la chiudo il programma si chiude con essa vorrei separare le due cose. Ho letto e verificato che il comando "nome_programma & exit" fa esattamente quello che cerco.
Per cui, vorrei sapere se è possibile creare un alias che usi il nome programma come parametro entrante.. per intenderci qualcosa del tipo:
apri nome_programma="nome_programma & exit", qualunque sia il programma.
Poi se si potesse fare anche che la cosa funzioni anche se dietro a nome programma inserisco il file da aprire. Ad esempio:
apri nome_programma file_da_aprire="nome_programma file_da_aprire & exit".
P.s. ho già smanettato sul file .bash_aliases e funziona alquanto bene per ora con cose troppo semplici.
Re: Creare un alias con un parametro entrante
Inviato: giovedì 12 giugno 2014, 20:36
da vaeVictis
Re: Creare un alias con un parametro entrante
Inviato: giovedì 12 giugno 2014, 20:47
da White rabbit
Fantastico! Esattamente quello che cercavo. Funziona benissimo. Grazie!
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 17:46
da vaeVictis
Bene.
Dicevi che ti interessa anche gestire il passaggio di variabili a questa tua funzione.
Potresti valutare l'utilizzo di
getopts per averne una gestione più articolata.
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 19:54
da Claudio_F
Non ho capito la differenza/utilità tra usare una funzione sotto alias definita in ~/.bash_aliases e usare invece un vero script bash di uguale nome e funzionalità posto nella dir ~/bin
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 20:00
da vaeVictis
Io non suggerivo di metterla in bash_aliases però

A prescindere da questo, che ci tenevo a precisare, che intendi Claudio_F?
Nel senso, invece di chiedere quale sia la differenza, consiglia quello che pensi essere meglio

Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 20:32
da Claudio_F
La mia è una domanda da niubbo quale ancora mi ritengo in ambito Linux. Non ho esperienza sufficiente per consigliare una soluzione piuttosto che l'altra (non avevo neppure capito che la funzione non andava nell'aliases

) Personalmente per tutti gli aspetti applicazione "mi piace" di più una raccolta esplicita di script in ~/bin, piuttosto che cose definite in diversi punti (compresi files nascosti) che vedo come strumenti di configurazione iniziale da toccare il meno possibile. Gli script li copi tutti al volo e via, subito usabili anche su un'altra macchina, i files di configurazione andrebbero invece modificati con attenzione e solo in certe parti.
E quindi la domanda che mi ritorna: perché usare un alias quando con uno script si può fare la stessa cosa e anche di più? Quando ha senso usarlo?
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 20:36
da vaeVictis
Diciamo che concordo.
p.s.: non ti stavo rispondendo considerandoti niubbo, anzi

Re: [Risolto] Creare un alias con un parametro entrante
Inviato: venerdì 13 giugno 2014, 22:40
da UbuNuovo
I vostri raginamenti mi sembrano fondamentalmente giusti.
L'unico vantaggio, che al momento vedo, è che inserendo le funzioni in $HOME/.bashrc in caso di reinstallazione del sistema operativo, con ripristino da backup della partizione "$HOME" mi ritrovo già le mie (poche ma molto utilizzate) funzioni già pronte, valide solo per l'utente proprietario della home.
Gli script, per lo stesso motivo, li inserisco in /usr/local/bin e anche di quella directory mi faccio il backup; la directory "/bin" cerco di non toccarla, così in caso di reinstallazione, viene ricreata sicuramente "pulita".
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: sabato 14 giugno 2014, 11:42
da Claudio_F
Nel caso fosse sfuggito io parlavo di ~/bin non di /bin, quindi una bin già appartenente alla propria home, e che risulta automaticamente inserita nel $PATH dell'utente.
Re: [Risolto] Creare un alias con un parametro entrante
Inviato: sabato 14 giugno 2014, 11:45
da UbuNuovo
Si, hai ragione mi era sfuggito. Allora è sicuramente la scelta migliore.
edit:
Anzi da ora in poi seguirò il tuo metodo: mi faccio una directori $HOME/bin, la inserisco in $PATH e sono a cavallo.
In .basrc ci lascio solo personalizzazioni del prompt e alias semplici.