我正在阅读shell脚本中的文件输入:
sh script_name.sh< file.txt的
我知道$ @将包含文件的内容,我想遍历文件的每一行 因为文件在每一行都有新的条目。
我试着这样做:
for i in $@
do
echo $i
done
但这似乎有用..注意我在示例中只是说回声$ i,但我想做一些其他操作。
我在访问$ line
中的元素时遇到问题下面是代码
while read line
do
for i in $line:
do
echo $i
done
done
我将其保存在test.sh文件中,并从test.txt文件中输入以下内容:
hello world
time good
world food
这就是我得到的输出:
hello
world:
time
good:
world
food:
正如您所看到的,在第二个字符串的末尾有一个额外的“:”
答案 0 :(得分:1)
while read line
do
echo $line
done
关于在空格上拆分每一行并处理每个字段的第二个要求,您需要:
while read line
do
for i in $line
do
echo $i
done
done
你一定写过太多的Python ;-),因为你的例子中你不小心得到一个尾随:
。
你想:
for i in $line
而不是:
for i in $line: