我在带有 dash shell 的 Ubuntu 环境中遇到了一些示例代码的问题。
当在 Ubuntu Server OS 的 dash shell 中执行以下代码块时,我得到了如下所示的输出。
#!/bin/sh
cmd="ls"
arg=" -lt"
exec "$cmd $arg"
输出1:
./test3.sh: 4: exec: ls -lt: not found
但是,如果我运行以下修改后的代码,那么我会得到正确的输出,如下所示。
#!/bin/sh
cmd="ls"
arg=" -lt"
exec $cmd $arg
输出2:
root@ubuntu:~/test# ./test3.sh total 6164
-rwxr-xr-x 1 root root 45 Dec 10 05:40 test3.sh
-rw-r--r-- 1 root root 35962 Dec 10 03:29 debug.txt