(Linux) 리눅스 쉘 명령어
리눅스 쉘 명령어 정리
쉘(shell)
사용자와 컴퓨터 하드웨어 또는 운영체제간 인터페이스
- 사용자의 명령을 해석해서 커널에 명령을 요청해주는 역할
- 관련된 시스템 콜을 사용해서 프로그래밍이 작성되어 있다
프로세스
실행중인 프로그램
whoami
로그인 한 사용자 id를 알려준다
$ whoami
root
- root : 슈퍼관리자 id
파일 권한 변경
$ chmod 400 example.pem
- 해당 디렉토리에 있는 모든 파일의 권한 변경
$ chmod -R 777 direcotry
파일 보기
$ cat example.txt
- 앞부분의 10줄을 보여줌
$ head example.txt
리다이렉션
$ ls -al > test.txt # test.txt에 ls-al에 있는 모든 내용이 저장
- txt파일에 붙여넣기 식으로 내용을 넣는다
$ ls -al >> test.txt # test.txt안에 있는 내용 다음에 ls -al 내용이 들어간다
파이프
$ ls -al | grep bash # bash의 단어가 들어간 라인을 출력한다
$ ps aux | grep bash # 리눅스에서 실행되는 프로그램 중 특정 프로그램인 bash를 찾는다
kill
$ kill -9 프로세스id
cp
- 파일 복사
$ cp A B # A파일을 B파일로 복사
- 하위 폴더에 있는 모든 파일을 포함해 복사한다
$ cp -rf * 폴더명
하드링크 : ln A B
A와 B는 동일한 파일을 가리킨다. 즉 동일한 파일을 가진 이름을 하나 더 만드는 것 A파일을 수정하면 B파일도 수정된다 A파일을 지운다고 B파일이 지워지지는 않는다
$ ln A.txt B.txt # A의 내용이 담긴 B.txt파일이 생성
소프트(심볼릭)링크 : ln -s A B
바로가기와 동일하다. A에 대한 링크를 만들었을때 A를 지우게 되면 B의 내용도 지워진다
$ ln -s A.txt B.txt
우분투 패키지 관리
패키지 정보 업데이트(패키지 업데이트 버전 정보 등)
$ sudo apt-get update
패키지 업그레이드(함부로x)
$ sudo apt-get upgrade
패키지 설치
$ sudo apt-get install 패키지명
패키지 삭제(설정파일 제외)
$ sudo apt-get remove 패키지명
패키지 삭제(설정파일 포함)
$ sudo apt-get --purge remove 패키지명