![](/img/trans.png)
[英]Find and replace inside a string variable using sed command - shell scripting
[英]Partially replace string using 'sed' shell command
我需要按照以下模式刪除<#>:
vdd1a<1>
vdd1b<2>
vdd1c<3>
....
輸出應類似於:
vdd1a
vdd1b
vdd1c
...
我正在嘗試執行sed 's/\\(vdd1[az]*\\).<[0-9]>/\\1/' file1 > file2
但這一直給我“ vdd1”。
如何正確執行?
點.
括號中的字母與1之后的字母匹配。您需要刪除它。 也就是說,
sed 's/\(vdd1[a-z]*\)<[0-9]>/\1/' file1 > file2
或者,您可以將<[0-9]>
替換為空白模式,即
sed 's/<[0-9]>//' file1 > filed
如果除了<#>
部分中的行之外,這些行中不包含其他<
,則可以避免使用sed
而改用諸如cut
東西,例如:
cut -d"<" -f1 <<< "vdd1a<1>"
將打印:
vdd1a
用文件調用它:
cut -d"<" -f1 < file1 > file2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.