![](/img/trans.png)
[英]Extract a regex pattern from a specific column of a text file then perform a subtraction
[英]extract specific column from file?
我有一個文件,記錄如下
AAA***000***LLL
BBB***111***PPP
只需要 output 文件中的第二列值。
輸出文件
000
111
有什么辦法可以使用 linux 命令嗎?
最簡單的方法是使用awk
awk -v FS='[*]{3}' '{print $2}' file
FS='[*]{3}'
意味着三個*
將被逐字用作字段分隔符。 請注意,將FS
設置為FS='***'
是錯誤的,因為***
不是有效的正則表達式。
awk
不可用,這在 Linux 盒子上不太可能,您可以使用 GNU sed
:
sed -En 's/[*]{3}/\n/; s/[*]{3}.*//; s/.*\n//p' file
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.