cut 명령은 Unix cut 유틸리티를 사용하여 표준 입력 스트림 또는 데이터 파일의 일부를 잘라내는 데 사용됩니다. GNU Coreutils 패키지와 BSD Base System의 일부이므로 기본적으로 모든 Linux 및 BSD 시스템에서 사용할 수 있습니다. Unix의 cut 명령을 사용하면 바이트 위치, 문자 또는‘-‘또는‘:’문자와 같은 구분 기호로 구분 된 필드를 기준으로 섹션을 절단 할 수 있습니다. 우리 가이드는 잘 선별 된 예제 세트를 사용하여 Linux cut 명령에 대한 실질적인 소개를 제공합니다. 이 게시물을 읽고 직접 경험해보십시오.

Unix에서의 Linux Cut Command 예제

저희 전문가들은 최선을 다해 이 가이드는 새로운 Linux 사용자에게 친숙합니다. 또한 노련한 사용자 모두에게 편리한 참조 지점 역할을 할 것입니다. 독자들이 명령을 탐색하면서 명령을 시도해 볼 것을 권장합니다. 표준 입력과 참조 파일을 모두 사용하여 이러한 Linux Cut 명령을 시연합니다. 여기에서 파일 내용을 복사하여 붙여넣고 시스템에 만들 수 있습니다.

데모 용으로 사용되는 참조 파일

우리는 test.txt라는 텍스트 파일을 사용하고 있습니다. 홈 디렉토리에 있습니다. 파일은 모두 4 개의 열을 포함하는 5 개의 행 또는 행을 포함합니다. 각 행에는 국가 이름, 수도, 통화 및 인구가 포함됩니다. 모두 구분 기호 콜론으로 구분됩니다. 시스템에이 파일을 만들고 아래 내용으로 채우십시오.

Unix의 Cut 명령 구문 h3>

Linux cut 명령의 구문은 다음과 같습니다.

cut OPTION... ...

입력 스트림에서 텍스트를 잘라내려면 echo 명령을 사용하고 출력을 cut 명령으로 파이프 (|)합니다. cat에서 cut의 입력을 제공하는 데 동일한 방법을 사용할 수 있습니다.

바이트 위치에 따라 텍스트 자르기

cut 유틸리티에서 제공하는 b 옵션을 사용하면 텍스트의 일부를자를 수 있습니다. 바이트 위치에 따라. 이 목적을 위해 -b 플래그 다음에 바이트 번호와 함께 cut 명령을 사용해야합니다.

1. 입력 스트림에서 단일 바이트 만 잘라 내기

$ echo "cutting text from input" | cut -b 1

위의 명령은 “입력에서 텍스트 잘라 내기”문자열을 표준 출력으로 에코하고이를 입력으로 파이프합니다. -b 플래그와 함께 1 개만 제공되었으므로 cut 명령은이 문자열에서 첫 번째 바이트 (c) 만 잘라냅니다.

2. 입력 스트림에서 특정 바이트 잘라 내기

$ echo "cutting text from input" | cut -b 1,3

이 명령은 “입력에서 텍스트 자르기”문자열의 첫 번째와 세 번째 바이트 만 잘라 내고 “ct”를 해당 문자열로 표시합니다. 다른 바이트 위치로 시도해보세요.

3. 입력 스트림에서 바이트 범위 잘라 내기

$ echo "cutting text from input" | cut -b 1-12

위의 명령 주어진 문자열에서 1-12 바이트 범위를 잘라 내고 표준 출력에 “cutting text”를 출력합니다. 문자열의 직업을 벗어난 바이트 범위를 제공하면 “잘라 내기 : 유효하지 않은 바이트 또는 문자 범위”라는 메시지가 표시됩니다.

4. 텍스트 파일에서 단일 바이트 만 잘라 내기

$ cut -b 1 test.txt

이 명령은 test.txt 파일에있는 5 개 행 각각의 첫 번째 바이트 만 표시합니다. $ cat test.txt | cut -b 1 명령과 동일합니다.

5. 텍스트 파일에서 특정 바이트 잘라 내기

$ cut -b 1,3 test.txt

위 명령은 각 행의 첫 번째와 세 번째 바이트 만 잘라냅니다. 사용 가능한 바이트 범위 내에있는 한 모든 바이트 번호를 지정할 수 있습니다.

6. 텍스트 파일에서 바이트 범위 잘라 내기

$ cut -b 1-12 test.txt

이 명령은 test.txt 파일에있는 각 행의 첫 번째 바이트에서 12 번째 바이트를 출력합니다.이 명령이 세 번째 명령과 유사한 기능을 가지고 있음을 알 수 있습니다.

7. 처음 잘라 내기 알파벳순 7 바이트

$ cut -b 1-7 test.txt | sort

각 행의 처음 7 바이트를 알파벳순으로 표시하기위한 sort 명령에 대한 입력으로 cut 명령의 출력. 알파벳순 정렬의 경우 sort 명령에 옵션이 필요하지 않습니다.

8. 처음 7 바이트를 역순으로 잘라 내기

$ cut -b 1-7 test.txt | sort -r

이 잘라 내기 명령은 각 행에서 처음 7 바이트를 잘라내어 역순으로 출력합니다. cut 명령의 출력이 파이프를 사용하여 정렬 명령에 어떻게 공급되는지보십시오.

9. 5 번째 바이트에서 입력 스트림의 끝까지 잘라 내기

$ echo "cutting text from input" | cut -b 5-

위의 잘라 내기 명령은 5 번째 바이트에서 문자열의 끝까지 텍스트를 잘라냅니다. 이 명령은 지정된 바이트 위치에서 입력 스트림의 끝까지 잘라 내야 할 때 유용합니다. 후행을 유지하면서 b 플래그의 값을 변경하기 만하면됩니다.

10. 5 번째 바이트에서 파일 끝까지 잘라 내기

$ cut -b 5- test.txt

이 명령은 5 개의 테스트 행을 모두 잘라 내기 시작합니다.txt를 5 바이트 위치에서 시작하고 각 행이 끝난 후에 만 완료됩니다. 이 작업에는 후행 하이픈 (-)이 필수입니다.

11. 처음부터 시작하여 지정된 양의 바이트 잘라 내기

$ echo "cutting text from input" | cut -b -5

이 명령은 입력 문자열의 처음 5 바이트를 잘라냅니다. b 플래그의 값을 바꾸면 시작 바이트에서 다른 바이트 위치로자를 수 있습니다. 앞의 하이픈 (-)을 추가해야합니다. 그렇지 않으면 출력이 예상대로되지 않습니다.

12. 첫 번째 바이트에서 파일의 지정된 위치로 잘라 내기

$ cut -b -5 test.txt

위의 명령은 텍스트 파일에서 각 줄의 처음 5 바이트 만 잘라냅니다. 이 목록의 9-12 명령에 하이픈 (-)이 어떻게 사용되는지 확인하십시오.

문자를 기준으로 텍스트 자르기

Unix의 cut 명령을 사용하면 문자를 기준으로 텍스트 섹션을 잘라낼 수 있습니다. 대용량 파일 처리 작업을 처리 할 때는이 작업을 자주 수행해야합니다. 이를 사용해보고 문자 기반 절단과 바이트 기반 절단의 유사점을 확인하십시오.

13. 입력 스트림에서 단일 문자 만 잘라 내기

$ echo "cutting text from input" | cut -c 1

위의 명령은 표준 입력에서 첫 번째 문자를 잘라내어 터미널에 표시합니다. 이 경우 “c”입니다. 이것을 명확하게 이해하기 위해 문자열을 다른 것으로 변경하십시오.

14. 입력 스트림에서 특정 문자 잘라 내기

$ echo "cutting text from input" | cut -c 1,3

이 명령은 입력 문자열의 첫 번째 및 세 번째 문자 만 잘라내어 표시합니다. 다른 문자를 잘라낼 수 있지만 문자열의 문자 제한을 초과하지 않도록주의하십시오.

15. 입력 스트림에서 문자 범위 잘라 내기

$ echo "cutting text from input" | cut -c 1-12

이 명령의 경우 “cut”은 첫 번째 위치에서 12 번째 위치까지 문자를 잘라냅니다. 결과는 “텍스트 자르기”입니다.이 Linux 자르기 명령과 세 번째 명령의 유사점에 유의하십시오.

16. 텍스트 파일에서 단일 문자 만 자르기

$ cut -c 1 test.txt

이 명령은 test.txt 파일의 5 개 행 각각의 첫 번째 문자 만 표시합니다. $ cat test.txt | cut -c 1 명령과 동일하며 동일한 결과를 제공합니다. 바이트 플래그를 사용할 때 얻을 수 있습니다.

17. 텍스트 파일에서 특정 문자 잘라 내기

$ cut -c 7,10 test.txt

위의 명령은 잘라내기만 각 5 개 행의 7 번째 및 10 번째 문자입니다. 사용 가능한 문자 범위 내에있는 한 모든 문자 위치를 지정할 수 있습니다.

18. 텍스트 파일의 문자 범위 잘라 내기

이 명령은 test.txt 파일에있는 각 줄의 처음 1 ~ 12 번째 문자를 출력합니다. Unix의 cut 명령은 문자 범위와 바이트 범위를 절단 할 때 동일하게 작동합니다.

19. 처음 5 개 문자를 알파벳순으로 잘라 내기

$ cut -c 1-5 test.txt | sort

잘라 내기 명령의 출력을 정렬 명령의 입력으로 제공하여 처음 5 바이트를 잘라낼 수 있습니다. 각 행은 알파벳순입니다. 정렬 명령은 알파벳순으로 정렬 할 때 옵션이 필요하지 않습니다.

20. 처음 5 개 문자를 역순으로 잘라 내기

$ cut -c 1-5 test.txt | sort -r

이 잘라 내기 명령은 각 행에서 처음 5 개 문자를 잘라내어 역순으로 정렬 한 후 표시합니다. cut 명령의 출력이 파이프를 사용하여 정렬 명령에 어떻게 공급되는지보십시오.

21. 다섯 번째 문자에서 입력 스트림 끝까지 잘라 내기

$ echo "cutting text from input" | cut -c 5-

위의 잘라 내기 명령은 다섯 번째 바이트에서 문자열 끝까지 텍스트를 잘라냅니다. . 입력 스트림이 끝날 때까지 지정된 문자 위치에서 잘라 내야 할 때 유용 할 수 있습니다. 후행을 유지하면서 b 다음에 값을 변경하면됩니다.

22. 다섯 번째 문자에서 파일 끝까지 잘라 내기

$ cut -c 5- test.txt

이 명령은 다섯 번째 문자에서 test.txt 파일의 5 개 행을 잘라 내기 시작합니다. 모든 라인의 끝에 도달하면 완료됩니다. 이런 종류의 작업에는 후행 하이픈 (-)이 필수입니다.

23. 첫 번째 위치에서 시작하여 지정된 양의 문자 잘라 내기

$ echo "cutting text from input" | cut -c -5

이 명령은 입력의 처음 5 개 문자 위치 만 잘라냅니다. -c 값을 대체하여 시작 문자에서 다른 문자 위치로자를 수 있습니다. 앞의 하이픈 (-)을 추가하는 것을 잊지 마십시오. 그렇지 않으면 출력이 예상과 동일하지 않습니다.

24. 첫 번째 문자에서 파일에서 지정된 위치로 잘라 내기

$ cut -c -5 test.txt

유닉스에서이 잘라 내기 명령은 파일 테스트에서 각 줄의 처음 5 개 문자를 잘라냅니다. txt. 이 목록의 21-24 명령에 하이픈 (-)이 어떻게 사용되는지 확인하십시오.

