![한 줄에서 N번째로 지정된 문자를 삭제합니다.](https://linux55.com/image/76440/%ED%95%9C%20%EC%A4%84%EC%97%90%EC%84%9C%20N%EB%B2%88%EC%A7%B8%EB%A1%9C%20%EC%A7%80%EC%A0%95%EB%90%9C%20%EB%AC%B8%EC%9E%90%EB%A5%BC%20%EC%82%AD%EC%A0%9C%ED%95%A9%EB%8B%88%EB%8B%A4..png)
다음과 같은 줄이 포함된 로그 파일이 있습니다.
06:06:48.531 9: 157 2492
06:06:49.331 10: 147 2812
...
삭제해야 해요오직세 번째':'이므로 결과는 다음과 같습니다.
06:06:48.531 9 157 2492
06:06:49.331 10 147 2812
...
답변1
앞쪽:
sed -e 's/://3' <file
답변2
세 번째 ':' 뒤에는 공백이 있는데, 이는 다른 것과 다릅니다!
sed -i 's/: / /g' logfile
답변3
이상한 해결책 :
awk '{ print(gensub(/:/,"",3,$0)) }' logfile
답변4
긴 버전(피곤하고 많은 생각을 하고 싶지 않을 때 매우 유용한 방법을 사용합니다...):
sed -e 's/\([^:]*\):\([^:]*\):\([^:]*\):/\1:\2:\3/'