ダッシュ シェルを使用した Ubuntu 環境のサンプル コードで問題に直面しています。
次のコード ブロックを Ubuntu Server OS のダッシュ シェルで実行すると、以下のような出力が得られました。
#!/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