Awk 如何使用Sed/gedit删除“a”之后的所有内容:&引用;在一个文件中并将输出写入另一个文件?
我有一个文本文件:Awk 如何使用Sed/gedit删除“a”之后的所有内容:&引用;在一个文件中并将输出写入另一个文件?,awk,sed,gedit,Awk,Sed,Gedit,我有一个文本文件: "postalAddress2": "Postal Address Line 2", "postalCity": "Postal City", "postalPostCode": "Postal Code", "postalState": "State" 我需要删除第二列,即“:”之后的所有内容 并删除所有换行符 预期产出: "postalAddress2","postalCity","postalPostCode","postalState" 可以在gedit中使用se
"postalAddress2": "Postal Address Line 2",
"postalCity": "Postal City",
"postalPostCode": "Postal Code",
"postalState": "State"
我需要删除第二列,即“:”之后的所有内容
并删除所有换行符
预期产出:
"postalAddress2","postalCity","postalPostCode","postalState"
可以在gedit中使用sed或regex来完成吗
我尝试了这个正则表达式,但它不起作用:
.*\:(.*) \:.*
你能试一下吗
awk 'BEGIN{FS=":";OFS=","} {val=(val?val OFS:"")$1} END{print val}' Input_file
或者从@Sundeep的评论中汲取灵感,试试:
awk 'BEGIN{FS=":"} {print $1}' Input_file | paste -sd,
你能试一下吗
awk 'BEGIN{FS=":";OFS=","} {val=(val?val OFS:"")$1} END{print val}' Input_file
或者从@Sundeep的评论中汲取灵感,试试:
awk 'BEGIN{FS=":"} {print $1}' Input_file | paste -sd,
使用sed和粘贴:
sed 's/:.*//' file | paste -d ',' -s > other_file
输出到其他_文件:
"postalAddress2","postalCity","postalPostCode","postalState"
“postalAddress2”、“postalCity”、“postalPostCode”、“postalState”
使用sed和粘贴:
sed 's/:.*//' file | paste -d ',' -s > other_file
输出到其他_文件:
"postalAddress2","postalCity","postalPostCode","postalState"
“postalAddress2”、“postalCity”、“postalPostCode”、“postalState”
这可能适用于您(GNU-sed):
将文件拖到内存中,并使用多行模式,删除所有行上从第一个:
到下一个,
出现的所有内容
然后将,\n
替换为,
。这可能适用于您(GNU-sed):
将文件拖到内存中,并使用多行模式,删除所有行上从第一个:
到下一个,
出现的所有内容
然后将
,\n
替换为,
。或cut-d:-f1文件粘贴-sd,
或sed的/:[^,]*/'文件粘贴-d'-s
或perl-pe的/:[^,]*/;s/,\n/,/'文件
或剪切-d:-f1文件|粘贴-sd,
或sed的/:[^,]*/'文件|粘贴-d'-s
或perl-pe的/:[^,]*/;s/,\n/,/'文件
@Anti_cse51,请检查我的解决方案一次,让我知道它是否对您有帮助?@Anti_cse51,请检查我的解决方案一次,让我知道它是否对您有帮助?