簡體   English   中英

如何將包含特定文本的行從一個文件復制到另一個文件

[英]How to Copy lines containing a specific text from one file to another file

將 file1 中包含“Data,10”、“Data,11”、“Data,12”或“Data,13”的所有行復制到 file2 中。 解決方案中的行應該與它們在 file1 文件中出現的順序相同。

這是我的代碼:

awk '/Data:\[1310\]/p' file1.txt > file2.txt

為什么這不起作用?

您看起來像是在混淆awksed 它們是具有不同語法的不同工具(盡管在這種情況下相似,因為它主要是正則表達式問題); 你不能混合或匹配。 另外,除非您想將它們作為文字字符進行匹配,否則您不應該將正則表達式中的括號 escaping ......

使用常用工具的幾種方法:

使用sedsed -n '/Data,1[0-3]/p' file1.txt > file1.txt

使用awkawk '/Data,1[0-3]/' file1.txt > file2.txt

使用grepgrep 'Data,1[0-3]' file1.txt > file2.txt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM