Вы не понимаете, что POSIX называет "простой командой", которая представляет собой непустую последовательность необязательных назначений, необязательных перенаправлений и необязательных слов (включая имя команды и ее необязательные аргументы), а также "команду", как она используется в синопсис команды руководства Bash , который здесь просто имя команды.
Если вы действительно хотите использовать здесь назначения, вы можете просто запустить:
aaa=1 command echo hello
Если нет никакой команды, а есть только назначение, нет особого смысла использовать команду
, учитывая Фактически, нет встроенной функции или команды для поиска в PATH.
Если вы действительно хотите просто установить переменную с помощью команды
, вы можете использовать
command typeset aaa=1
или
command declare aaa=1
Вы можете посмотреть / proc /
(или pmap -x
, если ваша ОС поддерживает) идентификаторы заинтересованных процессов и сравнение результатов для определения областей разделяемой памяти. Это включает в себя сегменты разделяемой памяти через вызовы shmget, а также любые разделяемые библиотеки и файлы.
Редактировать: как mr.spuratic указал в своем ответе здесь , есть более подробная информация о стороне ядра
Вы можете посмотреть RSS-канал процесса с помощью ps, однако он не принимает во внимание все общие страниц. Чтобы увидеть RSS для конкретного процесса, см. Ниже инструмент
cv@thunder:~$ ps -o rss,pid,comm -p $$,7023
RSS PID COMMAND
22060 7023 xfwm4
6876 18094 bash
smem
, который предоставляет более подробную информацию с учетом общих страниц. См. Ниже вывод того же процесса
cv@thunder:~$ smem -t |egrep "RSS|$$|7023"
PID User Command Swap USS PSS RSS
9852 cv grep -E RSS|18094|7023 0 340 367 2220
18094 cv bash 0 3472 4043 6876
7023 cv xfwm4 --display :0.0 --sm-c 0 5176 7027 22192
From man smem
:
smem reports physical memory usage, taking shared memory pages into account. Unshared memory is reported as the USS (Unique Set Size). Shared
memory is divided evenly among the processes sharing that memory. The unshared memory (USS) plus a process's proportion of shared memory is
reported as the PSS (Proportional Set Size). The USS and PSS only include physical memory usage. They do not include memory that has been
swapped out to disk.