C Shell (쉘 스크립트)
명령어 정리
awk
awk는 파일로부터 레코드(record)를 선택하고, 선택된 레코드에 포함된 값을 조작하거나
데이터화하는 것을 목적으로 사용하는 프로그램입니다.
즉, awk 명령의 입력으로 지정된 파일로부터 데이터를 분류한 다음,
분류된 텍스트 데이터를 바탕으로 패턴 매칭 여부를 검사하거나 데이터 조작 및 연산 등의 액션을
수행하고, 그 결과를 출력하는 기능을 수행
-한 행 씩 읽어 들여서 자름.
- 느림.
- 메모리 거의 안씀
cut
- 파일 전체를 메모리에 올린 후 자름
- 파일에서 필드를 뽑아낸다. 필드는 구분자로 구분할 수 있다.
- 빠르다.
- 메모리를 많이 씀
cut [옵션][파일명]
cat
cat은 concatenate 또는 catenate에서 따온 이름이다.
cat 명령은 파일이름을 인자로 받아서 그 내용을 쭉 이어주는 역할을 한다.
결국 어떤 내용을 받아서 그냥 그대로 터미널 화면에 뿌려주는 역할을 한다.
$ cat [옵션][파일명]
-b: 줄번호를 화면 왼쪽에 나타낸다. 비어있는 행은 제외한다.
-e: 제어 문자를 ^ 형태로 출력하면서 각 행의 끝에 $를 추가한다.
-n: 줄번호를 화면 왼쪽에 나타낸다. 비어있는 행도 포함한다.
-s: 연속되는 2개이상의 빈 행을 한행으로 출력한다.
-v: tab과 행 바꿈 문자를 제외한 제어 문자를 ^ 형태로 출력한다.
-E: 행마다 끝에 $ 문자를 출력한다.
-T: 탭(tab) 문자를 출력한다.
-A: -vET 옵션을 사용한 것과 같은 효과를 본다.
grep
- 입력으로 전달된 파일의 내용에서 특정 문자열을 찾고자할 떄 사용하는 명령어
grep [OPTION][PATTERN][FILE] grep "PAT" FILE.txt
"FILE.txt"의 내용에서 "PAT"라는 문자열을 검색하고, 문자열이 존재하는 라인을 출력하는 예제
ex) who를 입력했을 때
user02 pts/1 2022-01-04 12:53 (10.1.8.55)
user07 pts/2 2022-01-04 09:01 (10.1.8.158)
user01 pts/3 2022-01-04 14:09 (10.1.9.151)
user06 pts/4 2022-01-04 14:22 (172.30.28.34)
user09 pts/5 2022-01-04 14:22 (10.1.8.161)
user00 pts/7 2022-01-04 14:24 (172.30.28.32)
user00 pts/8 2022-01-04 14:24 (172.30.28.32)
user08 pts/9 2022-01-04 14:33 (10.1.9.152)
user05 pts/10 2022-01-04 09:16 (10.1.8.185)
user07 pts/12 2022-01-04 13:12 (10.1.8.158)
user04 pts/13 2022-01-04 09:37 (10.1.8.154)
user04 pts/14 2022-01-04 10:34 (10.1.8.154)
user00 pts/15 2022-01-04 14:24 (172.30.28.32)
user04 pts/16 2022-01-04 10:40 (10.1.8.154)
user03 pts/17 2022-01-04 10:51 (10.1.9.126)
user08 pts/18 2022-01-04 12:56 (10.1.9.152)
이와 같은 유저들의 정보들이 출력됨
ex) whoami를 입력했을 때
user04
Quiz? 자신의 계정과 날짜 시간이 나오도록 출력하라
who | grep $im | awk '{print $1, $3, $4; exit}'
-> 여러 개의 who 계정 중 grep을 이용하여 whoami(자신의 계정)을 매칭한후 print $1번째 , $3번째, $4번 째 필드를 가져옴 (결과값이 여러개라도 exit는 한줄만 나오게됨)
Quiz
스크립트를 통해 장비에 들어가있는 계정명만 출력하는 문제(Hint Who를 이용)
who | cut -d " " -f 1
Author And Source
이 문제에 관하여(C Shell (쉘 스크립트)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@tjdrhd1207/C-Shell-쉘-스크립트저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)