테이블의 필드 구분 기호 변경

테이블의 필드 구분 기호 변경

다음 형식의 테이블이 여러 개 있습니다.

1971-01-01 1124
1971-01-02 987
1971-01-03 954
...

대신 다음 테이블 형식을 얻기 위해 필드 구분 기호를 변경하고 싶습니다.

1971 01 01 1124
1971 01 02 987
1971 01 03 954
...

이 작업을 수행하는 방법을 아는 사람이 있나요?

답변1

tr이를 위해 (번역)을 사용할 수 있습니다 .

tr -- - ' ' < file

--이는 이 매개변수 뒤에 어떤 옵션도 전달하지 않았음을 의미합니다. 적어도 GNU tr에서는 이것이 필수가 아니지만 일부 다른 버전에서는 필요할 수 있습니다.

사용하거나 사용할 수 있는 sed다양한 다른 도구가 있습니다.

sed 'y/-/ /'
awk -F- '$1=$1'  # implicit translation using OFS

답변2

awk필드 구분 기호 로 사용 -하고 이를 기본값(공백)으로 바꾸도록 지시합니다 .

awk -F - '$1=$1' file

답변3

아니면 당신은 사용할 수 있습니다sed

$ sed -e 's|-| |g' file

답변4

여러 가지 방법.

<file tr \- \ 

<file sed -e 'y/-/ /'

<file awk -F - '{$1=$1};1'

<file perl -pe 'y/-/ /'

관련 정보