쉘 명령어

AnHyunDong·2022년 2월 16일
0

Ubuntu

목록 보기
7/9

1. 쉘 메타문자 사용

1) 경로 이름 대체 문자

  • ~ : 현재 로그인 한 사용자의 홈디렉토리
  • - : 이전 작업 디렉토리
    cd ~ #사용자 홈디렉토리로 이동
    cd - #이전 작업 디렉토리로 이동 한번 더 사용시 현재 디렉토리로 다시 이동

2) 파일 이름 대체 문자

  • * : 하나 이상의 문자를 대체하는 문자, 일반적으로 대체
  • ? : 하나의 문자만 대체
    rm -rf * #현재 위치의 파일 및 디렉토리 전부 삭제
    rm -rf ah? #3글자인데 ah로 시작하는 파일 및 디렉토리 전부 삭제

3) 인용부호 메타 문자

  • ' ' : 메타문자를 일반문자로 취급한다.
  • " " : $, `, \ 문자를 제외한 문자만 일반문자로 취급
    *tip : $는 리눅스 쉘에서 변수를 사용할 때 사용하는 문자
  • ` ` : 문자를 명령어로 인식하여 실행되게 한다.

4) 방향재지정 메타문자

  • 표준 입력 : stdin 키보드 -> 쉘

  • 표준 출력(1) :stdout 쉘 -> 모니터
    기본적인 이런 입/출력 내용을 다른 곳으로 갈 수 있도록 재지정하는 문자

  • 표준 에러(2) stderr 쉘 -> 모니터
    find / --name system 1 #오류 없이 정상 출력만 출력
    find / --name system 2 #표준 에러 출력만 출력

  • < : 표준 입력 재지정

  • > : 표준 출력 및 표준 에러를 재지정, 일반적으로 명령어의 출력 결과를 파일로 저장하거나, 네트워크로 전송할 때 사용

    echo "test" > ./file # 파일에 저장할 때
    find / -perm -4000 2> /dev/null # 정상적인 결과만 출력할 때
    find / -perm -4000 1> /dev/null # 에러 결과만 출력할 때
    find / -perm -4000 1> ./setuid_file 2> /dev/null # 정상적인 결과는 파일에 저장하고 에러는 출력하지 않을 때

    *tip : >을 한 번만 사용하면 파일의 내용을 덮어씀, >>을 사용하면 기존의 파일 내용에 이어서 씀

  • | : 파이프 문자, [명령어1] | [명령어2] 처럼 사용하며, 명령어1의 결과를 명령어2의 입력으로 사용

    ls /etc | grep rc ls
    >명령어의 결과에서 특정 문자를 포함한 라인만 뽑아 볼 때

    ls /etc | grep yum
    > ls /etc 결과 중에서 yum이 포함된 내용만 출력할 때

    ls /etc | more
    >ls /etc 결과가 너무 길어서 화면에 다 안나와 끝어서 보고싶을 때


2. 사용자 초기화 파일

1) /etc/profile

시스템 전역에 걸쳐 환경을 설정하는 파일, 모든 사용자가 적용되는 파일

2) ~/.profile

개별 사용자의 홈 디렉토리에 있는 파일, 해당 사용자가 설정을 변경할 때 사용하는 파일

3) ~/.bashrc

개별 사용자의 홈 디렉토리에 있는 파일, 해당 사용자가 쉘 관련 설정을 변경할 때 사용하는 파일

profile
사진은 남아 추억이 메모는 남아 스펙이 된다

0개의 댓글