You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash中提取文件每行的最后有效单词(无视行长度)

Bash环境下提取每行最后一个有效单词的方案

以下是几种针对你文件格式优化的可行实现方法:

方法一:使用awk处理

利用分号作为分隔符,直接取倒数第二个非空字段(每行末尾的分号会生成一个空字段):

awk -F';' '{print $(NF-1)}' your_file.txt

原理:-F';'将每行按分号分割,NF表示当前行的总字段数,NF-1对应最后一个有效项的字段位置。

方法二:使用sed处理

通过正则匹配替换,保留最后一个分号前的有效内容:

sed -E 's/.*;([^;]+);? *$/\1/' your_file.txt

原理:.*;匹配最后一个分号之前的所有内容,([^;]+)捕获分号后的有效单词,;? *$匹配末尾可选的分号和空格,最终替换为捕获的目标内容。

方法三:使用grep处理

通过Perl正则的正向预查和前缀忽略功能,精准提取目标内容:

grep -oP '.*;\K[^;]+(?=;? *$)' your_file.txt

原理:.*;\K忽略到最后一个分号的所有前置内容,[^;]+匹配目标单词,(?=;? *$)确保后面是末尾的分号和空格,-o参数让grep只输出匹配的部分。

内容的提问来源于stack exchange,提问作者Rodriguez J Mathew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 19:55:57