簡體   English   中英

如何從數據行中刪除換行符

[英]How to remove new line characters from data rows

我有一個文件如下

Emp1|FirstName|MiddleName|LastName|Address|Pincode|PhoneNumber
1234|FirstName1|MiddleName2|LastName3| Add1 || ADD2|123|000000000
2345|FirstName2|MiddleName3|LastName4|
Add1 || ADD2|
 234|000000000

OUTPUT:

Emp1|FirstName|MiddleName|LastName|Address|Pincode|PhoneNumber
1234|FirstName1|MiddleName2|LastName3| Add1 || ADD2|123|000000000
2345|FirstName2|MiddleName3|LastName4| Add1 || ADD2|234|000000000

這里的問題不是如何刪除換行符,而是何時刪除它們。 幸運的是,需要與下一行連接的行可以由尾隨|確定。 . 適當的sed命令是:

sed ':0;/|$/{N;s/\n//;b0}'
  • :0 - label 在腳本的開頭
  • /|$/ - 以|結尾的地址行
  • N - append 下一行輸入
  • s/\n// - 刪除嵌入的換行符
  • b0 - 分支到腳本的開頭(加入更多行)

暫無
暫無

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

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