티스토리 뷰

SYSTEM/LINUX

6) Basic Command2

chrisysl 2018. 2. 15. 20:09

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] 명령어 입력 후 탐색기 창에서 다운받을 경로 선택



예제파일 : 

cut_test.txt

sort_test1.txt

sort_test2.txt






먼저 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
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함