-
[따배리] 4.Wildcard, 다중 명령어 처리, 텍스트 파일 내용 보기Linux 2022. 9. 3. 06:41
옮
---
https://youtube.com/playlist?list=PLApuRlvrZKohKeqFR3Mf6V2AB5TO5dr4m
[따배리] 리눅스 시리즈
www.youtube.com
---
Wildcard는 * ? [] 같은것들
파일 이름을 대신 쓸 수 있도록 리눅스 배시쉘에서 특별히 예약해준 것
복잡한 파일 이름을 입력할 때 이런 문자들을 대신해서 쓸 수 있다
{}얘는 WIldcard는 아닌데 파일네임확장 기능으로 들어가 있다
---
매번 argument로 파일 이름을 입력하기 쉽지 않다. 그래서 * ? [] 같은 특별한 문자를 제공합니다
---
? 한개 캐릭터와 매칭된다 숫자든 문자든
개수가 3개인 것만 보여줘
ls file? 하면 filea1이런건 안보이고
ls file?? 하면 file1이런건 안보여
cp file?? /tmp 이런식으로 활용
---
* 는 글자수에 상관없이 쓸 수 있어
file1이든 filea1든 다 나와
끝나는 것도 가능
(리눅스는 확장자가 의미가 없다. 파일의 속성이 의미가 있다)
이렇게 활용
---
[] 는 캐릭터 클래스
[df]면 d거나 f거나
대괄호 하나가 하나의 캐릭터를 나타낸다
?와 똑같다
이러면 d나 f로 시작되는 파일이 모두 나온다
이때
ls file[abc]1도 가능한데
이건
ls file[a-c]1 대시 문자로 써도 된다
ls file[12][1-2] 이런것도 가능
끝이 1,2 + 5,6,7 인 것
---
{}
브레이스
와일드카드 문자는 아니고
파일이름 확장할 때 사용
파일이나 디렉토리를 만들 때 쓸 수 있다
dir1, dir2, dir3을 만들 때
dir{1..3} 과 동일하다
---
{dev, qa, prod} 이렇게도 활용
▽mkdir test면 만드는거니까 ./test이런거 없어도 되겠네
와일드카드는 만들어져 있는 문자를 선택할 때 사용
브레이스 문자는 생성할 때 쓴다
4개 전부 파일 이름을 대신해서 만들어주는
{}가 문자열 패턴 찾을 때도 쓸 수 있대
와일드카드는 파일 조작 관리할 때 정말 많이 쓴다
---
다중 명령어 처리
리눅스 커맨드 라인에서 여러개의 명령을 순차적으로 실행
간단한데 활용도가 많다
---
; 는 단순하게 여러개의 커맨드를 순차적으로 나열
---
A && B (A&&B라고 써도 되는데 가독성이 좀)
조건연산자랑 비슷
앞에 A를 성공적으로 실행하면 두번째 커맨드도 실행해줘
A성공못하면 B도 안해줘
---
A || B
버티컬 바
A가 실패해야지만 B를 실행해줘!
A가 성공하면 B실행 안해줘
---
쉘 스크립트에서 많이 본다
---
텍스트 파일 내용 보기
명령어가 많지만 이정도는 알아야돼만 수업
---
명령어 보기 전에 먼저 알아야 할 건 텍스트 파일이 뭔지, binary파일과 구분해서
데이터 저장 방식에 따라 나뉜다
ASCII는 영어만 나오고
한국어 일본어 같은걸 처리할 수 있도록 확장된게 유니코드
ASCII형태의 텍스트파일
유니코드형태의 텍스트파일 이 있을 수 있어
텍스트인지 바이너리인지 내가 만든게 아니면 몰라. 물어보면 돼 file이라는 커맨드가 있다
file 파일이름 하면 이 파일의 타입을 알려줘
---
ls라는 명령은 /bin/ls라고 존재해.
file /bin/ls해보면?
저기 x86-64 하이라이트 내용보고 바이너리라고 알 수 있다. 64비트 cpu가 해석해서 처리할 수 있는 파일
---
ASCII파일은 선생님이 vi에디터로 파일을 만들어놓은 뒤
여기 유니코드 문자열이 있었다면 유니코드라고 나온다
---
바이너리 파일은 내용을 보는게 아니고 실행하는 것이다
텍스트파일은 알아볼 수 있고 알아볼 수 있는 문자로 돼 있다
---
ASCII text파일의 내용을 보는 명령중에 가장 유명한 애 cat
concatenate라는 뜻
cat 옵션 파일이름 파일이름 파일이름
여러개 넣어주면 연결시켜서 출력해줘서 concatenate
일반적으로는 한개 파일에 -n써서 쓴다
---
옵션은 많은데 제일 많이 쓰는게 -n
: 라인 번호를 함께 보여줘
이렇게
---
more는 cat과 비슷한데 한 페이지 단위로 보여준다
이렇게 아직 남아있다고 26%라고 알려줌
엔터를 누르면 next line
space누르면 next page
b누르면 backward(이전페이지)
q가 종료. 끝까지 다 봐도 자동종료
옵션은
+15하면 15번째 라인을 담고 있는 페이지를 출력해줘, 라인번호 보여주는건 없다
특정 문자열을 찾아서 그 문자열이 있는 페이지를 출력해줘
어딘가에 있는 페이지를 출력해줘
---
more랑 비슷한데 좀 더 기능이 많은 less
-N이 있다
리눅스의 tar gzip로 묶어놓은 형태의 파일이 있는데 이런 파일을 압축을 풀어서 보여준다. 압축 풀어주는 기능이 내장돼 있어
space enter b q 다 똑같고
메모리에 로딩될 때 그때그때 필요한 만큼만 올려서 출력
다 끝나고 자동종료되는게 아니고 q를 입력해야 종료
---
head 파일 양이 많아서 위쪽 몇줄
라인은 엔터기준이야 화면기준이 아니라
-n 3도 되고 그냥 -3도 되고
---
head 반대 tail
-f 는 follow인데 시스템 관리자가 로그파일 볼 때 많이 쓴다
/var/log 누가 시스템에 언제 접속 뭐가 실행 언제 접속해제 뭐가 종료 기록이 여기에 남는다
많은 로그파일들이 ASCII text로 돼 있어서 tail을 많이 쓴다.
일단 root로 바꿔서 /var/log/auth.log라는걸 보면
-f옵션이 이게 파일이 바뀌면 뒤에 계속 추가되는 내용을 연결해서 보여준다
이렇게 점검하며 작업
그만볼래는 컨+c
'Linux' 카테고리의 다른 글
[따배쉘] 7.Input & Output (0) 2022.09.05 [따배쉘] 6.Positional Parameters (0) 2022.09.05 [따배리] 3.vi editor (0) 2022.09.02 [따배리] 2.man, ls, mkdir, rmdir, cd, cp, mv, rm (0) 2022.08.29 [따배리] 1.디렉토리들 (0) 2022.08.28