티스토리 뷰
touch
- 기존 파일의 최종 수정시간(modify time)을 변경할 때 사용한다.
- 파일이 존재 하지 않을 경우 0바이트 크기의 빈 파일을 생성한다.
# 위와같이 표시된 파일 수정시간을 변경 할 때 사용.
#> touch [option] [file]
-t [timestamp] CCYY년 MM월 DD일 hh시 mm분 ss초
timestamp 형식 : [[CC]YY]MMDDhhmm[.ss]
ex) #touch -t 201707181010 [file]
ex) #touch -t 170718101010 [file]
#> touch -t 201707181010 touch_test
#> touch touch-file-l
입력시 없던 파일에 touch 명령을 입력하므로 크기가 0인 파일이 만들어 졌다.
date
- 시스템 시간 확인 및 수정
ex) #date
ex) #date -s "2017-07-18 09:30"
ex) #date -s "12:30
ex) #date -s "20181010"
#> date
입력시 현재 시스템에 입력된 날짜와 시간 출력
#> date -s "날짜 시간" 으로 현재 시스템의 시간 변경
#> date -s "시간" 입력시 날짜 그대로 유지된 채 시간만 변경됨
#> date -s "날짜" 입력시 시간은 0으로 초기화 된 채 입력한 날짜로 변경됨.
시스템 사용자 중 루트사용자만이 시간 변경이 가능하다. 서버 운영 및 유지 차원에서 시간은 상당히 중요한 역할을 하기 때문에
일반 사용자는 변경이 불가능. 따라서 root계정에서만 -s 옵션을 이용해 시간 변경이 가능하다.
cal
- 달력 출력
ex) #cal
ex) #cal [year]
ex) #cal [month] [year] // 특정년도 특정 월의 달력을 보고싶을때
which
- 명령어(실행파일)경로 및 alias 확인
#> which [file]
ex) #which ls
ex) #which cp
ex) #which shutdown
# which 명령어로 실제 원본 경로를 확인 가능하다.
color가 auto로 지정되어 있어서 디렉토리, 파일 등등 다른 색으로 표현해준다.
cat (conCATenate)
- 파일 내용을 화면에 연속으로 출력
- 실제 특정 파일 안에 어떠한 내용이 있는지 알아볼 때 사용
#> cat [option] [file]
[option]
-b : 공백라인을 제외한 글자가 있는 모든 라인에 번호를 붙여 출력한다.
-n : 공백라인을 포함하여 모든 라인에 번호를 붙여 출력한다
ex) #cat /etc/resolv.conf
ex) #cat /var/log/messages
ex) #cat -n /etc/services
ex) #cat -b /etc/login.defs
nl (Number Line)
- 파일에 행 번호를 붙여 출력
- cat -n [file] 과 유사하다
#> nl [file]
ex) #nl /etc/passwd
ex) #nl /etc/resolv.conf
more
- 화면 단위로 파일 내용 출력
- cat 의 명령어로는 한번에 10000줄 이상의 내용이 쏟아져 나와 실제 가독성이 떨어지는데
- 그런점을 보완하여 나온 명령어.
#> more [file]
space bar - 다음화면 출력
q - 종료
# 하단에 전체 내용의 퍼센트가 표시되고 엔터키는 한줄씩, 스페이스바는 한 페이지씩 넘겨 다음내용으로 넘어갈 수 있다.
종료는 q를 누른다.
head
- 파일의 내용 중 첫 10줄 출력 (default 값)
#> head -[#] [file]
ex) #head /etc/passwd //10줄 출력 (디폴트값)
ex) #head -1 /etc/passwd //1줄 출력
ex) #head -3 /etc/passwd //3줄 출력
tail
- 파일의 내용중 마지막 10줄 출력
#> tail -[#] [file]
-f : 실시간으로 파일의 내용을 확인
ex) #tail /etc/passwd
ex) #tail -15 /var/log/messages
ex) #tail -f /var/log/secure
# secure 라는 로그파일은 서버에 접속하고 접속을 중단한 모든 내용들이 기록되는 파일인데,
tail 명령어에 -f 옵션을 선택해서 실시간으로 접속하고 접속을 중단한 모든 기록을 확인 할 수 있다. 나중에 자주 쓰이게 된다.
종료시에는 Ctrl + C
sort
- 파일내의 내용을 알파벳 순서대로 정렬
#> sort [option] [file]
-n : 숫자를 기준으로 정렬
-r : 역순으로 정렬
-u : 중복행 제거 (#uniq)
-o : 출력 결과를 파일로 저장
#sort sort_test2.txt
#sort -u sort_test2.txt
#sort -n sort_test1.txt
#sort -nr sort_test1.txt
#sort -n sort_text1.txt -o out_test
원활한 sorting 실습을 해보기 위해서 예제가 필요한데, 이를 불러올 수 있도록 파일 전송 패키지를 설치하자.
#yum -y install lrzsz // 파일 전송 패키지 설치
# 아래와 같이 Complete! 가 등장하면 성공적으로 설치 된 것이다.
설치가 되면 HostOS 와 GuestOS 간의 파일전송이 가능해진다.
HostOS → GuestOS 파일 전송 방법
1. 파일을 드래그 해서 Xshell 화면에 드랍
2. #> rz 명령어 입력시 윈도우 탐색기 창이 뜨는데 거기서 파일 선택
GuestOS → HostOS 파일 전송 방법
1. #> sz [file] 명령어 입력 후 탐색기 창에서 다운받을 경로 선택
예제파일 :
먼저 HostOS → GuestOS 전송하는법을 알아보자
드래그 앤 드랍으로 Xshell 창에 해당 파일들을 올려놓으면 자동으로 인식이 된다.
이 파일들을 cat 명령어로 내용들을 확인해보자.
# sort_text1.txt 는 앞에 숫자가 선행되어있고, 2번쨰 파일은 영어단어만 나열되어있다.
이 파일들을 sorting 해보자.
# 정렬이 된 것을 볼 수 있다.
# -u 옵션을 사용하면 중복행이 제거되어 나타난다.
# -n 옵션을 사용하여 소팅하면 숫자를 기준으로 정렬을 진행해준다.
# 역순으로 정렬도 가능하다.
참고로 보여지는 출력의 결과만 정렬 된 채 출력되는것이지, 원본의 파일 자체가 정렬이 되는게 아니다.
따라서 정렬 한 채로 파일을 저장하려면 -o 옵션을 이용하여 새로운
# -o 옵션을 이용해서 새로운 파일로 저장했다.
아래의 과정은 root디렉토리에 있던 파일들을 practice 디렉토리로 옮기는 과정.
# 다음과같이 정렬 된 채 저장되어있음을 확인 할 수 있다.
cut
- 필드 잘라내기
#> cut [option] [file]
-c : 잘라낼 글자 위치를 지정 //독립적으로 사용 가능
-f : 잘라낼 필드를 지정 //함께 사용해야 함
-d : 필드와 필드를 구분하는 문자를 지정 (기본은 Tab) //함께 사용해야 함.
# 먼저 cat 으로 안에 내용을 살펴보자.
#> cut -c 1 cut_test.txt 라면 첫번째 열을 잘라내서 출력한다
#> cut -c 5 의 경우 다섯번째 열을 잘라내서 출력한다.
#> cut -c 1-3 의 경우 첫번째 부터 세번째 열을 잘라내서 출력.
#> 1,6,9 와 같이 입력하면 연속되지 않은 해당 열을 출력해준다.
# cut 을 이용한 출력 예시
# /etc/passwd 파일은 사용자계정들에 대한 정보를 가지고 있는데, 이 파일 또한 ":" 를 구분자로하여 저장하고 있다.
따라서 cut을 사용하여 사용자 계정명만 확인 할 수 있다.
'SYSTEM > LINUX' 카테고리의 다른 글
8) Link (0) | 2018.02.21 |
---|---|
7) Grep&Regular-Expression (0) | 2018.02.17 |
5) Basic Command1 (0) | 2018.02.14 |
4) Bash Shell (0) | 2018.02.12 |
3) 리눅스 구조 (0) | 2018.02.09 |