我有一个脚本/usr/bin/test.sh看起来像这样:
test_func()
{
echo "callertest 1:"
cat /proc/$PPID/cmdline | tr '\0' ' '
echo "callertest 2:"
ps aux | grep $PPID
}
export -f test_func
bash -c test_func
因为“/ usr / bin”在$ PATH中,所以我用“test.sh”调用脚本 . 该函数应该回显脚本的名称或更好的完整路径,但我没有比得到“bash”更进一步 . 对于放在$ PATH中的脚本来说似乎是一个问题 .
2 回答
而不是使用函数,将代码放在脚本中:
确保它是可执行的:
然后用
xargs
执行它:这应涵盖所有情况: