Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 01/11/2015, à 20:36

v4lt

Problème d'alias :o !

Bonjour à tous.

Premièrement j'utilise ZSH sur mon serveur dédié en Debian (je m'amuse comme un fou et je test pleins de choses).

Alors voilà, j'aimerais créé un alias persistant, donc pour ceci j'ai créé un alias dans mon fichier .zshrc qui est le fichier de configuration de zsh.

J'aimerais alors créé un alias de ce type

alias state="w | grep user | awk -F ',  '  '{print "\n\033[2\;33mUptime :" $1 "\n\033[1\;31m" $2 "\n\033[2\;34m"   $3 "\033[0m" }'"

Or, celui-ci ne marche pas, dois-je échapper certains caractères? J'avoue ne pas comprendre, cette ligne fonctionne parfaitement en ligne de commande mais impossible en tant qu'alias.

Merci d'avance

Hors ligne

#2 Le 01/11/2015, à 21:03

J5012

Re : Problème d'alias :o !

la commande w est deja un alias ?

Hors ligne

#3 Le 01/11/2015, à 21:20

v4lt

Re : Problème d'alias :o !

non

Hors ligne

#4 Le 01/11/2015, à 21:25

tiramiseb

Re : Problème d'alias :o !

Salut,

Il faut échapper les guillemets dans la commande, sinon le shell croit qu'ils ferment le premier ouvrant :

"w | grep user | awk -F ',  '  '{print "\n\033[2\;33mUptime :" $1 "\n\033[1\;31m" $2 "\n\033[2\;34m"   $3 "\033[0m" }'"

===>

alias state="w | grep user | awk -F ',  '  '{print "

puis :

\n\033[2\;33mUptime :

puis :

" $1 "

puis :

\n\033[1\;31m

puis :

" $2 "

puis :

\n\033[2\;34m

puis :

"   $3 "

puis :

\033[0m

et enfin :

" }'"

... par contre je ne peux pas assurer qu'en échappant les « " » ça fonctionnera, je n'ai pas analysé correctement ta commande...
Un script serait peut-être plus approprié.

Dernière modification par tiramiseb (Le 01/11/2015, à 21:25)

Hors ligne

#5 Le 01/11/2015, à 21:25

J5012

Re : Problème d'alias :o !

w | grep user

demande à grep de chercher les occurrences user dans la sortie de la commande w

Hors ligne

#6 Le 01/11/2015, à 21:30

v4lt

Re : Problème d'alias :o !

tira, je n'ai aps très bien compris ta réponse, que faut il que je fasse ? Que j'échappe les " grâce à \"?

Hors ligne

#7 Le 01/11/2015, à 21:33

tiramiseb

Re : Problème d'alias :o !

Que j'échappe les " grâce à \"?

C'est ma suggestion.

Hors ligne

#8 Le 01/11/2015, à 21:47

v4lt

Re : Problème d'alias :o !

J'essaye ça ce soir et je te redis si tu es un génie! (ou pas)

Hors ligne

#9 Le 01/11/2015, à 21:55

pingouinux

Re : Problème d'alias :o !

Bonsoir,
Pendant que tiramiseb répondait, j'étais en train de faire des tests dans la même direction.
v4lt, tu peux essayer :

alias state='w | grep user | awk -F ", "  "{print \"\n\033[2;33mUptime :\" \$1 \"\n\033[1;31m\" \$2 \"\n\033[2;34m\"   \$3 \"\033[0m\" }"'

J'ai cependant un doute comme J5012 sur w, ainsi que sur -F", ".
Pour un truc aussi compliqué, je définirais à ta place une fonction plutôt qu'un alias.

Hors ligne

#10 Le 01/11/2015, à 21:57

tiramiseb

Re : Problème d'alias :o !

Pour un truc aussi compliqué, je définirais à ta place une fonction plutôt qu'un alias.

Ou un script.

Hors ligne

#11 Le 01/11/2015, à 22:05

pingouinux

Re : Problème d'alias :o !

@tiramiseb : Oui, c'est aussi une possibilité.

Je viens de voir que c'était pour zsh, et j'ai fait le test en bash.

Après vérification, ça a l'air bon en zsh.

Dernière modification par pingouinux (Le 01/11/2015, à 22:07)

Hors ligne

#12 Le 01/11/2015, à 22:20

v4lt

Re : Problème d'alias :o !

Il y a un dossier "fonction"? Je t'avoue que je n'ai aucune idée pour sauvegarder uen fonction en UNIX.

Je créé une fonction avec VIM ou NANO et j'appel le fichier txt? x)

Hors ligne

#13 Le 01/11/2015, à 22:30

pingouinux

Re : Problème d'alias :o !

Tu définis une fonction ainsi

ma_fonction() {
........................ # sera exécutée dans le shell courant
}

ou

ma_fonction() (
........................ # sera exécutée dans un sous-shell
)

Dans tous les cas, les arguments sont $1, $2, ...

Hors ligne

#14 Le 01/11/2015, à 23:11

v4lt

Re : Problème d'alias :o !

Ouep mais je les stock où ?

Hors ligne

#15 Le 01/11/2015, à 23:42

v4lt

Re : Problème d'alias :o !

UP, j'ai besoin d'aide sur le fait que je ne sais pas où mettre ces fonctions.. Dans un programme?

Hors ligne

#16 Le 02/11/2015, à 06:36

pingouinux

Re : Problème d'alias :o !

Tu les définis au même endroit que tes alias, dans ~/.bash_aliases par exemple.

Hors ligne