1. 디렉토리 및 파일 관련명령어
(1) 위치확인명령어
① pwd : 현재 작업 디렉토리 위치보기
② cd: 작업 디렉토리 이동하기
cd~ 또는 cd[return] : 자신의 홈디렉토리로 이동
cd / : 루트 디렉토리로 이동
cd “My documents” : 공백이 있는 디렉토리로 이동할 때, “” 사용
③ tty : 현재 로그인되어 있는 터미널의 장치 이름 보기
(2) 매뉴얼출력
① man : 주어진 명령이나 유틸리티의 매뉴얼 출력
man [옵션] 명령/유틸리티명
-a : 모든 manual page 출력
-d : 디버깅 정보 출력
-f : whatis와 같음
-h : 도움말 출력
-k : apropos와 같음
-t : groff(troff)를 사용하여 프린트를 위한 형식으로 출력
(3) ls 명령어사용법
① ls [옵션] [파일명]
-a : dot(.)으로 시작하는 파일을 포함한 모든 파일 출력
-c : 변경 시간 순서로 표시
-C : 다중 column으로 표시
-d : 디렉토리 이름만 표시
-F : 이름 끝에 파일 형식 표시
-l : long format으로 표시 (파일의 소유권자, 소유자, 속한 그룹, 생성/수정 일자등)
-r : 역순으로 표시
-1 : 라인당 한 파일씩 출력
-t : 수정 시간을 기준으로
-s : KB 단위로 파일의 크기를 표시
(4) 파일내용출력하거나텍스트파일생성하는명령어
① cat
cat [옵션] 파일
리다이렉션
> (n)n은 파일이나 하드웨어 장치로 여기에 명령의 결과 출력
(n) <n이라는 파일이나 하드웨어 장치 안으로부터 명령의 입력받기
>> (n)출력방향이 파일일 때 출력된 결과 내용이 파일의 뒷부분에 추가됨
cat –n name | more : 행 번호를 추가하여 한 화면씩 끊어 출력
cat A > B : A에서 출력된 내용을 B로 전달
cat A >> B : A에서 출력된 내용을 B에 추가
cat A < B: B를 A의 인자로 입력받아 전달
cat A << B: 입력의 끝을 지정
파이프: 두개 이상의 명령을 조합하여 사용할 경우
기호를 중심으로 왼쪽 명령의 결과가 오른쪽 명령어 입력 값이 된다.
cat –n name | more : 행 번호를 추가하여 한 화면씩 끊어 출력
cat /etc/lilo.conf | grep linux : linux 문자가 포함된 줄만 출력
cat /etc/lilo.conf | grep –v linux : linux 문자가 포함되지 않은 줄만 출력
(5) 파일생성및복사·삭제관련명령어
① touch 새로운 파일 생성. 액세스 시간/갱신 시간 수정
touch new_file
touch 01010836 file_name : 액세스 시간을 1월 1일 8시 36분으로 변경
② mkdir 디렉토리 생성
mkdir directory_name
-p : 경로에 따라 상위 디렉토리까지 생성
③ cp 하나 또는 그 이상의 파일이나 디렉토리 복사
cp [옵션 ] source destination
-a : 소스파일의 구성과 속성도 함께 복사
-d : 심볼릭 링크 파일을 그대로 복사
-f : 강제로 복사
-I : 존재하는 파일을 덮어쓰기 전에 물어보는 옵션
-p : 소스 파일의 소유자, 그룹, 퍼미션 등을 유지
-r : 하위 디렉토리와 파일까지 복사하는 옵션
-s : 심볼릭 링크를 만듬
-u : 목적지에 있는 파일의 타임 스템프가 같거나 새로운 경우 복사하지 않음.
-v : 복사하기 전에 그 파일 명을 보여줌
-x : 다른 파일 시스템의 서브 디렉토리는 복사하지 않음.
④ mv 파일 이동, 파일명 변경
mv [옵션] source destination
-f (force): 기존에 동일한 이름의 파일이 있을 경우 사용자에게 알려주지 않고 강제적으로 파일을 이동
-I (interactive): 기존 파일을 덮어쓰지를 질문한다
-b (backup): 기존 파일이 이미 있어 지워지는 것을 대비해 백업파일을 만듬
-v (verbose): 이동하기 전에 파일명을 보여줌
⑤ rm 파일 삭제
rm [옵션] file_name
-f (force): 사용자에게 확인하는 메시지 없이 지정한 파일을 모두 삭제
-i (interactive): 삭제하기 전에 사용자의 확인을 요구
-r,-R (recursive): 하위 디렉토리와 그 안의 파일까지 모두 삭제
-v (verbose): 각각의 파일을 지우는 정보를 자세히 보여줌
⑥ rmdir 비어있는 디렉토리를 삭제하는 명령어
rmdir [옵션] 경로
-p : 지정된 경로 모두를 삭제 (단 디렉토리가 비어있을 경우에만 가능)
⑦ file 특정 파일의 종류를 알고 싶을 때 사용
(6) 파일 내용 출력에 관한 명령어
① more 주어진 파일의 내용을 화면 단위로 출력
h |
도움말 |
b/^B |
이전 페이지 |
space/Z |
다음 페이지 |
/pattern |
검색 |
return/l |
라인 스크롤 |
= |
현재 라인 출력 |
d/^D |
반 페이지 스크롤 |
! |
명령어 실행 |
q/Q |
종료 |
^L |
화면 다시 출력 |
f |
다음 페이지 |
f:(?) |
파일명과 라인 출력 |
② less more와 비슷한 명령어로 한 페이지씩 문서로 보여줌, 문서의 앞으로도 이동이 가능함.
?: 도움말
a: 마지막 라인이 화면에 출력되고 나면 검색을 시작
c: 필요할 때 전체 화면은 다시 갱신
C: c옵션과 같지만 화면 전체를 지우고 시작
e: 두 번째로 파일의 끝에 도달하면 자동적으로 종료
i: 대소문자를 구분하여 검색
n: 행번호를 추가
q: 특정 에러가 발생하지 않으면 소리없이 동작한다.
Q: 결코 아무 소리도 내지 않는다.
s: 연속되는 공백 라인은 하나의 행으로 처리
x(숫자): 수치를 정해서 탭 간격을 조정. 기본값은 8
③ pg more, less 보다 좀 더 방대한 양의 파일 내용을 볼 때 유용하다
④ head 파일의 처음 부분을 출력
head [-행수] [파일이름]
-행수 : 출력될 행 수를 수치로 지정, default는 10
⑤ tail 파일의 끝부분을 출력
tail [-행수] [파일이름]
(7) 특정파일찾기
① find
find [경로] [옵션] 파일명
-name filename: 찾고자 하는 파일 이름 지정
-perm mod: 파일 권한이 일치되는 것 찾기
-type ?: 형태가 같은 파일 찾기
?부분에 디렉토리는 d, 파이프는 p, 심볼릭 링크는 l, 소켓은 s, 블록 파일은 b, 일반 파일은 f
-links ?: 특정 개수의 링크를 가진 파일을 찾기. ?부분에 링크의 숫자
-size n: 파일의 크기가 일치하는 것을 탐색
파일의 크기는 블록단위로 지정한 블록은 512byte로 내정되어 있지만 블록숫자 뒤에 단위로
k를 붓이면 KB크기의 블록숫자로
-user name: 파일 사용자의 id에 대해서 검색
-group name: 그룹이 소유한 파일 찾기
-atime n: n일 전에 액세스한 파일을 찾기
-mtime n: n일 전에 마지막으로 수정된 파일 찾기
-exec: 원하는 검색 조건에 맞는 파일을 찾으면 명시된 명령을 실행 명령의 끝에 \; 을 사용
find가 검색해낸 파일의 이름을 인수로 사용하고 싶다면, { } 사용
-newer: 어떤 파일보다 최근에 갱신된 모든 파일을 검색
예)
find . mtime +5 –print : 5일 이상 전에 수정된 파일
find . –type f –atime –20 –print : 20일 이하, 액세스된 파일 찾기
find . –name “[a-z]*.jpg” : 앞 글자가 영어 소문자로 된 jpg파일 찾기
(8) 파일비교명령어
① cmp
유사한 두 파일을 비교하여 처음으로 틀린 문자가 나타나는 위치만을 출력 바이트 단위 파일 비교
예) cmp file_name1 file_name2
② comm.
행단위 파일 비교하는 명령어
예) comp file1 file2
파일1에만 있는 내용 | 파일2에만 있는 내용 | 공통으로 존재하는 행
③ diff
차이를 표시
표본이 되는 문서는 두 번째 파일
예) diff [옵션] file1 file2
a (append): 파일2에서 1으로 첨가되어야 할 것
c (change): 파일의 내용이 바뀌어야 하는 내용 표시
d (delete): 파일1에서 제거되어야 하는 내용 표시
(9) 파일정보추출하는명령어
① cut
파일에서 특정필드를 추출해서 가공해야 하는 경우 사용하는 명령어
-c (문자위치): 잘라낼 곳의 글자 위치를 지정
콤마를 사용하거나 하이픈을 사용하여 범위를 지정
-f (필드): 잘라낼 필드를 지정
-d (필드구분자): 필드를 구분하는 문자를 지정. 기본값은 탭문자
-s: 필드 구분자를 포함할 수 없다면 그 행은 하지 않는다.
② wc(word counter)
파일의 정보를 추출하는 명령어
파일 내의 단어 수, 라인 수 등의 정보를 제공
라인 수 | 단어 수 | 문자 수
(10) 파일정렬/분할명령어
① sort
주어진 필드나 문자의 위치를 기준으로 파일의 행 단위로 정렬시켜준다
예) sort [옵션] 파일명
-d: 알파벳 순으로 정렬
-f: 대소문자 구분하지 않음
-c?: 숫자 순으로 정렬
-o file: 결과를 파일로 출력
-r: 내림차순으로 정렬
-c?: 이미 정렬되어 있다면 새로 정렬하지 않음
② split
하나의 파일을 여러 개의 작은 파일로 분리
옵션없이 이용하면 기본 설정으로 1000행 단위로 파일을 분리
분리된 파일의 이름은 xaa, xab, xac 등으로 나타남
예) split [옵션] 파일이름
-b size: 파일을 byte단위로 분리
-l line: 파일을 주어진 line 수 단위로 분리
-C size: 파일을 한 줄에 최대 size 바이트 만큼씩 분리
(11) 특정파일내용검색명령어
① grep
특정 단어, 문자열, 문장을 포함하는 파일 탐색
예) grep [옵션] pattern files
-c: 파일의 내용 대신 일치하는 줄 수를 출력
-e: pattern 에서 찾을 문자열 명시
-i: 대소문자 구분하지 않음
-l: pattern 을 포함하는 파일의 이름만 출력
-n: 줄 번호와 함께 출력
-r: 서브 디렉토리의 파일까지 모두 출력
-w: pattern 이 전체 단어와 일치하는 줄만 출력
-x: pattern 이 전체 줄과 일치하는 줄만 출력
예) pattern의 형식
[abc]: a, b or c
[0-9]: 0, 1, … or 9
[^1-3]: 1, 2, 3을 제외한 모든 문자
‘^pattern’: 패턴이 줄의 처음에 있을 때에만 일치
‘pattern $’: 패턴이 줄의 마지막이 있을 때에만 일치
‘r<pattern’: 단어가 패턴으로 시작할 때에만 일치
‘patternr>’: 단어가 패턴으로 끝날 때에만 일치
(12) 날짜와달력명령어
예) date : 시스템의 현재 날짜와 시간을 보여줌
cal : 해당 달의 달력을 출력
(13) 리다이렉션명령어 / 파이프명령어
예) 명령어> file: 명령의 출력을 file에 보냄
명령어< file: file에서 명령에 입력
명령어>> file: 명령의 출력을 file에 덧붙임
명령어1 | 명령어2: 명령어 1을 실행하고 출력 결과를 명령어 2로 보냄
(14) 특정디렉토리용량확인
① du (disk usage)
예) du [옵션] 디렉토리
-b: 공백 라인을 제외한 모든 라인에 행 보호 붙임
-n: 모든 라인에 행번호 붙임
-E: 각 라인 끝에 $ 표시
-k: 현 위치, 그 이하의 모든 디렉토리를 KB 크기로 나열
-s: 총량에만 관심이 있을 경우에 사용
(15) 하드디스크의용량확인
① df (disk free)
예) df [옵션]
-a: default로 생략된 0블록 크기의 파일 시스템으로 보여줌
-i: 파일 크기를 inode로 디스크 정보
-k: KB로 표시
-T: 파일 시스템 종류
-t: fstype 값을 가진 파일 시스템에 대한 정보
-h: 쉬운 용량 표시 단위로 표시
(16) 디스크용량할당
예) quota : 디스크용량 제한
repquota : 디스크 사용 상태 검색
quotacheck : 디스크 사용 상태 스캔
quotaon/quotaoff : quota ON/OFF
(17) 파일압축및 Archive 관련명령어
① tar (tap archiver)
파일과 디렉토리를 하나의 파일로 묶어주는 아카이브를 생성하는 유틸리티
압축보다는 파일이나 디렉토리를 묶는 용도로 사용
여러 디렉토리를 묶을 수 있고 파일의 소유권과 액세스 퍼미션 등도 그대로 보존
NFS로 마운트된 원격 파일 시스템을 백업하는데 유용하지만 여러 개의 디스크에 연속해서 기록할 수는 없음
예) tar [옵션] 아카이브명.tar 디렉토리 및 파일
c (create): 아카이브 생성
x (extract): 아카이브로부터 파일을 추출
r (replace): 아카이브된 파일에 새로 추가
h: 심볼릭 링크의 모든 것을 아카이브
t (table): 목차 테이블 보기
v (verbose): 상세한 정보 출력
u (update): 최근의 파일을 아카이브
z: gzip으로 압축하여 백업
tar cvf test.tar test
tar xvf test.tar
tar rvf test.tar /usr/doc
tar uvf test.tar /usr/doc
tar cvfz test.tar.gz /usr/doc
② gzip
예) 파일 압축
gzip [옵션] 아카이브된 파일명
1v: 가장 빠르게 압축
6v: 기본값
9v: 최고의 압축율로 압축
gzip –9v test.tar
압축 해제
gzip –d 아카이브된 파일.tar
gunzip 아카이브된 파일.tar
그 외에 compress, uncompress, bzip2등이 있음.
(18) 리모트 디렉토리의 마운트 와 언마운트
① mount
mount special_device mount_point
플로피 디스크 : mount /dev/fd0 /mnt/floppy
cd-rom : mount –t iso9660 /dev/cdrom /mnt/cdrom
멀티 OS로 윈도즈가 /dev/hda1에 셋팅되어 있는 경우
mkdir /mnt/win
mount (-t vfat) /dev/hda1 /mnt/win
읽기 전용으로 마운트 : mount –r /dev/cdrom /mnt/cdrom
mount –r ext2 /dev/hdc1 /usr/local/apache
② umount
umount special_device (or mount_point)
umount /mnt/floppy(, cdrom, win)
(19) Mtools
리눅스에서 DOS로 통하는 유틸리티 모음
모든 명령어 앞에 m자를 붙인 뒤 dos 명령어와 같이 쓰면 된다.
Mcd, mcopy, mdel, mdir, mformat, mmd, mrd …
[오라클 ADD_MONTHS] (0) | 2015.03.24 |
---|---|
[JAVA] request Header 정보 확인 (0) | 2015.03.18 |
JAVA MATH 클래스 주요 메소드 (0) | 2011.01.05 |
JAVA 형변환 정리 (0) | 2011.01.05 |
자바 SimpleDateFormat 사용 예제 (0) | 2011.01.05 |