#!/bin/ksh在redhat linux中不工作
我正在使用命令:#!/bin/ksh在redhat linux中不工作,linux,shell,ksh,Linux,Shell,Ksh,我正在使用命令: #!/bin/ksh 作为我的shell脚本的第一行(希望这将指示shell在KSH shell中执行)。但当我像下面这样执行shell时,它实际上并没有发生 sh test_shell.txt 但是当我使用likedown with或with out(#!/bin/ksh)时,我得到了正确的输出 ksh test_shell.txt 在我的代码中,我为变量设置了一个值,如下所示 set -A variable_name 但我认为-A在sh中是不被认可的,因为它在ks
#!/bin/ksh
作为我的shell脚本的第一行(希望这将指示shell在KSH shell中执行)。但当我像下面这样执行shell时,它实际上并没有发生
sh test_shell.txt
但是当我使用likedown with或with out(#!/bin/ksh)时,我得到了正确的输出
ksh test_shell.txt
在我的代码中,我为变量设置了一个值,如下所示
set -A variable_name
但我认为-A在sh中是不被认可的,因为它在ksh shell中作为一项任务工作。
如何解决此问题?当您执行
sh test_shell.txt
然后启动sh
(Bourne)shell,并将文件名作为要运行的脚本。在这种情况下,脚本的第一行被忽略,因为它是注释。脚本的其余部分应该使用BourneShell语法,因为这就是您请求的shell
如果将脚本设置为可执行(chmod+x test_shell.txt
),然后使用以下命令运行脚本:
./test_shell.txt
然后内核将读取脚本的第一行,看到它以特殊的#开头
,并在执行时使用/bin/ksh
运行脚本
sh test_shell.txt
然后启动sh
(Bourne)shell,并将文件名作为要运行的脚本。在这种情况下,脚本的第一行被忽略,因为它是注释。脚本的其余部分应该使用BourneShell语法,因为这就是您请求的shell
如果将脚本设置为可执行(chmod+x test_shell.txt
),然后使用以下命令运行脚本:
./test_shell.txt
然后内核将读取脚本的第一行,看到它以特殊的
#开头
,并使用/bin/ksh
运行脚本。您是否验证了ksh
的路径?很抱歉,忘了提及我正在REDHAT LIUNX中执行上述操作。您是否验证了ksh
的路径?很抱歉,忘了提及我正在REDHAT LIUNX中执行上述操作。是的,它对我有效,请告诉我是否有其他方法可以解决这个问题。是的,它对我有效。请告诉我是否有其他方法可以解决这个问题。