Oozie shell 操作 > 为什么只允许一些 shell 命令而不是全部
Oozie shell action > why only some shell command is allow but not all
在Oozie shell动作中,我尝试直接使用命令mkdir
,成功了。但是当我尝试像 exec
这样的其他命令时。存在错误“找不到命令”。为什么
$ which exec
/usr/bin/which: no exec in
(/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin/)
$ man bash
... SHELL BUILTIN COMMANDS
... exec [-cl] [-a name] [command [arguments]]
呸! exec
不是您可以在 PATH 中找到的 Linux 可执行文件;它是一个 shell 内置命令 -- 就像 unset
或 alias
或 if .. then .. else .. fi
但是你可以开始shell只是为了运行exec
即
bash -c "echo 'IN SUB-PROCESS' ; exec echo 'this is really a complicated way to run ECHO and terminate' ; echo 'NOT EXECUTED, EXEC TERMINATED THE SUB-PROCESS'"
在Oozie shell动作中,我尝试直接使用命令mkdir
,成功了。但是当我尝试像 exec
这样的其他命令时。存在错误“找不到命令”。为什么
$ which exec
/usr/bin/which: no exec in (/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin/)
$ man bash
... SHELL BUILTIN COMMANDS
... exec [-cl] [-a name] [command [arguments]]
呸! exec
不是您可以在 PATH 中找到的 Linux 可执行文件;它是一个 shell 内置命令 -- 就像 unset
或 alias
或 if .. then .. else .. fi
但是你可以开始shell只是为了运行exec
即
bash -c "echo 'IN SUB-PROCESS' ; exec echo 'this is really a complicated way to run ECHO and terminate' ; echo 'NOT EXECUTED, EXEC TERMINATED THE SUB-PROCESS'"