여러 줄로 된 파일이 있으면 각 공백을 대시로 변경하고 싶습니다.
나는 이것을 좋아한다:
#!/bin/bash
while read line; do
echo "${line// /-}"
done
이것은 훌륭하게 작동하지만 더 나은 방법이 필요합니다!
답변1
표준 tr
유틸리티는 정확히 다음을 수행합니다.
tr ' ' '-' <filename.old >filename.new
sponge
내부 편집과 같은 도구를 사용할 수 있습니다(임시 파일이 사용된다는 사실을 숨김).
tr ' ' '-' <filename | sponge filename
답변2
sed --in-place 's/ /-/g' /path/to/file
답변3
펄 사용:
perl -ne 's/ /-/g;print ' FILE
답변4
나는 교체를 사용하는 것을 좋아합니다.
replace " " "-" </path/to/file