Ho problemi a cercare a /var
causa di un blocco a /var/run
. Ho cercato di escludere/var/run
, ma non sta producendo i risultati previsti:
$ sudo grep -IR --exclude-dir="/var/run" '45.78.157.165' /var | egrep -v '(audit|access)'
/var/log/secure:Jun 21 14:08:34 cryptopp sshd[19729]: error: Received disconnect from 199.91.135.157: 3: com.jcraft.jsch.JSchException: reject HostKey: 45.78.157.165 [preauth]
/var/log/secure-20160626:Jun 21 14:08:34 cryptopp sshd[19729]: error: Received disconnect from 199.91.135.157: 3: com.jcraft.jsch.JSchException: reject HostKey: 45.78.157.165 [preauth]
/var/log/secure-20160626:Jun 21 14:08:34 cryptopp sshd[19729]: error: Received disconnect from 199.91.135.157: 3: com.jcraft.jsch.JSchException: reject HostKey: 45.78.157.165 [preauth]
grep: /var/run/saslauthd/mux: No such device or address
grep: /var/run/dbus/system_bus_socket: No such device or address
grep: /var/run/rpcbind.sock: No such device or address
grep: /var/run/udev/control: No such device or address
Ho provato entrambi -exclude-dir=/var/run
e -exclude-dir="/var/run"
. Entrambi producono gli stessi risultati.
Perché il mio grep sta fallendo?
Come escludo /var/run
da un grep ricorsivo?
CentOS 7.2, con Grep:
$ grep --version
grep (GNU grep) 2.20
Copyright (C) 2014 Free Software Foundation, Inc.
grep
processo non vede le virgolette in entrambi i casi. Bash li espande e non vi è alcuna sostituzione da eseguire, quindi vengono semplicemente rimossi. Questo è il caso di tutte le shell che conosco.
--exclude-dir=/var/run
senza le virgolette?