gpt4 book ai didi

arrays - Bash shell 数组操作

转载 作者:行者123 更新时间:2023-12-04 05:03:32 24 4
gpt4 key购买 nike

我有一个小脚本,它从文本文件中读取行并将它们存储在一个数组中。

#!/bin/bash

while read line
do
array+=("$line")
done < $1

for ((i=0; i < ${#array[*]}; i++))
do
echo "${array[i]}"
done

这是我的文本文件中的行,在我运行脚本后打印:
This is line1 of file1 with 10 words.
This is line2 of file2 with 100 words.
This is line3 of file3 with 1000 words.
...

到目前为止还好。从这里开始,我试图使用单词并形成一个新的语句集。最终输出将按以下格式构建:
Capture ThisFile info-count1
filenum file1
Position of line: line1; Count of words: 10

有没有办法遍历每个数组元素(行字)并执行此操作?

基本上,从这里开始,当我在数组中有行时,我想遍历每一行,在行中选取某些单词并创建一个新的语句集。

.....
更新:
.....

这就是我最终完成的方式:
#!/bin/bash

while read line
do
getthelines=($line)
printf '\n'
echo "Capture ThisFile info_count"
echo "filenum ${getthelines[4]}"
echo "Position of line: ${getthelines[2]}; Count of words: ${getthelines[6]}"
printf '\n'
done < $1

非常感谢。

See also:

最佳答案

没办法。我昨天写了这段代码来迭代一个数组。

line="This is line1 of file1 with 10 words."
words=($line)
for word in ${words[@]};
do
echo "Word: $word"
done

输出:
Word: This
Word: is
Word: line1
Word: of
Word: file1
Word: with
Word: 10
Word: words.

关于arrays - Bash shell 数组操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15813768/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com