BASH lesson 3 - grep and cut commands
차례:
- 잘라 내기 명령을 사용하는 방법
- 필드별로 자르는 방법
- 구분자를 기준으로 자르는 방법
- 선택을 보완하는 방법
- 출력 구분 기호를 지정하는 방법
- 바이트와 문자로 자르는 방법
- 컷 예
- 모든 사용자의 목록을 가져옵니다
- 가장 자주 사용되는 10 가지 명령보기
- 결론
Linux 및 Unix 시스템에는 텍스트 파일을 처리하고 필터링 할 수있는 많은 유틸리티가 있습니다. 잘라내 기는 지정된 파일이나 파이프 된 데이터에서 줄의 일부를 잘라 내고 결과를 표준 출력으로 인쇄 할 수있는 명령 줄 유틸리티입니다. 구분 기호, 바이트 위치 및 문자로 줄의 일부를 자르는 데 사용할 수 있습니다.
이 튜토리얼에서는 가장 일반적인 컷 옵션에 대한 실제적인 예와 자세한 설명을 통해 Linux 컷 명령을 사용하는 방법을 보여줍니다.
잘라 내기 명령을 사용하는 방법
cut 명령의 구문은 다음과 같습니다.
cut OPTION……
cut 명령을 사용할 때는 다음 옵션 중 하나만 사용해야합니다.
-
-f
(--fields=LIST
)-필드, 필드 세트 또는 필드 범위를 지정하여 선택하십시오. 가장 일반적으로 사용되는 옵션입니다.-b
(--bytes=LIST
)-바이트, 바이트 세트 또는 바이트 범위를 지정하여 선택하십시오.-c
(--characters=LIST
)-문자, 문자 세트 또는 문자 범위를 지정하여 선택하십시오.
다른 옵션은 다음과 같습니다.
-
-d
(--delimiter
)-기본 "TAB"분리 문자 대신 사용될 분리 문자를 지정하십시오.--complement
선택을 보완합니다. 이 옵션을 사용하면 cut은 선택된 것을 제외한 모든 바이트, 문자 또는 필드를 표시합니다.-s
(--only-delimited
)-기본적으로 잘라내--only-delimited
구분 문자가없는 행을 인쇄합니다. 이 옵션을 사용하면 구분자를 포함하지 않는 줄은 인쇄되지 않습니다.--output-delimiter
기본값은 입력 구분 기호를 출력 구분 기호로 사용하는 것입니다. 이 옵션을 사용하면 다른 출력 구분 기호 문자열을 지정할 수 있습니다.
cut 명령은 0 개 이상의 입력 FILE 이름을 사용할 수 있습니다. FILE을 지정하지 않거나 FILE이
-
경우 cut은 표준 입력을 읽습니다.
-f
,
-b
및
-c
옵션에 전달 된 LIST 인수는 정수, 쉼표로 구분 된 여러 정수, 정수 범위 또는 쉼표로 구분 된 여러 정수 범위 일 수 있습니다. 각 범위는 다음 중 하나 일 수 있습니다.
-
N
번째 필드, 바이트 또는 문자. 1부터 시작하여 N 번째 필드, 바이트 또는 문자에서 행의 끝까지. N 번째에서 M 번째까지의NM
필드, 바이트 또는 문자. 첫 번째에서 M 번째까지-M
, 바이트 또는 문자.
필드별로 자르는 방법
잘라 내기 명령은 주로 각 파일 줄 또는 표준 입력에서 선택한 필드를 표시하는 데 사용됩니다. 지정하지 않으면 기본 구분 기호는 "TAB"입니다.
아래 예에서는 다음 파일을 사용합니다. 모든 필드는 탭으로 구분됩니다.
test.txt
245:789 4567 M:4540 Admin 01:10:1980 535:763 4987 M:3476 Sales 11:04:1978
첫 번째와 세 번째 필드를 표시하려면 다음을 사용하십시오.
cut test.txt -f 1, 3
245:789 M:4540 535:763 M:3476
또는 1 ~ 4 번째 필드를 표시하려는 경우:
cut test.txt -f -4
245:789 4567 M:4540 Admin 535:763 4987 M:3476 Sales
구분자를 기준으로 자르는 방법
분리 문자를 기준으로 자르려면
-d
옵션과 사용하려는 분리 문자를 사용하십시오.
예를 들어 ":"을 구분 기호로 사용하여 첫 번째 및 세 번째 필드를 표시하려면 다음을 입력하십시오.
cut test.txt -d ':' -f 1, 3
245:4540 Admin 01 535:3476 Sales 11
단일 문자를 구분 기호로 사용할 수 있습니다. 다음 예제에서는 공백 문자를 구분 기호로 사용하고 두 번째 필드를 인쇄합니다.
echo "Lorem ipsum dolor sit amet" | cut -d ' ' -f 2
선택을 보완하는 방법
선택 필드 목록을 보완하려면
--complement
옵션을 사용
--complement
.
-f
옵션으로 선택하지 않은 필드 만 인쇄합니다.
다음 명령은 첫 번째와 세 번째를 제외한 모든 필드를 인쇄합니다.
cut test.txt -f 1, 3 --complement
4567 Admin 01:10:1980 4987 Sales 11:04:1978
출력 구분 기호를 지정하는 방법
출력 분리 문자를 지정하려면
--output-delimiter
옵션을 사용하십시오. 예를 들어 출력 구분 기호를
_
로 설정하려면 다음을 사용하십시오.
cut test.txt -f 1, 3 --output-delimiter='_'
바이트와 문자로 자르는 방법
더 진행하기 전에 바이트와 문자를 구별 해 봅시다.
1 바이트는 8 비트이며 256 개의 서로 다른 값을 나타낼 수 있습니다. ASCII 표준이 설정 될 때 영어 작업에 필요한 모든 문자, 숫자 및 기호를 고려했습니다. ASCII 문자 표에는 128자가 있으며 각 문자는 1 바이트로 표시됩니다. 컴퓨터가 전 세계적으로 대중화되기 시작했을 때, 기술 회사는 다른 언어와 256자를 초과하는 언어에 대해 새로운 문자 인코딩을 도입하기 시작했으며 간단한 1 대 1 매핑은 불가능했습니다. 이로 인해 문서 공유 또는 웹 사이트 탐색과 같은 다양한 문제가 발생하고 세계의 대부분의 쓰기 시스템을 처리 할 수있는 새로운 유니 코드 표준이 필요했습니다. UTF-8은 이러한 문제를 해결하기 위해 만들어졌습니다. UTF-8에서 모든 문자가 1 바이트로 표시되는 것은 아닙니다. 문자는 1 바이트에서 4 바이트로 표현할 수 있습니다.
다음 예에서는 2 바이트를 사용하는
ü
문자를 사용합니다.
바이트 위치를 지정하여 행의 섹션을 잘라내려면
-b
(
--bytes
) 옵션을 사용하십시오.
5 번째 바이트를 선택하십시오:
echo 'drüberspringen' | cut -b 5
b
5 번째, 9 번째 및 13 번째 바이트를 선택하십시오.
echo 'drüberspringen' | cut -b 5, 9, 13
bpg
1 ~ 5 번째 바이트 범위를 선택하십시오.
echo 'drüberspringen' | cut -b 1-5
drüb
이 기사를 작성할 당시 GNU coreutils에 번들로 제공되는 cut 버전에는 문자별로 잘라낼 수있는 옵션이 없습니다.
-c
옵션을 사용할 때 cut은
-b
옵션을 사용할 때와 동일하게 작동합니다.
컷 예
절단 명령은 일반적으로 배관을 통해 다른 명령과 함께 사용됩니다. 다음은 몇 가지 예입니다.
모든 사용자의 목록을 가져옵니다
getent passwd
명령의 출력이
cut
으로 전달되어
cut
을 사용하여 첫 번째 파일을 인쇄합니다.
getent passwd | cut -d ':' -f1
가장 자주 사용되는 10 가지 명령보기
다음 예제에서 cut은
history
명령 출력의 각 행에서 처음 8 바이트를 제거하는 데 사용됩니다.
history | cut -c8- | sort | uniq -c | sort -rn | head
결론
이제 Linux cut 명령을 사용하는 방법에 대해 잘 알고 있어야합니다. 매우 유용하지만 cut 명령에는 몇 가지 제한이 있습니다. 구분자로 두 개 이상의 문자를 지정할 수 없으며 여러 데시 미터를 지원하지 않습니다.
컷 터미널AT & T Fiber Cut 이후에 복원 된 서비스

AT & T는 명백한 파괴 행위에 대한 정보로 250,000 달러의 보상에 대한 보상을 증가 시켰습니다. 목요일 샌프란시스코 베이 지역 주민 수천 명에게 전화 및 인터넷 서비스를 중단하라는 AT & T의 발표에 따르면 AT & T, 버라이즌 및 스프린트 넥스텔의 유무선 고객들은 서비스를 복원했다. 버라이존 대변인 존 데이비스 (Jon Davies)는 영향을받은 버라이존 사용자는 모두 금요일 오전 1 시경에 백업되어 운영되고 있다고 밝혔다. 스프린트는 목요일에 영향을받은 고객들을 대상으로 트래픽을 재배치했다.
예제가있는 Linux 날짜 명령

date 명령은 시스템 날짜를 표시하거나 설정합니다. 날짜와 시간을 다른 형식으로 인쇄하고 미래 및 과거 날짜를 계산하는 데 가장 일반적으로 사용됩니다.
예제가있는 Linux ip 명령

ip 명령은 네트워크 인터페이스 구성을위한 강력한 도구입니다. 인터페이스를 올리거나 내리고, 주소와 라우트를 할당 및 제거하고, ARP 캐시를 관리하는 등의 용도로 사용할 수 있습니다.