필드 및 구분 기호를 사용하여 열에서 텍스트 자르기

잘라 내기 명령을 사용하면 사용자가 텍스트의 일부를 매우 잘릴 수 있습니다. 용이하게. 이를 위해, 우리는 절단의 d 및 f 플래그를 모두 사용해야합니다. d 플래그는 구분 기호를 나타내고 f는 필드를 나타냅니다. 구분 기호는 텍스트 섹션을 다른 섹션과 구분하는 특수 문자입니다. 일반적인 예로는‘-‘,‘:’및””(공백)이 있습니다. 사용중인 참조 파일에는 구분자로‘:’이 있습니다.

25. 입력 스트림의 첫 번째 섹션 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f 1

위의 잘라 내기 명령은 입력 스트림에서 텍스트의 첫 번째 섹션 (이 경우 “Let ‘s”)을 잘라냅니다. 구분자 플래그 -d의 값은 단일 공백입니다. 콜론으로 구분 된 텍스트를 사용하여 시도해보고 어떤 일이 발생하는지 확인하십시오.

26. 파일의 첫 번째 섹션 잘라 내기

$ cut -d ":" -f 1 test.txt

이 명령은 참조 파일 내 각 행의 첫 번째 열을 반환하고 5 개 국가의 이름을 모두 인쇄합니다. 구분 기호 플래그에 제공된 값은 콜론이었습니다. 이것이 파일이 열을 분리하는 방법입니다.

27. 입력 스트림의 특정 섹션 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f 1,2,3

여기에서 잘라내기만 표시하도록 지시했습니다. 주어진 입력 문자열의 처음 세 필드. 쉼표로 구분 된 필드 위치 배열을 사용하여 수행됩니다.이 명령의 출력은 ‘Let ‘s cut this’입니다.

28. Cut Specific Sections of a 파일

$ cut -d ":" -f 1,2,3 test.txt

이 공동 mmand는 또한 이전 명령과 동일한 종류의 출력을 제공합니다. 여기서 cut은 표준 입력 대신 파일에서 작업하는 것뿐입니다. 목록에 각 국가의 이름, 수도 및 통화가 표시되어야합니다. 그러나 구분 기호 (공백과 콜론)의 차이에 유의하십시오.

29. 입력 스트림에서 필드 범위 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f 1-5

위 명령은 문자열의 처음 5 개 필드를 잘라내어 터미널에 표시합니다. 아포스트로피는 여러 필드 사이의 구분자로 공백을 사용할 때 필요합니다.

30. 파일에서 필드 범위 잘라 내기

$ cut -d ":" -f 1-3 test.txt

이 잘라 내기 명령은 텍스트 파일의 처음 세 열을 각각 잘라내어 출력으로 표시합니다. 이전 명령에 의해 제공된 것과 동일한 결과가 표시되어야합니다. – 또는 :과 같은 문자에는 아포스트로피가 필수가 아닙니다.

31. 특정 필드에서 각 항목을 잘라내어 알파벳순으로 나열

$ cut -d ":" -f 1 test.txt | awk "{print $1}" | sort

목록에서 5 개 국가의 이름을 알파벳순으로 찾아야한다고 가정합니다. 이를 위해 위의 명령을 활용할 수 있습니다. 국가가 알파벳순으로 나열됩니다. f 플래그 값을 대체하면 다른 필드에서도이 작업을 수행 할 수 있습니다.

32. 필드에서 각 항목을 잘라내어 알파벳 역순으로 나열

$ cut -d ":" -f 1 test.txt | awk "{print $1}" | sort -r

이 명령은 위의 명령과 동일한 작업을 수행하며 항목을 역순으로 정렬합니다. 매너, 그게 다입니다. 정렬을 위해 전달 된 -r 플래그로 인해 여기에서 출력이 변경됩니다.

33. 고정 필드에서 입력 스트림 끝까지 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f 2-

