알아야하는 리눅스 명령어 모음.
env
현재 환경 변수를 표시하거나 환경 변수를 변경한 후 프로그램을 실행하는 명령어
형식: env[옵션][변수=값..][명령[인수…]]
env 옵션
-I, --ignore-environment: 현재 환경을 무시하고 지정한 변수 값을 따름
-u, --unset name: 지정한 변수 제거
export
변수를 지정하는 명령어이며, 현재 시스템에 설정되어있는 변수 목록을 확인할 수 있음
형식: export[옵션]변수명=설정export 옵션
-f: 함수를 가리킴
-p: export 목록을 출력함
-n: export 속성을 제거함
sh,csh,ksh,bash
.sh 파일을 실행시켜주는 명령어
-sh : 벨 연구소의 스티브본 개발, 많은 쉘 스크립트의 기반이 되는 쉘
-csh : c언어 구문과 유사, sh를 확장하여 히스토리, 작업제어, 엘리어스
등 기능 추가-ksh : sh가 호환되며 csh의 많은 기능을 포함
-bash : 가장 많이 사용되는 쉘로 sh를 토대로 csh와 ksh의 기능을
통합시켜 개발
alias
긴 명령어를 간단히 줄일 때 사용명령어 옵션을 기본으로 가져갈 때 사용한다.
형식: alias 별칭[=“명령어”]
sort
텍스트로 된 파일의 행 단위 정렬을 할 때 사용하는 명령어
형식: sort[옵션][파일명]sort 옵션
-b, --ignore-leading-blanks: 공백을 무시함
-d, --dicrionary-order: 공백과 알파벳 문자의 순서 비교
-f, --ignore-case: 모든 문자를 소문자로 인식
-g, --general-numeric-sort: 숫자 값을 비교 정렬
-i, --ignore-nonprinting: 프린트 가능한 문자만 비교
-M, --month-sort: 날짜(월)”알 수 없는 값”<“JAN”<..<“DEC”
순서로 정렬
-n, --numeric-sort: 숫자를 기준으로 정렬
-r, --reverse: 결과를 역으로 출력
ps
현재 실행중인 프로세스의 목록을 보는 명령어형식: ps[옵션]ps 옵션
-e: 모든 프로세스를 출력
-f: 풀 포맷으로 보여줌(UID, PID)등
-l: 긴 포맷으로 보여줌
-p: 특정 PID의 프로세스를 보여줌
-u: 특정 사용자의 프로세스를 보여줌
top
리눅스 시스템 운용 상황을 실시간으로 모니터링 하거나 프로세스 관리를 할 수 있는 명령어형식: top[옵션..]top 실행 전 명령어
-b : 배치모드 옵션
-n : top 실행 주기를 설정
-p : process ID
top 실행 후 명령어
shift + p : CPU 사용률 내림차순
shit + m : 메모리 사용률 내림차순
shift + t : 프로세스가 돌아가고 있는 시간 순
k : kill. k 입력 후 PID 번호 작성. signal은 9
f : sort field 선택 화면 -> q 누르면 RES순으로 정렬
a : 메모리 사용량에 따라 정렬
b : Batch 모드로 작동
1 : CPU Core별로 사용량 보여줌
ps와 top의 차이점
ps는 ps한 시점에 proc에서 검색한 cpu 사용량
top은 proc에서 일정 주기로 합산해 cpu 사용율 출력
ifconfig
네트워크 인터페이스의 설정 변경 가능형식: ifconfig
fconfig 옵션
Up: 지정한 인터페이스를 활성화
Down: 지정한 인터페이스 비활성화
ping
호스트간 패킷 왕복 시간을 계산하여, 호스트의 연결성이나 동작
유무를 판단함. 만일 패킷에 대한 응답이 없을 시 호스트의 동작이나
연결에 이상이 발생했다고 판단할 수 있음형식: ping[옵션] hostping옵션
-b: 브로드 캐스트 주소로 핑을 보냄
-c count: 지정한 숫자만큼 패킷을 보냄
-f: 핑 플로딩 패킷을 보냄
-i wait: 지정한 간격으로 패킷을 보냄
-q: 패킷의 응답 정보는 출력하지 않고 통계 정보만 출력
-r: 라우팅 테이블을 이용하지 않고 직접적으로 연결된 호스트에
패킷을 보냄
-s packetsize: 보낼 패킷 크기를 지정 기본56, 최대 65,507
-v: 에코 응답과 함께 ICMP패킷의 상세 정보 출력
ssh
시큐어 쉘은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 응용프로그램 또는 그 프로토콜형식: ssh 아이디@ip/도메인 (기본 포트 22번)ssh 옵션
-F configfile: 사용자 설정 파일을 지정
-I smartcard_device: 사용자 개인 RSA 키를 저장한 디바이스 지정
-i identity_file: RSA나 DSA 인증파일 지정
-l login_name: 서버에 로그인할 사용자 지정
-p port: 서버에 접속할 포트 지정
-q: 메시지를 출력하지 않음
telnet
원경 터미널 서버에 접속하기 위한 클라이언트 명령어 (TCP/IP기반)형식: telnet[옵션][호스트[포트]]호스트 : 접속할 호스트로 인터넷 주소 형식으로 사용포트 : 접속에 사용할 호스트의 포트 지정(초기값 23번)
ftp
서버와 클라이언트 간의 파일 전송 시 사용되는 명령어형식: ftp[접속 ip][접속 포트]
sftp
ftp와 유사한 파일 전송하는 명령어로 SSH FTP를 사용하여 서버에 대한 보안 연결을 하는 명령어
형식: sftp[계정]@[ip]형식: sftp -oPort=[포트번호]@[ip]
umask
파일이 만들어질때 기본 접근권한에서 제외할 권한을
8진수로 지정하여 출력하는 명령어
형식: umask[옵션]chmod와 반대개념 (777에서 뺀다.)
chattr
파일의 속성을 설정하고 제거할 수 있는 명령어형식: chattr[옵션][+,-,=속성][파일명]chattr 옵션
-R : 현재 디렉터리 이하의 모든 디렉터리와 파일의 속성을 변환
-V : 변화된 속성의 자세한 정보를 출력
-v : 버전 정보를 출력
chattr 속성
-a : 파일을 추가 모드로만 열기
-c : 커널에 의해 디스크 상에 압축 상태로 저장
-d : dump 명령 수행 시 백업 x
-i : 파일의 수정을 방지한다.(수퍼 유저만 수정 가능)
-s : 파일이 지워질 때 일단 블록 들이 모두 0이 된 다음 디스크에 기록
-S : 파일이 수정될 때 그 변화가 디스크 상에 동기화
-u : 파일이 지워지면 내용을 저장한다.
lsattr
파일 및 디렉토리에 설정되어있는 속성을 확인하는 명령어형식: lsattr[파일명]
nm
오브젝트 파일에 포함되어있는 심볼을 출력하는 명령어형식: nm[옵션][파일명]기본 출력 형식은 bsd 형식[심볼 값] [심볼 클래스] [심볼 명]nm 옵션
-a, --debug-syms: 디버거만의 심볼을 출력
-A, --print-file-name: 모든 심볼 앞에 입력 파일의 이름을 같이 출력
-B:--format=bsd와 같음
-C, --demangle[=STYLE]: 로우 레벨 심볼 이름을 유저 레벨 이름으로
해석해서 출력
vmstat
시스템을 모니터링 하는 명령어형식: vmstat [옵션][간격][횟수]
vmstat 옵션
-t : 날짜 + 시간을 출력
-w : 출력 결과의 너비를 맞춤
-f : 부팅 후 포크된 수
-d : 디스크 상태 조회
vmstat 출력값 의미
대분류 소분류 설명 procs r 실행시간을 기다리는 프로세스 수 b 인터럽트가 되지않지만 sleep 상태인 프로세스 수 ( 대부분은 I/O 로 인해 증가합니다. ) memory swpd 가상 메모리로 사용되는 양 free 유휴메모리 양 buff 버퍼로 사용되는 메모리 양 cache 캐시로 사용되는 메모리 양 swap si 디스크에서 스왑된 메모리 양 so 디스크로 반환된 메모리 양 io bi 블록 장치에서 받아오는 블록 bo 블록 장치로 보내는 블록 system in 초당 인터럽트 수 cs 초당 문맥 전환 수
* 문맥 전환 : 이전 작업의 문맥(프로세스 상태)을 저장하고 새로운 프로세스 상태로 복구하는 작업cpu us 사용자 코드를 실행한 시간 ( 비커널 ) sy 시스템 코드를 실행한 시간 ( 커널 ) id 유휴 시간 wa 입출력 대기 시간 st 가상 머신으로 부터 뺏긴 시간
locale
현재 시스템의 설정되어 있는 국가, 언어, 숫자(현금 표기 등의), 날짜 시간 표기 형식 , 시간대 를 포함한 설정 집합형식 : locale
locale 옵션
-a: --all-locales: 사용 가능한 로케일 이름을 출력함
-c, --category-name: 사용 가능한 범주 이름을 출력함
-k, --keyword-name: 선택된 키워드 이름을 출력
-m, --charmaps: 사용 가능한 문자지도 이름을 출력함
hostname
현재의 호스트명을 보여주거나 지정한 호스트 명으로 변경 가능
형식: hostname[옵션][파일명]
hostname 옵션
-a, --alias: 별칭을 출력함
-d, --domain: 도메인명을 출력함
-F, --file파일명: 지정한 파일에서 호스트명을 설정
-f, --fqdn, --long: FQDN(fully qualified domain name)을 출력함
-I, --ip: 호스트의 ip 주소를 출력함
-n, --node: DECnet 노드명을 출력함
su
로그아웃 없이 임시로 다른 사용자의 UID,GID를 사용할 수 있음.주로 일반 사용자로 로그인하여 잠시 동안 슈퍼유저 권한의
명령어를 실행할 때 유용 (switch user)형식: su [옵션][사용자][셸변수]
su 옵션
-c COMMAND, --command=COMMAND: 상호 대화형 모드가 아닌
지정한 명령어 실행
-f, --fast: 시작 파일을 읽지 않고 실행. csh셸과 tcsh셸에만 해당
-,-l,--login: 지정한 사용자 환경으로 변경
-s: 지정한 셸을 실행
-m, -p: 이전의 환경 변수의 값을 계속 유지
login
시스템 접속을 위한 개인 설정 파일을 읽은 후 작업 환경을 설정함일반적으로 다른 시스템에 접속할 때에는 ssh혹은 telnet 명령어를 사용형식: login [옵션] [이름]
login 옵션
-f user : 이미 인증 절차를 거친 사용자라면, 지정한 user의 인증 절차를
무시하게 된다. 만일 user가 root라면 적용되지 않는다.-h hostname : 로그인을 원격 로그인(telnetd, rlogind)으로 인식하고
hostname에 로그인을 시도할 호스트의 이름을 입력한다.-p : login 실행할 때 이전 환경 등을 그대로 사용하도록 getty 명령에
의해 사용된다.
'리눅스환경 개발 > 명령어 모음' 카테고리의 다른 글
리눅스 로그인 스크립트(.login,.profile,.bash_profile) (0) | 2022.01.24 |
---|---|
리눅스 명령어 모음 1 (0) | 2022.01.19 |