쉘(shell)의 종류
- 운영체제 커널과 사용자 사이를 이어주는 역할
- 사용자의 명령을 해석하고, 커널에 명령을 요청해주는 역할
유닉스/리눅스 쉘 종류
- Bourne-Again Shell (bash) : GNU 프로젝트의 일환으로 개발됨, 리눅스 거의 디폴트임
- Bourne Shell (sh)
- C Shell (csh)
- Korn Shell (ksh) : 유닉스에서 가장 많이 사용됨
리눅스 기본 명령어
- 리눅스 명령어는 결국 쉘이 제공하는 명령어 임
리눅스 기본 쉘이 bash 이므로, bash에서 제공하는 기본 명령어를 히해하면 됨
리눅스 배쉬 쉘 명령어(Bash command) A to Z 인덱스
A |
alias |
명령어 별명(alias) 만들기 |
apropos |
도움 매뉴얼(Help manual) 페이지 찿기 |
apt-get |
소프트웨어 패키지(Debian) 찿기 및 설치 |
aspell |
영문철자 검사(Spell Checker) |
awk |
텍스트, 데이터베이스 정렬(sort)/유효성(validate)/인덱스(index) 찿기 및 대체하기 |
B |
bash |
셸 모드를 GNU Bourne-Again SHell로 바꾸기 |
bc |
계산기 |
bg |
백그라운드(background)로 보내기 |
builtin |
builtin 셸 실행 |
bzip2 |
지정된 파일이름으로 압축 또는 압축해제 |
C |
cal |
달력(calendar) 출력 |
case |
조건부로 명령어 실행 |
cat |
지정 파일 내용 출력 |
cd |
작업 디렉터리(Directory) 변경 |
cfdisk |
파티션 테이블(Partition table) 조정 |
chgrp |
파일/디렉터리 그룹 소유권(group ownership) 변경 |
chmod |
파일/디렉터리 접근 권한(access permission) 변경 |
chown |
파일 소유자(owner ) 및 그룹 변경 |
chroot |
다른 루트 디렉터리(root directory) 갖는 명령어 실행 |
chkconfig |
시스템 서비스(runlevel) |
cksum |
CRC checksum 및 byte counts 프린트 |
clear |
터미널 스크린(terminal screen) 지우기 |
cmp |
2개 파일 비교 |
comm |
줄 단위러 2개의 정렬된 파일 비교하기 |
command |
셀 함수 무시하고 명령어 실행하기 |
cp |
1개 또는 다수 파일들을 다른 위치에 복사하기 |
cron |
실행 예약된 명령어들을 실행하는 데몬(Daemon) |
crontab |
지정시간에 특정 명령어가 반복적 실행되도록 설정 |
csplit |
파일을 context-determined pieces 로 분리함 |
cut |
파일을 여러 부분으로 나눔 |
D |
date |
날짜 및 시간 변경 및 출력 |
dc |
탁상 계산기(Desk Calculator) |
dd |
지정한 블록 크기 만큼 파일 복사 |
ddrescue |
데이터 복구(Data recovery) 도구 |
df |
빈 디스크(free disk) 영역 출력 |
diff |
2개 파일들 간 차이점 출력 |
diff3 |
3개 파일들 간 차이점 출력 |
dig |
DNS 색인(lookup) 출력 |
dir |
디렉터리 내용 간략 출력 |
dircolors |
`ls' 에 대한 컬러 설정 |
dirname |
full pathname 을 path 로 변경 |
dirs |
remembered directories 목록 출력 |
dmesg |
kernel & driver 메시지 출력 |
du |
파일 공간 사용량 출력 |
E |
echo |
스크린에 메시지 출력 |
egrep |
확장 표현(extended expression)과 일치하는 줄을 갖는 파일 찿기 |
eject |
제거 가능 미디어(CD, DVD) 빼내기 |
enable |
내장 셸 명령어(builtin shell commands) 인에이블 또는 디스에이블 하기 |
ethtool |
이더넷 카드(Ethernet card) 설정 |
eval |
여러 명령어/인자(argument) 평가 |
exec |
명령어 실행 |
exit |
셸 종료 |
expand |
탭(tabs) 문자를 공백(spaces) 문자로 변환 |
F |
fdformat |
Low-level format a floppy disk |
fdisk |
파티션 테이블 설정 |
fg |
잡(job)을 포어그라운드(foreground)상태로 보냄 |
fgrep |
지정 문자열과 일치하는 줄을 가진 파일 찿기 |
file |
파일 타입 결정 |
find |
요구 조건 일치 파일 찾기 |
fmt |
문단 문장(paragraph text) 재 포맷 |
fold |
지정된 너비에 맞게 텍스트 줄 바꿈 |
format |
디스크 또는 테이프 포맷하기 |
free |
메모리 사용량(memory usage) 출력 |
fsck |
File system consistency 체크 및 수정 |
ftp |
File Transfer Protocol 실행 |
fuser |
지정 파일을 액세스하는 프로세스를 종료/ 확인 |
G |
gawk |
파일 내에 있는 지정 텍스트 찾기 및 대체하기 |
grep |
주어진 패턴(pattern)과 일치하는 줄이 있는 파일 찿기 |
groups |
사용자가 속한 그룹 출력 |
gzip |
지정된 파일 이름으로 압축/압축해제 |
H |
hash |
인수의 전체 경로 이름을 기억 |
head |
파일의 첫 부분 출력 |
history |
명령어 사용 히스토리 출력 |
hostname |
시스템 이름(system name) 출력 또는 설정 |
I |
id |
사용자 및 그룹 id 출력 |
ifconfig |
네트워크 인터페이스(network interface) 구성하기 |
ifdown |
지정된 네트워크 인터페이스 사용 중지 |
ifup |
지정된 네트워크 인터페이스 재 사용 |
install |
파일 복사 및 속성 설정하기 |
J |
join |
공통 필드(common field)에 줄(line)들 조인하기(Join) |
K |
kill |
Stop a from 실행 중인 프로세스(running process) 종료 |
killall |
지정된 이름의 프로세스 종료 |
L |
less |
한번에 한 화면씩 결과 출력 |
let |
셸 변수(shell variables)에 연산 수행 |
ln |
파일들간 심볼릭 링크(link) 만들기 |
local |
변수(variables) 생성 |
locate |
파일 찾기 |
logname |
현재 로그인명(login name) 출력 |
logout |
로그인 셸(login shell) 종료 |
look |
Display lines beginning with a given string |
lpc |
라인 프린터(Line printer) 제어 프로그램 |
lpr |
라인 프린터(Line printer) 끄기 |
lprint |
파일 인쇄하기 |
lprintd |
인쇄 작업(job) 중단하기 |
lprintq |
프린트 큐(print queue) 목록 출력 |
lprm |
프린트 큐(print queue) 내 작업 삭제하기 |
ls |
파일에 대한 정보 나열하기 |
lsof |
열려있는 파일(open file) 나열하기 |
M |
make |
프로그램 그룹들의 재 컴파일(Recompile) |
man |
도움 메뉴얼 |
mkdir |
새로운 디렉터리 만들기 |
mkfifo |
FIFOs(named pipes) 만들기 |
mknod |
블록(block) 또는 문자(character) 장치 파일 만들기 |
more |
한번에 한 화면씩 결과 출력 |
mount |
파일시스템(file system) 마운트(Mount)하기 |
mtools |
MS-DOS 파일 조작 |
mv |
파일 또는 디렉터리 이동 또는 이름 재설정(rename) |
mmv |
대단위 이동(Mass Move) 및 파일 이름 재설정(rename) |
N |
netstat |
네트워킹 정보(Networking information) |
nice |
명령어 또는 작업(job)의 우선순위(priority) 설정 |
nl |
파일 내에 줄 번호(line number) 쓰기 |
nohup |
로그 아웃 후 백그라운드 명령 계속 실행하기 |
nslookup |
인터넷 네임서버(Internet name servers)와 대화형 질의 후 DNS 정보와 연관된 도메인 정보를 확인 |
P |
passwd |
사용자 암호(user password) 변경 |
paste |
파일들의 줄(lines) 병합 |
pathchk |
파일명 이식성(file name portability) 체크하기 |
ping |
네트워크 연결(network connection) 시험하기 |
popd |
현재 디렉터리의 이전 값 복구하기 |
pr |
인쇄할 파일 준비 |
printcap |
capability database 출력 |
printenv |
환경 변수(environment variables) 출력 |
ps |
프로세스 상태(Process status) 출력 |
pushd |
현제 디렉터리(current directory) 저장 후 변경 |
pwd |
현재 작업 디렉터리(Working Directory) 출력 |
Q |
quota |
디스크 사용량 및 제한값 출력 |
quotacheck |
디스크 사용을 위한 파일 시스템을 스캔 |
quotactl |
디스크 할당량(disk quotas) 설정 |
R |
ram |
ram 디스크 장치 |
rcp |
두 시스템 간 파일 복사 |
reboot |
시스템 재 부팅(Reboot) |
renice |
실행중인 프로세스의 우선 순위 변경 |
remsync |
이메일을 통한 원격 파일들의 동기화(Synchronize) |
rev |
파일의 행을 역순으로 |
rm |
파일 삭제하기 |
rmdir |
디렉터리 삭제하기 |
rsync |
파일 트리 동기화(Synchronize file trees)된 원격 파일 복사 |
S |
scp |
Secure copy (remote file copy) |
sdiff |
대화 형으로 두 파일을 병합 |
sed |
Stream Editor |
select |
키보드 입력(keyboard input) 받아들이기 |
seq |
숫자 시퀀스를 인쇄 |
sftp |
Secure File Transfer Program |
shutdown |
시스템 종료(Shutdown) 또는 linux 다시 시작하기 |
sleep |
특정 시간 동안 지연하기 |
slocate |
파일들 찾기 |
sort |
텍스트 파일들 정렬(Sort) |
split |
파일을 특정 크기 조각으로 분리함 |
ssh |
Secure Shell client (remote login program) |
strace |
시스템 콜(system calls) 및 시그널(signals) 추적 |
su |
사용자 ID 대체 |
sudo |
다른 사용자로 명령어 실행하기 |
sum |
파일의 체크섬(checksum) 출력 |
symlink |
파일에 대한 새로운 이름 생성 |
sync |
메모리와 디스크 데이터 동기화 |
T |
tail |
파일의 끝 부분 출력 |
tar |
테이프 아카이브(Tape ARchiver) |
tee |
결과(output)를 다수 파일로 보내기 |
time |
프로그램 실행시간 측정 |
times |
사용자 및 시스템 시간 |
touch |
파일의 타임스탬프(timestamps) 변경 |
top |
시스템에서 실행되는 프로세스(processes) 목록 출력 |
traceroute |
호스트(Host) 까지 경로 추적 |
tsort |
위상 정렬(Topological sort) |
tty |
표준입력(stdin)에서 터미널의 파일명 출력 |
type |
명령어 설명 |
U |
ulimit |
사용자 자원(resources) 제한 |
umask |
사용자 파일 생성 마스크(Users file creation mask) |
umount |
장치(device) 마운트 제거 |
unalias |
가명(alias) 제거 |
uname |
시스템 정보 출력 |
unexpand |
공백(spaces)을 탭(tab)으로 변환 |
units |
한 척도(scale)를 다른 것으로 변환 |
unset |
변수(variable) 또는 함수명(function name) 삭제 |
unshar |
쉘 아카이브 스크립트(shell archive scripts) 압축풀기 |
useradd |
사용자 계정(user account) 생성 |
usermod |
사용자 계정(user account) 수정 |
users |
현재 로그인된 모든 사용자 목록 출력 |
uuencode |
이진 파일(binary file)로 인코딩 |
uudecode |
uuencode 로 생성된 파일 디코딩 |
V |
v |
디렉터리 내용 목록 출력(`ls -l -b') |
vdir |
디렉터리 내용 목록 출력(`ls -l -b') |
vi |
텍스트 편집기(Text Editor) |
vmstat |
가상 메모리(virtual memory) 통계정보 출력 |
W |
watch |
프로그램을 주기적으로 수행하고 출력함 |
wc |
바이트, 워드 및 라인 수 출력 |
whereis |
명령어의 모든 알려진 인스턴스 보고 |
which |
사용자 경로 내 프로그램 위치 출력 |
while |
명령어 실행 |
who |
현재 로그인된 모든 사용자명 출력 |
whoami |
현재 사용자 id 및 이름(`id –un') 출력 |
Wget |
HTTP, HTTPS 또는 FTP를 통해 파일 또는 웹 페이지 갱신하기 |
write |
다른 사용자에게 메시지 전송 |
X |
xargs |
Execute utility, passing constructed argument |
Y |
yes |
인터럽트 발생시까지 문자열(string) 출력 |
기타
|
. |
현재 쉘에서 명령 스크립트 실행 |
### |
주석(Comment)처리 |