我有一些字符串
M-AA-
-AG--
M---G
我想删除第一行中的-
和其他行中-
位置对应的所有字符,以获得
MAA
-G-
M--
我可以知道如何在最简单的bash命令中做到这一点吗?对于awk[1],如果将字段分隔符设置为空字符串,则可以遍历每个字符:
awk '
BEGIN {FS = OFS = ""}
NR == 1 {for (i=1; i<=NF; i++) if ($i == "-") remove[i]}
{for (i in remove) $i = ""; print}
' file
[1] -至少gawk, mak和默认的awk在最近的MacOS。