ls-l/proc/self | increamental PID?

Можно просто использовать logrotate. Это уже доступно в большинстве систем Linux, и много пакетов уже имеют logrotate сценарии, предварительно сконфигурированные, или можно настроить их или записать собственное.

5
23.01.2015, 00:48
2 ответа

Да, это PID LS .

определяется POSIX LS в качестве внешней команды, поэтому в любое время вы выполняете LS , оболочка должна создавать новый процесс и запустить LS в этом процессе.

Для этого Shell позвонит SPILE () Системный вызов:

$ strace ls -l /proc/self
execve("/bin/ls", ["ls", "-l", "/proc/self"], [/* 76 vars */]) = 0

Вы можете видеть, после создания нового процесса / Proc / Self принадлежит к контексту Этот процесс, поэтому он был расширен до PID LS .

6
27.01.2020, 20:33

Да, это PID LS :

/ proc / self Этот каталог относится к процессу, доступу к файловой системе / proc и идентична каталоге / proc, названной идентификатором процесса процесса.

(Из Человек 5 Proc )

/ Proc / Self - это символическая ссылка на / proc / pid для PID процесса, который обращается к ссылке , по магии proc файловая система.

В вашем случае этот процесс LS , и поэтому каждый раз, когда вы запускаете команду, вы получаете другой PID (который имеет тенденцию увеличить).

7
27.01.2020, 20:33

Теги

Похожие вопросы