Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Archives
Today
Total
관리 메뉴

tjddndk17

Linux 정리 본문

개발/Linux

Linux 정리

뚜루루또또 2021. 6. 17. 12:37

리눅스 명령어는 커맨드라인 인터페이스 에서 이루어집니다.

그리고 터미널, 셸등과 같은 단어들과 혼용되어 사용됩니다.

 

커맨드라인 인터페이스?

  • 구체적인 실체가 없는 추상적인 단어
  • 문자열을 출력하거나 입력하는것만 가능
  • 문자열로만 이루어진 인터페이스

터미널?

  • 커맨드라인 인터페이스가 물리적/가상적 으로 구현된 기계
  • 입력과 출력이 가능한 하드웨어 장비를 의미
    ( 현재 시점에서는 물리적 하드웨어를 소프트웨어로 구현 -> 가상터미널이 정확한 표현  ) 
  • 여러가지 프로그램이 있음

셸?

  • 커맨드라인 인터페이스로 구현된 터미널에서 실행가능한 대화형 프로그램
  • REPL(read - eval - print - loop)이라고도 이야기됨
  • 셸에는 다양한 종류가 있음 ( Bash셸은 리눅스 환경에서 표준이라 할 수 있음 )

3개의 단어는 구분이 되긴하지만 실제로는 구분없이 사용하는 경우가 더 많습니다.


  • 리눅스에서 사용되는 명령어는 모두 대소문자를 구분합니다
  • 리눅스에는 3가지 타임스탬프가 있습니다   
    - atime: 최종접근시간
    - mtime: 최종수정시간   
    - ctime: 최종상태변경시간
  • 옵션이 문자 하나인 경우 '-' 사용 ( 예외 있음 )
  • '-' 에는 여러개의 옵션을 한 번에 지정 가능 ( ex: -ab 는 -a -b와 같습니다 )
  • 옵션이 두 글자 이상의 문자열인 경우 '--' 사용 ( 예외 있음 )
  • 비상 탈출 버튼 ( ctrl + c / ctrl + d / ctrl + \ / ctrl + z )
  • 포그라운드(foreground) : 현재 터미널에서 입력을 받고있는 프로세스
  • 백그라운드(background) : 보이지 않는 뒷편에서 실행중인 프로세스
  • 표준입출력
  • 입출력에는 3가지가 있습니다
    - STDIN(0) : 표준 입력
    - STDOUT(1) : 표준 출력
    - STDERR(2) : 에러 출력
  • 2>&1
    - STDERR의 내용을 STDOUT으로 보내줍니다 
  • .으로 시작하는 파일들은 숨겨져있는 파일로 취급

★ 리눅스 명령어는 다중으로 실행 시킬수 있습니다.

 

세미콜론(;)

단순히 앞의 명령어부터 순차적으로 실행합니다

$ mkdir test; cd test
# test디렉터리를 만든후 test디렉터리로 이동합니다

 

앰퍼샌드(&)

앞의 명령어는 백그라운드로 실행하고, 즉시 뒤의 명령어를 실행하게 됩니다

$ mkdir test & cd test
# test디렉터리가 만들어지기 전에 뒤의 명령어가 실행되어 실패하게 됩니다

 

버티컬바(|)

앞의 명령어의 실행결과를 뒤의 명령어의 입력으로 넘기는 기능을 합니다

$ ls | grep test
# ls명령어를 통해 출력되는 파일 목록중에서 test가 포함된 파일만 출력

 

더블 앰퍼샌드(&&)

앞에 있는 명령어가 실패하면 뒤에 있는 명령어는 실행하지 않습니다

$ mkdir test && cd test
# 권한이 없는 이유등으로 test디렉터리를 만든는데 실패하면 cd명령어가 실행될 이유가 없습니다

 

더블 버티컬바(||)

앞에 있는 명령어가 성공하면 뒤에 있는 명렁어를 실행하지 않습니다

$ rm test.txt || sudo rm test.txt
# 앞의 rm명령어로 삭제가 되었으면 뒤의 rm명령어는 실행될 이유가 없습니다

 

'개발 > Linux' 카테고리의 다른 글

Linux 명령어 정리  (0) 2021.05.11
Comments