bash循环遍历文件 - 带有2个参数的行

bash循环遍历文件 - 带有2个参数的行

我有一个看起来像 logfiles.txt 的文件:

log1 ads.log
log2 bdfds.log
log4 cdrfs.log

我想循环遍历该文件:

for each lines do:
    echo $logname ;
    clear $logfilename; 
done

我知道如何执行这些操作,但如何在每个参数的行内循环。

谢谢

答案1

基本上

while IFS=" " read -r logname logfile
do
    if [[ ! -z $logfile ]]
    then
        echo "$logname"
        clear "$logfile"
    fi
done < logfiles.txt
  • IFS=" "语句将字段分隔符设置为空格,因此标记被解释为空格分隔。
  • if部分可防止空行(在查看示例输入时似乎存在空行)和缺少第二个字段的空行。

相关内容