linux 명령어 cut

필요한 필드만 출력 하기.

$ cut
Linux 명령어 cut

Linux 명령어 cut

파일의 텍스트 데이터를 필드 또는 문자 기준으로 추출하는 명령어

1. 자세한 설명

cut 명령어는 Linux에서 파일의 텍스트 데이터를 필드, 문자, 또는 바이트 기준으로 추출하는 데 사용됩니다. 이 명령어는 데이터를 분리하거나 특정 부분만 가져오는 작업을 위해 활용됩니다. 데이터 처리가 필요한 스크립트 작성 시 매우 유용한 도구입니다.

2. 사용법

  1. 필드 기준으로 데이터 추출
    cut -f [필드 번호] -d [구분자] [파일 이름]
    구분자를 기준으로 특정 필드 데이터를 추출합니다.
  2. 문자 기준으로 데이터 추출
    cut -c [문자 범위] [파일 이름]
    지정된 문자 위치의 데이터를 추출합니다.
  3. 바이트 기준으로 데이터 추출
    cut -b [바이트 범위] [파일 이름]
    특정 바이트 범위를 추출합니다.

3. 자세하게 설명

cut 명령어는 다양한 옵션을 지원합니다:

  • -f [필드]: 추출할 필드를 지정합니다.
  • -d [구분자]: 필드를 분리하는 구분자를 지정합니다.
  • -c [문자 범위]: 특정 문자의 위치를 지정합니다.
  • -b [바이트 범위]: 특정 바이트의 데이터를 추출합니다.
  • –complement: 지정된 범위를 제외한 데이터를 출력합니다.
  • –output-delimiter=[구분자]: 출력 데이터에 사용할 구분자를 지정합니다.

4. 자세한 명령어 사용법

다음은 cut 명령어의 다양한 사용 예제입니다:

# 기본적으로 첫 번째 필드 추출
$ cut -f1 -d"," file.txt

# 특정 문자 범위 추출
$ cut -c1-5 file.txt

# 특정 바이트 범위 추출
$ cut -b1-10 file.txt

# 여러 필드 추출
$ cut -f1,3 -d"," file.csv

# 출력 구분자 변경
$ cut -f1,3 -d"," --output-delimiter="|" file.csv

# 필드 제외 출력
$ cut -f1 --complement -d"," file.csv

# 텍스트 파일의 첫 10 문자 추출
$ cut -c1-10 textfile.txt

# 특정 구분자를 기준으로 첫 번째 필드 추출
$ cut -f1 -d":" /etc/passwd

# 스크립트를 통해 자동 데이터 처리
#!/bin/bash
while IFS=, read -r col1 col2 col3; do
  echo "필드1: $col1, 필드3: $col3"
done < <(cut -f1,3 -d"," data.csv)

# 파일에서 빈칸 제거 후 특정 문자 출력
$ cat file.txt | tr -d ' ' | cut -c1-5

# 여러 필드 결합하여 출력
$ cut -f1-3 -d"," file.csv | paste -sd, -

# 텍스트 파일의 마지막 문자 제외
$ cut -c1-$(($(wc -c < textfile.txt)-1)) textfile.txt

# 필드 데이터를 JSON 형태로 변환
$ cut -f1,2 -d"," file.csv | jq -R 'split(",") | {field1: .[0], field2: .[1]}'

# 특정 행 필드만 선택하여 출력
$ sed -n '3p' file.csv | cut -f2 -d"," 

# 결과를 다른 파일로 저장
$ cut -f1,3 -d"," file.csv > result.txt
            

위의 예제는 cut 명령어를 사용하여 데이터를 처리하고 변환하는 다양한 방법을 보여줍니다.

© 2025 Linux 명령어 설명

Categories:

No responses yet

답글 남기기