Si j'ai 2 listes qui contiennent les éléments suivants (exemples):
list1 x;00:26:82:50:00:00;192.168.1.195;COMPUTER1 x;00:26:82:50:11:11;192.168.1.195;COMPUTER2 x;00:26:82:50:22:22;192.168.1.196;COMPUTER3 list2 x;00:26:82:50:11:11;192.168.1.197;COMPUTER3
Lorsque je exécute ces commandes, ajoutez-moi des doublons:
awk -F\; '{print $2}' list* | sort | uniq -d out: 00:26:82:50:11:11 awk -F\; '{print $3}' list* | sort | uniq -d out: 192.168.1.195 awk -F\; '{print $4}' list* | sort | uniq -d out: COMPUTER3
Ma question est:
Comment puis-je lancer la commande (awk -F \; … etc) sur une seule ligne et obtenir les mêmes résultats?
PD: sans &&
Merci
Vous pouvez le faire avec un script simple à partir de la ligne de commande, en utilisant cut (1) au lieu de awk (1), comme ceci:
$ for field in 2 3 4; do cut -d\; -f${field} list* | sort | uniq -d; done