Goal
Limit output of dhclient.
Code
dhclient eth0|sed 's/answers//'
expected behaviour
RTNETLINK : Operation not permitted
got
RTNETLINK answers: Operation not permitted
Piping ifconfig works
ifconfig eth| sed 's/eth//' -> [cut the search]:flags=41...
Env
sed (GNU sed) 4.7 Packaged by Debian
1 Answer
The dhclient command needs to be run as root. When running it as a regular user, you get an error message
$ dhclient enp1s0:
RTNETLINK answers: Operation not permittedError messages are normally printed to standard error (stderr) while the pipe (|) will redirect only standard output (stdout). This is why your sed command isn't working: it doesn't actually get any input at all, what you are seeing is the standard error of the first command.
To redirect and parse standard error, you can use 2>&1 (redirect output stream 2, standard error, to output stream 1, standard output):
$ dhclient enp1s0 2>&1 | sed 's/answers//'
RTNETLINK : Operation not permittedFor more details on these two streams and the ways of redirecting each of them, see .
2