在 bash 中的持久存储中记录文件的名称和源路径

Recording name and source path of a file in a persistent storage in bash

我正在尝试编写用于自动化的备份和恢复功能。

我正在努力用路径信息填充字典。

这是备份功能的一个片段。

    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 脚本,很抱歉,如果这对我来说是微不足道的 question/error。

非常感谢您对此的意见。

干杯:)

编辑:test_dict 声明为:

    declare -a test_dict

我陷入了所有这些混乱,因为我的 shell 不接受 declare -A,即声明它是关联的。

运行bash --version吐槽:

GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin20)
Copyright (C) 2007 Free Software Foundation, Inc.

我所要做的就是将 bash 更新到最新版本。为此,我使用了:brew update && brew install bash

现在我的代码工作得很好。

男:)