Идентификатор процесса команды, выполняемой пользователем

Подумайте, что я запускаю только некоторую базовую команду.

ls 

Теперь будет ли команда выше pid, когда она будет выполнена? Если да, то как я могу определить, что pid?

когда я пытаюсь

 echo $! 

сразу после команды ls, он возвращает пустой вывод.

тогда как если я выполняю

 ls & 

а потом

 echo $! 

теперь он дает мне pid команды ls.

На самом деле я получил этот вопрос, когда смотрел ниже журналы аудита.

 type=USER_CMD msg=audit(12/16/2014 17:15:36.201:68342) : user pid=19247 uid=enginst auid=enginst ses=4229 msg='cwd=/apps/oradump/ora_temp_rdbms/OH3 cmd=chmod -R 777 11203 terminal=pts/2 res=success' type=USER_CMD msg=audit(12/16/2014 17:36:33.968:68753) : user pid=1801 uid=enginst auid=enginst ses=4229 msg='cwd=/apps/oracle/RDBMS cmd=chmod -R 777 11203 terminal=pts/2 res=success' 

Здесь в приведенном выше журнале говорится, что «chmod -R 777» запускается пользователем enginst, и есть также pid.

Теперь я могу заключить, что команда chmod была явно запущена пользователем, поскольку журналы auditd не показывают ppid (идентификатор родительского процесса), что было бы так, если какой-то скрипт / программа инициировала его?

Однако теперь я включил учет процесса, чтобы проверить выше. Но в любом случае, мой вопрос стоит.

были бы команды вроде chmod, ls получает pid, когда он будет выполнен? или нет? или он получает pid, когда он работает в фоновом режиме, а не на переднем плане?

One Solution collect form web for “Идентификатор процесса команды, выполняемой пользователем”

Каждая внешняя команда и каждая подоболочка имеют свой собственный PID. У оболочек встроенных нет.

Я не знаю какой-либо функции, которая дает вам PID только что вышла синхронной команды. Конечно, вы можете запускать все команды таким образом:

 command & pid=$!; fg 
  • Получает ли этот диспетчер процесс зомби?
  • Выясните PID точного приложения node.js
  • Как запустить убитый Java-процесс с помощью PID?
  • Как убить весь процесс с заданным именем?
  • Что может привести к тому, что каталоги в / var / run исчезнут / не будут созданы при запуске? (CentOS 7.3)
  • Как найти, какие процессы выполняются пользователем прямо сейчас?
  • Лучший способ убить процессы, созданные скриптом bash?
  • Запись внутри сокета, открытого другим процессом в Linux
  • Как получить выполненную команду процесса, который успешно завершил работу с PID?
  • Как просмотреть вывод текущего процесса в другом сеансе bash?
  • Запросы о верхней команде
  • Linux и Unix - лучшая ОС в мире.