linux – 如何在shell脚本中操作数组
发布时间:2020-12-14 02:01:12 所属栏目:Linux 来源:网络整理
导读:我希望我的脚本定义一个空数组.如果预定义条件为真,则应添加数组值.为此,我所做的就是 declare -a FILESfile_count=0if [ "$file_ext" != "$SUPPORTED_FILE_TYPE" ] ; then echo "$file_ext is not supported for this task."else $FILES[$file_count] = $fi
我希望我的脚本定义一个空数组.如果预定义条件为真,则应添加数组值.为此,我所做的就是
declare -a FILES file_count=0 if [ "$file_ext" != "$SUPPORTED_FILE_TYPE" ] ; then echo "$file_ext is not supported for this task." else $FILES[$file_count] = $filename file_count=$file_count+1 fi 执行此脚本时,我收到这样的错误 linux-softwares/launchers/join_files.sh: 51: [0]: not found 解决方法
当数组中的设置数据无法使用$调用时:
declare -a FILES file_count=0 if [ "$file_ext" != "$SUPPORTED_FILE_TYPE" ] ; then echo "$file_ext is not supported for this task." else FILES[$file_count]=$filename file_count=$file_count+1 fi 没有$的文件. 这对我有用: #!/bin/bash declare -a FILES file_count=0 file_ext='jpg' SUPPORTED_FILE_TYPE='jpg' filename='test.jpg' if [ "$file_ext" != "$SUPPORTED_FILE_TYPE" ] ; then echo "$file_ext is not supported for this task." else FILES[$file_count]=$filename file_count=$(($file_count+1)) fi 如你所见,对数学运算稍加修改$(()),但FILES分配是相同的…… 正如经过大量测试所指出的那样,Ubuntu默认的shell似乎是破折号,这就引发了错误. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |