Le problème, j’ai la commande suivante :

 

awk -F":" '{ print "username: " $1 "\t\tuid:" $3 }' /etc/passwd

 

Que je veux définir dans un alias, comme ceci :

 

alias userlist= 'commande'

 

Le problème ma commande contient aussi bien des apostrophes (single quote) que des guillemets (quote).

Vu que j’ai pris le partie de mettre cette commande entre apostrophe, il faut que j’échappe (escape ne anglais ça sonne mieux) les apostrophes de la commande.

J’ai tenté le slash \’ et le doublement d’apostrophe  » sans succès et j’ai trouvé la (une) solution ici, il faut utiliser ‘\ »

Mon alias est donc :

 

alias userlist='awk -F":" '\''{ print "username: " $1 "\t\tuid:" $3 }'\'' /etc/passwd'

 

 

Pour info cet alias donne la liste des utilisateurs présent sur le système et leur uid :

 

username: root          uid:0
username: daemon        uid:1
username: bin           uid:2
username: sys           uid:3
username: sync          uid:4
username: games         uid:5

 

Les commentaires sont fermés.