[BASH]Totale niubbbo ma ho una domanda sugli aliases....

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
DjDiabolik
Prode Principiante
Messaggi: 109
Iscrizione: venerdì 30 marzo 2012, 4:03

[BASH]Totale niubbbo ma ho una domanda sugli aliases....

Messaggio da DjDiabolik »

Allora vediamo se riesco a spiegarmi bene:
Mi loggo su un sistema unix tramite sessione SSH come utente "root"....... all'avvio della sessione ho capito che viene, diciamo, caricato il file .bashrc in /root e all'interno di questo file c'è una cosa del genere:

Codice: Seleziona tutto

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi
Se ho capito bene questa porzione del file è relativi agli aliases.... che se ho capito bene sono una sorta di scorciatoie per eseguire un comando + lungo. Se ho capito bene questa porzione di codice in pratica verifica la presenza di un file .bash_aliases e se questo esiste appunto lo carica.

La mia intenzione era quella di caricare un'aliases ed infatti ho creato questo file .bash_aliases e c'ho messo questa roba qua:

Codice: Seleziona tutto

alias update='clear && sudo apt-get update && sudo apt-get -y -f dist-upgrade'
Appena avvio una sessione SSH e do update, dopo i primi vani tentativi in cui ottenevo che update non lo riconosceva come comando sembro esserne venuto a capo però ora c'è un problema..... in pratica dalla sessione del client telnet 4 volte su 5 alla fine ottengo questo errore:

Codice: Seleziona tutto

Lettura elenco dei pacchetti... Fatto
E: Opzione a riga di comando "y" [da -y] sconosciuta.
Poi c'è il prompt..........prima di questo errore vedo comparire a schermo tutti i vari source che si aggiornano............ poi la Lettura dei pacchetti parte da 0% e raggiunge in pochi secondi il 99%. Si blocca li un paio di secondi poi da questo errore mentre invece dovrebbe partire, se trova aggiornamenti, i vari download degli aggiornamenti mentre se non trova appunto niente dovrebbe restituire a schermo il messaggio che dice che non c'è niente da aggiornare mostrando i 3 zero.

Fino ad oggi quando mi serviva utilizzare tale comando io l'ho sempre lanciato a mano usando il copia/incolla da un file txt ma siccome che sono pigro e visto che c'è la possibilità di farlo mi son detto perchè non provare a fare questo alias ? Il problema è che appunto non funziona!
Come ho detto sopra l'errore lo da 4 volte su 5 perchè a forza di fare prove ho provato a togliere alternativamente il "-f" poi il "-y" e quindi metterli uno alla volta oppure invertirli ma a volte succede che funziona con entrambi poi magari chiudi la sessione SSH vai a rifarlo dopo X giorni e ti rispunta fuori l'errore senza mai aver toccato i files e senza mai aver modificato niente.

Proprio non riesco a capire dove sto sbagliando o se è l'alias che viene caricato male........... googlando, prima di raggiungere questo forum, mi sembra di aver capito che per gli alias non si può usare il "-" ma se fosse non mi spiego perchè funziona 2 volte si e 4 no.......

Suggerimenti ?

Ho anche pensato di creare quindi una variabile lunga mettendo tutto il comando per esteso e quindi creare l'alias richiamando questa variabile tipo:
cmd='clear && sudo apt-get update && sudo apt-get -y -f dist-upgrade' (questo mettendolo nel .bashrc)

Poi dal .bash_aliases ho messo
alias='$cmd'
Ma niente....... non funziona e se do printf $cmd mi restituisce solo clear e non tutta la stringa..........

Aperto a qualsiasi consiglio in merito......
Avatar utente
thece
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 12943
Iscrizione: lunedì 23 aprile 2007, 14:16
Distribuzione: Debian 12 (Bookworm) - KDE

Re: [BASH]Totale niubbbo ma ho una domanda sugli aliases....

Messaggio da thece »

:ciao:

io proverei così

Codice: Seleziona tutto

alias update='clear && sudo apt-get update && sudo apt-get dist-upgrade -f -y'
Comunque, se ti connetti come root, sudo non serve



Opinione personale: sarà anche comodo, ma un alias del genere io lo ritengo pericoloso per la salute del sistema
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 5 ospiti