cd
and echo
. But I cannot tell if shell will create a sub-process when executing a built-in command or not; most likely not (apart from the case, where you execute such command in background, like ls / &
). ps
lists no path is that sendmail
uses setproctitle(3) to label its processes; in this case process' name is appended at the end, in brackets; ps daxww | grep sendmail
: 1592 - SsJ 1:16.86 |-- sendmail: accepting connections (sendmail)
1595 - IsJ 0:00.96 |-- sendmail: Queue runner@00:30:00 for /var/spool/clientmqueue (sendmail)
2528 - Ss 1:08.24 |-- sendmail: accepting connections (sendmail)
2531 - Is 0:00.95 |-- sendmail: Queue runner@00:30:00 for /var/spool/clientmqueue (sendmail)
ps daxww | grep \(
: 1751 - SsJ 2:29.27 |-- php-fpm: master process (/usr/local/etc/php-fpm.conf) (php-fpm)
1752 - IJ 23:47.79 | |-- php-fpm: pool www (php-fpm)
1753 - IJ 23:24.40 | |-- php-fpm: pool www (php-fpm)
16680 - IJ 22:58.74 | `-- php-fpm: pool www (php-fpm)[/cmd]
As kpa said, sendmail(8) is a user-space program. The reasonps
lists no path is thatsendmail
uses setproctitle(3) to label its processes;
% ls -l /usr/libexec/sendmail/sendmail
-r-xr-sr-x 1 root smmsp 733896 Aug 20 16:55 /usr/libexec/sendmail/sendmail