代码之家  ›  专栏  ›  技术社区  ›  Creagh Duggan

如何在debian中从文本文件的每一行创建多个字符串?

  •  1
  • Creagh Duggan  · 技术社区  · 7 年前

    我正在编写一个简单的debian脚本。我要找的是为文本文件中的每一行指定一个字符串。例如,我的文本文件是:

    abc
    def
    ghi
    

    我希望名为1的字符串是“abc”,字符串2是“def”,依此类推。

    我可能会处理文本文件中的数百行,因此如果有一种方法可以自动命名字符串,而不是指定“string s1=”等。

    1 回复  |  直到 7 年前
        1
  •  1
  •   glenn jackman    7 年前

    首先,没有“debian脚本”这样的东西,您所做的事情也没有debian特定的内容:您正在编写一个“shell脚本”

    接下来,不要创建一系列动态命名的变量。这会让你的工作更加困难。使用数组。

    自从您标记 ,您将要使用 mapfile 命令在bash提示下键入
    help mapfile

    通常,您有

    mapfile -t all_lines < filename
    

    那么你有 ${all_lines[0]} ,则, ${all_lines[1]} 等,或

    for line in "${all_lines[@]}"; do
        do_something_with "$line"
    done
    

    关于在bash中使用数组,这个网站上有很多问题,请进行一些搜索。