반응형

unix 30

[유닉스] 필드 잘라내기 ( cut )

cut 파일의 선택된 필드를 추출 형식 : cut [옵션] [파일] 옵션 -c 리스트 : 각 행에서 잘라낸 문자의 위치를 지정 -f 필드번호 : 지정한 필드를 잘라냄 -d 문자 : 필드 구분자 사용 예 cut –c 1-3 test cut –f 3 test 문자 추출 : -c 예제 파일 만들기 cut 명령은 탭으로 구분되어야 다른 필드로 인식 $ cp test_sort2 test_cut $ cat test_cut 001 Hong Gil-Dong 80 M 002 Park Ji-Sung 76 M 003 Cha Doo-Ri 90 M 004 Park Chan-Ho 88 M 005 Kim Yun-A 50 F 006 Bae Sue-Ji 48 F 007 Han So-Ri 49 F $ 파일에서 원하는 문자열 추출 5번째..

[유닉스] 중복 삭제 ( uniq )

uniq 중복 행을 삭제 형식 : uniq [옵션] [파일] 옵션 -c : 각 행 처음에 중복 횟수를 출력 -d : 중복된 행 중 한 행만 출력. 원래 유일했던 행은 삭제 -u : 중복되지 않는 행만 출력 사용 예 uniq test uniq –c test 중복 제거 예제 파일 만들기 $ cat test_uniq aaaaa abcde abcde bbbbb abcde bbbbb bbbbb abcde ccc $ uniq 명령을 옵션 없이 실행한 결과 인접한 행의 중복은 제거, 전체 중복은 확인하지 못함 해결 방법은 sort와 결합하는 것 $ uniq test_uniq aaaaa abcde bbbbb abcde bbbbb ccc $ $ sort test_uniq | uniq aaaaa abcde bbbbb cc..

[유닉스] 분할 ( split )

split 큰 파일을 일정한 크기를 가진 여러 개의 작은 파일로 분할 옵션을 지정하지 않으면 1000행씩 분할 형식 : split [옵션] [파일명] 옵션 : -b n : 크기가 n 바이트인 파일로 분할 -n : n행씩 분할 사용 예 split test split –50 test 행을 기준으로 파일 분할 test_split 파일을 30행씩 나누는 방법 $ cp /ets/group test_split $ wc –l test_split 67 test_split $ split –30 test_split $ wc –l x* 30 xaa 30 xab 7 xac 67 total $ 바이트를 기준으로 파일 분할 test_split 파일을 512바이트씩 분할 512바이트인 파일 xaa와 423바이트인 파일 xab 생성..

[유닉스] 파일 정렬 ( sort )

sort 텍스트로 된 입력 내용을 정렬하여 화면에 출력 형식 : sort [옵션] [파일] 사용 예 sort test sort –fd test sort –k 2 –nr –o sort.out test 기본 정렬 sort 명령을 옵션 없이 이용하면 환경 변수 LC_COLLATE의 값에 따라 다르게 정렬됨 LC_COLLATE가 없으면 LANG 값에 따라 정렬 순서가 달라짐 현재 환경 변수의 설정값은 env와 grep 명령으로 확인 영문 유니코드로 설정되어 있음을 나타냄 정렬 순서 : 공백 문자, 특수 문자, 숫자, 영문자의 순 (영문자는 대소문자 구분하지 않음) $ env | grep LC_COLLATE $ env | grep LANG LANG=en_US.UTF-8 $ $ vi test_sort $ cat t..

파일 및 디렉토리 검색 ( wc, ,grep, egrep, fgrep )

wc 파일의 행 수, 단어 수, 문자 수를 출력 형식 : wc [옵션] 파일명 옵션 -c : 바이트 수 -m : 문자 수 -C : -m과 동일 -l : 행 수 -w : 공백 문자나 새로운 행으로 구분된 단어의 수 사용 예 wc –l test2 wc –cw test2 파일의 기본 정보 보기 라인 수 6, 단어 수 7, 바이트 수 61 $ vi test.c $ cat test.c #include main() { printf(“Hello, World~!\n”); } $ wc test.c 6 7 61 test.c $ 파일의 바이트 수와 문자 수 보기 : -c, -m 옵션 옵션을 지정하지 않으면 바이트 수가, -m 옵션을 지정하면 문자 수가 출력됨 영어는 문자 수와 바이트 수가 같고, 한글은 다름 $ wc –c ..

