前言全局说明
一、说明
通常情况下,如果文本里有多列数据,会先读入,然后用 grep 和 awk 先拆分成行,在拆分成列。这样费时费力,遇到特殊字符行,还不好处理。
在解决别的问题时候,无意发现 read 有直接按列读取的功能。
二、文件
2.1 存放两列数据的文件
文件名:list.txt
1 libCommonAPIWrapper.so
2 libcrypto.so
4 libcurl.so
3 libdl.so
2.2 读取列的脚本
文件名:read.sh
#!/bin/bash
tmpfile=list.txt
# 遍历文件列表
while read -r count filename; do
echo "count = $count"
echo "filename = $filename"
done < "$tmpfile"
效果:
三、解释
3.1 为方便理解,给列加了列标题
3.2 如果有多列,可以在 read 后面在加 变量即可
while read -r count filename age; do
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
参考、来源: