Bash文本解析技巧全攻略
1. 使用 read 语句解析文本
在Bash中,有许多方法可以解析文本。如果你不想使用函数,是否还有其他方式呢?答案是使用 read 语句。
示例代码如下:
#!/usr/bin/env bash
# 脚本文件名: parseViaRead
# 用read语句解析ls -l的输出
# ls -l的输出示例如下:
# -rw-r--r-- 1 albing users 126 2006-10-10 22:50 fnsize
ls -l "$1" | { read PERMS LCOUNT OWNER GROUP SIZE CRDATE CRTIME FILE ;
echo $FILE has $LCOUNT 'link(s)' and is $SIZE bytes long. ;
}
在这个示例中, read 语句将 ls -l 的输出按空格分割成多个单词,并将每个单词赋值给相应的变量。 FILE 作为最后一个变量,会包含所有额外的字段,这样即使文件名包含空格,也能完整保存。
你还可以通过设置 $IFS (内部字段分隔符)变量来更改分隔符,但使用后记得恢复原样。
2. 使用 read 将文本解析为数组
当每行输入的单词数量不固定
超级会员免费看
订阅专栏 解锁全文
408

被折叠的 条评论
为什么被折叠?