[유닉스] 파일 아카이브 - .gz 파일, .zip 파일, .bz2 파일

gzip/gunzip gzip 명령으로 파일을 압축하여 .gz 파일을 생성할 수 있고, gzip 또는 gunzip 명령을 이용하여 압축을 풀 수 있다. 압축하기 : gzip 지정한 파일을 압축해 파일이름.gz 파일 생성 압축 효율이 좋음 형식 : gzip [옵션] 파일명 옵션 -d : 파일 압축을 해제 -l : 압축된 파일의 정보를 보여줌 -r : 하위 디렉토리로 이동하여 파일 압축 -t : 압축 파일 검사 -v : 압축 정보를 화면에 출력 -g : 최대한 압축 사용 예 gzip test1.txt gzip –v test2.txt test3.txt $ gzip test1.txt $ ls test1.* test1.txt.gz $ -d 옵션을 사용해 압축 파일 복원 가능 -l 옵션을 사용해 압축 파일에 대한 ..

[유닉스] 파일 압축하기(compress), 압축풀기(uncompress)

압축하기 : compress 파일을 압축 가장 오래된 압축 유틸리티 형식 : compress [옵션] 파일명 옵션 -f : 강제 압축 -c : 압축 결과를 화면에 출력 (.Z 파일은 생성이 안 됨) -V : 압축 정보를 화면에 출력 사용 예 : compress test1.txt $ compress test1.txt $ ls test1.* test1.txt.Z $ 사용 예 : compress –v test2.txt test3.txt $ compress –v test2.txt test3.txt test2.txt: -- replaced with test2.txt.Z Compression: 15.83% test3.txt: -- replaced with test3.txt.Z Compression: 15.83% $..

[유닉스] 파일 아카이브 - tar 파일, .Z 파일

파일 아카이브 아카이브 : 보관소, 저장소 파일 아카이브 : 파일을 묶어 하나로 만든 것 과거 : 여러 파일이나 디렉토리를 묶어 이동식 저장 장치에 보관하기 위해 사용되었음 다른 시스템과 파일을 주고받거나, 백업을 하기 위해 아카이브 파일 생성 기존 아카이브에서 파일을 추출 tar(tape archive) 파일과 디렉토리를 묶어 하나의 아카이브 파일 생성 형식 : tar 기능[옵션] [아카이브 파일] 파일명 기능 키 기능 키 앞에는 ‘–’ 기호를 사용하지 않아도 됨 옵션 옵션 사용시 기능키와 결합하여 사용하며, ‘–’ 기호를 사용하지 않아도 되지만, 인자값이 있는 옵션을 여러 개 지정하는 경우에는 – 기호를 사용해야 함 사용 예 tar cvf unix.tar Unix tar xvf unix.tar 아카이..

[유닉스] 파일 시스템 마운트 와 복구

파일 시스템 마운트 유닉스 시스템은 주변장치를 파일로 취급 마이크로소프트의 윈도우즈에서는 장치들이 시스템 부팅 시 자동으로 인식되거나, 새로 연결한 하드웨어도 PnP(Plug and Play) 기능에 의해 자동 인식됨 유닉스는 주변장치 사용을 위해 시스템 부팅 후 mount 명령을 이용해 수동으로 작업. 작업 후 umount시켜야 함 마운트 : 특정 장치를 특정 디렉토리처럼 사용하기 위해 장치와 디렉토리를 연결하는 작업 mount 명령의 일반 형식 -a 옵션은 /etc/fstab에 명시된 모든 파일 시스템을 마운트할 때 사용 -o 옵션은 특별한 옵션들을 지정할 때 사용 mount –a [-fnrvw] [-t 파일 시스템 타입] [-O optlist] mount [-fnrvw] [-o options] de..

[유닉스] 디스크 사용 정보, df 명령어, du 명령어

df (disk free) 명령어 파일 시스템의 사용 중이거나 사용 가능한 디스크 공간에 대한 정보를 출력 디스크의 크기, 사용량, 남아있는 용량 등 형식 : df [옵션] 옵션 $ df Filesystem 1k-blocks Used Available Use% Mounted on /dev/sda1 7608792 338004 3819240 47% / udev 244040 4 244036 1% /dev ...... $ 특정 장치에 대한 사용량만을 보고 싶다면 알고 싶은 장치의 이름을 써주면 됨 $ df /dev/hda1 Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda1 14749280 1448544 13300736 10% /windows $ du ..

반응형