이 잘라 내기 명령은 두 번째 필드에서 문자열 끝까지 잘라냅니다. 입력이 끝날 때까지 지정된 위치에서 절단해야 할 때 유용 할 수 있습니다. 후행을 유지하면서 -f 값을 변경할 수 있습니다.-다른 필드에서 잘라 내기 위해.

34. 고정 필드에서 파일 끝까지 잘라 내기

$ cut -d ":" -f 2- test.txt

이렇게 사용하면 잘라 내기 명령은 지정된 필드에서 잘라 내기 시작하여 끝까지 이동합니다. 각 라인의. 이 경우 목록에있는 5 개 국가의 수도, 통화 및 인구가 인쇄됩니다.

35. 처음부터 시작하여 지정된 수의 열 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f -5

이 명령은 주어진 입력의 처음 5 개 필드 만 잘라냅니다. -f 값을 대체하여 시작 열에서 다른 열 위치로자를 수 있습니다. 그러나 앞에 하이픈 (-)을 추가해야합니다. 그렇지 않으면 출력이 예상과 일치하지 않습니다.

36. 첫 번째 열부터 시작하여 파일의 일부 지정된 열 잘라 내기

$ cut -d ":" -f -2 test.txt

이 Linux 잘라 내기 명령은 첫 번째 열에서 test.txt 파일을 잘라 내고 종료합니다. 두 번째 명령 절단을 완료했습니다. 따라서이 명령의 출력은 단순히 각 국가의 이름과 해당 수도를 표시합니다.

37. CSV 파일의 여러 필드 잘라 내기

$ cut -d "," -f 1,2 file.csv

잘라 내기 명령은 대용량 CSV 문서로 작업 할 때 실행 가능한 도구로 입증되는 경우가 많습니다. 예를 들어 위의 명령은 file.csv라는 쉼표로 구분 된 CSV 파일의 처음 두 열을 잘라냅니다.

38.CSV 파일의 특정 필드를 잘라내어 역순으로 정렬

$ cut -d "," -f 1,3,5 file.csv | sort -r

위 명령은 쉼표로 구분 된 CSV의 첫 번째, 세 번째 및 다섯 번째 열을 자릅니다. file.csv라는 파일을 지정하고 역순으로 출력을 표시합니다.

전문가를위한 기타 Linux Cut 명령

cut 명령은 적절한 파일과 함께 활용하여 고급 파일 처리에 사용할 수 있습니다. 필터 및 기타 강력한 Linux 명령. 아래에서는 장기적으로 도움이 될 수있는 몇 가지 명령을 살펴 보겠습니다.

39. Cut 명령을 사용하여 passwd 파일 검사

$ cut -d ":" -f1 /etc/passwd

대부분의 시스템에서 / etc에 저장된 passwd 파일에는 시스템 및 사용자에 대한 매우 민감한 정보가 포함되어 있습니다. cut 명령을 사용하여이 파일을 빠르게 검사 할 수 있습니다. 구분 기호‘:’는이 파일의 열을 사용하여 구분할 때 사용됩니다. -f 값을 변경하여 다른 필드를 모니터링합니다.

40. 특정 필드 잘라 내기 및 고유 항목 만 표시

$ cut -d ":" -f 3 test.txt | uniq -u

Linux의이 잘라 내기 명령은 test.txt 파일의 세 번째 열을 잘라 내고 고유 항목 만 표시합니다. . 따라서이 파일의 경우 출력에는 유로, 리라, 엔이라는 세 가지 통화 만 포함됩니다.

41. 지정된 것을 제외한 입력 스트림의 모든 바이트 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -b 1,3,5,7 --complement

이 잘라 내기 명령은 -b에 제공된 문자를 제외하고 주어진 입력 문자열의 모든 문자를 잘라냅니다. 따라서 첫 번째, 세 번째, 다섯 번째, 일곱 번째 바이트 위치는 출력에서 생략됩니다.

42. 지정된 파일을 제외한 파일의 모든 바이트 잘라 내기

$ cut -b 2,4,6 test.txt --complement

