有没有办法在 bash 文件中包含一行 ksh 特定代码?

有没有办法在 bash 文件中包含一行 ksh 特定代码?

我正在尝试在 bash 文件内使用关联数组。但bash版本不是4。

或者有没有办法将 ksh 文件包含到 bash 文件中而不将其作为 bash 执行

答案1

你可以尝试这样的事情:

#!/bin/bash

ksh -c '
typeset -A arr
arr['foo']=1
arr['bar']=2
arr['base']=3
print "${arr[@]}"'

或者使用这里-文档

#!/bin/bash

ksh <<'EOF'
typeset -A arr
arr['foo']=1
arr['bar']=2
arr['base']=3
print "${arr[@]}"
EOF

免责声明

正如@所说格伦·杰克曼在评论中,你能做的最好的事情就是让你的脚本完全纯净,为什么要麻烦你混合使用&

输出

3 2 1

答案2

不,那是不同的程序。您只能使用参数调用 ksh-c并解析输出。

相关内容