Hi all,
I am trying to set processor affinity for a specific process using a shell script without result. Script:
#!/bin/sh -x
cpu_affinity_ok="2" cpu_affinity="taskset -p -c `cat /tmp/test.pid` | awk '{print $6}'"
if [ -f /tmp/test.pid ]; then if [ "$cpu_affinity" == "$cpu_affinity_ok" ]; then exit 0 else taskset -p -c 2 `cat /tmp/test.pid` fi fi
This script doesn't works:
[root@cos01 bin]# taskset -p -c 27756 pid 27756's current affinity list: 2
Excecuting script:
[root@cos01 bin]# ./my_cpu_affinitty + cpu_affinity_ok=2 ++ cat /tmp/test.pid + cpu_affinity='taskset -p -c 27756 | awk '''{print }'''' + '[' -f /tmp/test.pid ']' + '[' 'taskset -p -c 27756 | awk '''{print }'''' == 2 ']' ++ cat /tmp/test.pid + taskset -p -c 2 27756 pid 27756's current affinity list: 2 pid 27756's new affinity list: 2
As you can see, function compare under "if" statement doesn't works ...
Any idea??
Thanks.