(很抱歉混淆。我尝试简化实际问题时发生了以前的$符号。感谢您更正问题)
我想在下划线上拆分目录名(例如:dir_to_split =“my_test_dir”),如下所示:
my_dir=($dir_to_split)
var=$(echo $my_dir | awk -F"_" '{print $1,$2,$3}')
set -- $var
splited_1=$1
splited_2=$2
splited_3=$3
现在使用这些splited_x导致我出错。离。
myprograme $splited_1 $splited_2 $splited_3
任何人都可以帮我这个吗?谢谢....
答案 0 :(得分:1)
(更新后的问题重写。)
你得到什么样的错误?我发现在调试时将set -x
添加到shell脚本的顶部很有用,这样shell就会打印它执行的所有命令,这样你就可以找到问题开始的行。
您确定$dir_to_split
实际设置了吗?它是否包含空格或制表符?它是否包含两个下划线?我现在没有看到任何其他问题。
有分裂变量的shell内方法,例如:
dir="my_test_dir"
OIFS="$IFS"
IFS="-"
set --
IFS="$OIFS"