Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何在debian中从文本文件的每一行创建多个字符串?_Bash_Debian - Fatal编程技术网

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

Bash 如何在debian中从文本文件的每一行创建多个字符串?,bash,debian,Bash,Debian,我正在编写一个简单的debian脚本。我要找的是为文本文件中的每一行指定一个字符串。例如,我的文本文件是: abc def ghi 我希望一个名为1的字符串是“abc”,字符串2是“def”,以此类推 我可能会处理文本文件中的数百行,因此,如果有一种方法可以自动命名字符串,而不是指定“string s1=”等。首先,没有“debian脚本”这样的东西,那么您所做的事情与debian无关:您正在编写一个“shell脚本” 接下来,不要创建一系列动态命名的变量。这会让你的工作更困难。使用数组 由于

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

abc
def
ghi
我希望一个名为1的字符串是“abc”,字符串2是“def”,以此类推


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

首先,没有“debian脚本”这样的东西,那么您所做的事情与debian无关:您正在编写一个“shell脚本”

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

由于标记,您将需要使用
mapfile
命令。在bash提示符下键入
帮助映射文件

通常,你有

mapfile -t all_lines < filename

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

您的问题不清楚。如果你能展示你所写的代码就更好了。在任何情况下,您不能将文件中的行(字符串)读入数组,而不是为每行指定一个单独的变量吗?查看此帖子:。同时检查。很可能是X-Y问题。您将如何处理索引字符串?谢谢,我很抱歉,因为我对这个非常陌生
for line in "${all_lines[@]}"; do
    do_something_with "$line"
done