J'ai un problème étrange lié aux grep -vrequêtes. Permettez-moi d'expliquer:
Pour afficher les connexions que j'utilise who:
$ who
harry pts/0 2016-12-08 20:41 (192.168.0.1)
james pts/1 2016-12-08 19:28 (192.168.0.1)
timothy pts/2 2016-12-08 02:44 (192.168.0.1)
Le courant ttyde mon terminal estpts/0
$ tty
/dev/pts/0
$ tty | cut -f3-4 -d'/'
pts/0
J'essaie d'exclure ma propre connexion en utilisant grep -v $(tty | cut -f3-4 -d'/'). La sortie attendue de cette commande devrait être who, sans ma connexion. Cependant, la sortie est la plus inattendue:
$ who | grep -v $(tty | cut -f3-4 -d'/')
grep: a: No such file or directory
grep: tty: No such file or directory
Je joins les $(...)guillemets et cela semble résoudre le problème "Aucun fichier ou répertoire". Cependant, ma connexion est toujours imprimée même si mon tty ( pts/0) aurait dû être exclu:
$ who | grep -v "$(tty | cut -f3-4 -d'/')"
harry pts/0 2016-12-08 20:41 (192.168.0.1)
james pts/1 2016-12-08 19:28 (192.168.0.1)
timothy pts/2 2016-12-08 02:44 (192.168.0.1)
À partir de ce point, je n'ai absolument aucune idée pourquoi la greprequête fonctionne mal.
grep"pas un tty". Comment suggéreriez-vous que je contourne cela?
set -xabord ... Ensuite, exécutez votre commande et voyez ce que vous essayez réellement de fairegrep...