【发布时间】:2021-11-09 14:14:00
【问题描述】:
我正在尝试为自动化编写备份和恢复功能。
我正在努力用路径信息填充字典。
这是来自备份功能的 sn-p。
FILE="path/to/file"
BASENAME=$(basename $FILE)
key="$BASENAME"
value="$FILE"
test_dict[$key]=$value
echo ${test_dict[*]}
我明白了
bash: package.json: syntax error: invalid arithmetic operator (error token is ".json")
这是我的第一个 bash 脚本,我并不关心我正在使用什么存储类型,无论是数组、字典等...我关心的只是跟踪哪个文件属于哪个位置。
这是我的第一个 bash 脚本,如果这是我身边的一个小问题/错误,非常抱歉。
非常感谢您对此的意见。
干杯:)
编辑:test_dict 声明为:
declare -a test_dict
【问题讨论】:
-
你没有说是哪一行导致了错误。您也没有显示
test_dict是如何定义和初始化的。 -
您需要报价:
test_dict[$key]="$value" -
declare -A test_dict用于关联数组。 -
@Jetchisel "bash: declare: -A: invalid option",在上面的例子中我使用
declare -a test_dict来声明字典 -
@muriaie:您是否将变量声明为 associative 数组(即字典)?否则这样使用会报错。
标签: arrays bash shell dictionary sh