我需要删除第三个“:”(冒号)或将其替换为空格。我不能在某个索引处执行此操作,因为条目的长度不同。
u:Testuser:rw:/home/user1/temp
g:Testgroup:-:/home/user2/temp
结果应如下所示:
u:Testuser:rw /home/user1/temp
g:Testgroup:- /home/user2/temp
是否可以1)删除特定字符,2)在特定字符之前/之后插入一个字符? 我找不到解决方案,很不幸,我是一个初学者。
答案 0 :(得分:2)
感谢您的回答,我自己做了
g:Testgroup:-:/home/user2/temp | sed s/':'/' '/3
答案 1 :(得分:0)
肮脏的解决方案:
$ cat 54042857.txt
u:Testuser:rw:/home/user1/temp
g:Testgroup:-:/home/user2/temp
$ awk -F ':' ' { print $1":"$2":"$3" "$4 } ' 54042857.txt
u:Testuser:rw /home/user1/temp
g:Testgroup:- /home/user2/temp
答案 2 :(得分:0)
$ foo='u:Testuser:rw:/home/user1/temp'
$ printf '%s\n' "${foo%":${foo#*:*:*:}"} ${foo#*:*:*:}"
u:Testuser:rw /home/user1/temp