shell的for while读取文件写法和区别

shell的for while读取文件写法和区别,第1张

常见的while和for循环的写法,大概有如下几种:

while循环:会将每行的内容读入到line变量,当while出现空行,用if判断字符=0, contiun

for循环高斗纳: 将读入的内容以IFS(shell中的环境变量,Internal Field Seperator,字段分隔符)为界分隔, 然后将各个分销枣隔开的内容,逐一读入变量line。本质上说,for循环读取的是字段,只不过可以设置IFS为\n这样能够逐行读取。

如果希望for处理文件按回车分隔,则需重新定义分隔符 IFS:内部字段分隔符 IFS=$'\n'

示例戚没1

示例2

很高兴回答你的问题慧团毕,while 语句其实是逐行读取文件。不知道你逐个读取文件想做什么前芹 *** 作。

提供给你一个参考,看看能否解决你的问题。

ls > file.list    # 将你想要读取的文件以每个一行的格式输入到 file.list 文件中

进行 while 的读或行取

#!/bin/sh

while read line

do

    sed -i 's/test/newtest/g' $line

    # 执行满足 test 的内容替换为 newtest,将扫描所有 file.list 中的文件

    # 不知道你逐个读取文件是要做什么 *** 作,cat? 可以写成 cat $line

done < file.list

希望对你有所帮助


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8228084.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存