이 방식으로 사용하면 cut 명령은 test.txt 파일의 모든 바이트를 잘라냅니다. 명령에 언급 된 것. 따라서 출력에는 각 행의 두 번째, 네 번째 및 여섯 번째 바이트가 포함되지 않습니다.

43. 지정된 문자를 제외한 입력 스트림의 모든 문자 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -c 1,3,5,7 --complement

이 명령은 입력 문자열의 첫 번째, 세 번째, 다섯 번째 및 일곱 번째 문자를 잘라 내지 않고 대신 이 4 개를 제외한 다른 모든 문자를 자릅니다.

44. 지정된 문자를 제외한 파일의 모든 문자 잘라 내기

$ cut -c 2,4,6 test.txt --complement

이 명령의 경우 출력에는 하나를 제외한 test.txt 파일의 모든 문자가 포함됩니다. 말하는. 따라서 두 번째, 네 번째, 여섯 번째 문자는 표시되지 않습니다.

45. 지정된 항목을 제외한 모든 입력 섹션 잘라 내기

$ echo "Let"s cut this input stream section by section" | cut -d " " -f 1,3,5 --complement

위 명령은 “cut input section by section”문자열을 출력합니다. 따라서 필드 플래그 뒤에 언급되지 않은 모든 입력 섹션을 표시합니다.

46. 지정된 열을 제외한 파일의 모든 열 잘라 내기

$ cut -d ":" -f 2,3 test.txt --complement

이 명령은 test.txt 파일의 첫 번째 열과 마지막 열만 잘라냅니다. 따라서 보완 플래그를 사용하여 큰 표 형식 문서를 처리 할 때 일부 필드를 쉽게 선택 취소 할 수 있습니다.

47. 입력 섹션을 잘라내어 문자 방향으로 반전

$ echo "Let"s cut this input stream section by section" | rev | cut -d " " -f 1,3

위의 Linux 명령은 입력의 첫 번째와 세 번째 섹션을 잘라내어 문자 방향으로 뒤집습니다. 한 명령의 출력이 다른 명령의 입력으로 제공되는 방식에 유의하십시오.

48. 파일에서 특정 열을 잘라내어 문자 단위로 반전

$ cut -d ":" -f 1,3 test.txt | rev

이 명령은 test.txt 파일의 지정된 필드 만 잘라 내고 결과를 문자 단위로 표시합니다. 반대로.

49. Cut 명령의 출력 구분자 수정

$ echo "A,comma,separated,list,for,demonstration,purposes" | cut -d "," -f 1- --output-delimiter=" "

Cut을 사용하면 결과를 표시 할 때 출력 구분자를 수정할 수 있습니다. 위의 명령은 쉼표로 구분 된 목록의 모든 섹션을 잘라내지만 결과를 표시 할 때 쉼표를 공백으로 대체합니다.

50. 탭 구분 기호가있는 Cut + Sed 명령의 예

$ sed "s/:/\t/g" test.txt | cut -f 1-4

목록의 마지막 cut 명령은 강력한 강력한 sed 유틸리티를 사용하여 파일의 콜론을 탭으로 대체합니다. . \ t를 – 또는;와 같은 다른 문자로 바꿀 수 있습니다. 원하는 출력 구분자로 변경합니다.

종료 생각

Unix의 cut 명령은 대용량 파일을 자주 처리해야하는 사용자에게 많은 이점을 제공 할 수있는 다목적 도구입니다. 이 환상적인 유틸리티에 익숙해지는 데 도움이되는 50 가지 최고의 Linux cut 명령을 설명했습니다. 개별적으로 시도하고 사용 가능한 다양한 옵션을 수정해야합니다. 이렇게하면 깊이있는 절단 명령의 다양한 변형을 이해하는 데 도움이됩니다. 바라건대, 우리는 가능한 한 많이 당신을 돕기위한 탐구에 성공했습니다. 유용한 Linux 명령에 대한 향후 가이드를 계속 확인하세요.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다