[英]sed command line
嗨,我需要在file1.txt上運行'sed'命令,並讓它提取介於StringA和StringB之間的所有名稱...例如:“ Nickname”:“ bad_name”,提取bad_name,然后也保存所有結果Output.txt 。 這甚至有可能還是我應該查看其他命令?
不顯示您的file1.txt的更多示例,我假設您具有一致的數據格式。 如果是這樣,請使用awk
echo '"Nickname":"bad_name"' | awk -F":" '{print $NF}'
對於文件,只需輸入文件名
awk -F":" '{print $NF}' file > output.txt
否則,請提供更多示例數據供我們使用。
使用sed:
dmedvinsky@home:~$ cat file1
"Nickname":"bad_name"
"First Name":"Dmitry"
bad line
"Dog Name":"Chuppy"
another bad line
dmedvinsky@home:~$ cat file1 | sed -e '/\(.\+\)":"\(.\+\)"/!d' -e 's/"\(.\+\)":"\(.\+\)"/\2/'
bad_name
Dmitry
Chuppy
第一個表達式刪除格式錯誤的行,第二個表達式將模式替換為第二個匹配的組-第二個引號的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.