【问题标题】:How to increment a bash variable (resulting from a command) inside a for loop如何在 for 循环中增加 bash 变量(由命令产生)
【发布时间】:2014-11-17 11:15:55
【问题描述】:

我知道有很多关于如何在循环中增加变量的解决方案,但我想知道如何增加已经是命令结果的变量。 假设我有文件:test1 test2 test3 test4。 我的命令如下:

for i in {1..4}; do x$i=$(wc -l < test$i); done

我明白了:

x1=10: command not found

x2=9: command not found

x3=9: command not found

x4=9: command not found

找不到哪个命令? wc -l?

我猜这个问题与$symbol的位置有关

【问题讨论】:

  • The command not found 是冒号前的那个。所以,例如x1=10。这并不能解决您的问题,所以这只是一个注释,供您将来在命令行或脚本调试中参考。

标签: bash variables for-loop


【解决方案1】:

您可以为此使用内置的declare

for i in {1..4}; do declare x$i=$(wc -l < test$i); done

【讨论】:

    猜你喜欢
    • 2014-01-07
    • 2017-01-26
    • 2013-11-25
    • 2011-02-24
    • 1970-01-01
    • 2013-11-20
    • 1970-01-01
    • 1970-01-01
    • 2015-04-15
    相关资源
    最近更新 更多