ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [따배리] 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
Designed by Tistory.