В наборе задач есть "?" Марк, не уверен, как его ввели
Я запускаю команды из python через popen. В многоядерной системе у меня есть функция, которая возвращает строку "/usr/bin/taskset -c <>" в зависимости от использования системы. Затем я добавляю строку к системной команде перед отправкой ее в popen.
По моим наблюдениям оболочка набора задач работает корректно, наблюдается системная команда, заключенная в команду набора задач из "ps -elf"
4 S root 18986 18978 0 80 0 - 15016 poll_s 10:54 pts/3 00:00:00 sudo /usr/bin/taskset -c 0?sudo /usr/sbin/tcpdump -s 0 -nei lo
Я не уверен, что "?" значит, я не заметил, что при выполнении команды вручную из консоли Linux
Я выдаю команду через попен
У меня есть функция, которая решает, является ли система многоядерной или нет, если она многоядерная, она вернет строку "sudo /usr/bin/taskset -c"
if multicore():
taskstring="sudo /usr/bin/taskset -c %s" % cpu
else:
taskstring=""
Последующая команда - tpcdump, поэтому она будет
command = taskstring+" sudo /usr/sbin/tcpdump -s 0 -nei lo"
cmd=command.split(" ")
subprocess.Popen(cmd,stdout=open('%s' % fileout,'w'),stderr=subprocess.STDOUT)
Я работаю на Ubuntu 14.04, если это что-то значит....