ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Linux 기본 명령어
    Linux 2019. 9. 4. 13:48

     

     

    웹 프로그래머를 하다보면, 필수불가결적으로 Linux를 하게 될 경우가 있다. ( 만약 없다면, 회사의 인프라가 훌륭하거나 본인이 관심이 없는게 아닐까 싶긴한다... )

     

    무튼 본론으로 들어와서, 기본적인 apache / tomcat / source 배포하다보면, 자주쓰는 명령어들을 정리해본다.

     

     

    1. ls

    ls 는 현재 위치의 DIR(PATH)내에 존재하는 파일들의 리스트를 확인할때 사용
    
    주요 옵션으로는 
    1) ls -l : 파일들의 상세정보를 나타냅니다. 
    2) ls -a : 숨어있는 파일들도 표시합니다. 
    3) ls -t : 파일들을 생성된 시간별로(최신것 부터) 표시합니다. 
    4) ls -rt : 파일들을 오래된 시간부터 표시합니다. 
    5) ls -F : 파일을 표시할 때 마지막에 유형을 나타내는 파일명을 끝에 표시합니다. ( '/' - 디렉토리 , '*' - 실행파일 , '@' - 링크 ) 
    
    각 옵션들은 자유자재로 합성해서 사용가능합니다. 
    
    ex) ls -lrt : 파일들의 상세정보를 나타내며, 오래된 것부터 표시합니다. 
    ex) ls -arlt : 숨어있는 파일들의 정보까지 표현하며, 상세정보를 나타낸다, 오래된것부터 표시한다.

     

     

    2. cd (change directory) 

    cd 는 경로를 이동할 때 사용하는 명령어
    
    1) cd ~ : 어느 곳에든지 홈디렉토리로 바로 이동합니다. 
    2) cd .. : 상위 디렉토리로 이동합니다. 
    3) cd /dir : 절대경로 dir 로 이동할 경우 사용합니다. ( 폴더의 경로를 알게된다면, cd /home/apps 등 절대경로를 입력하면 됩니다. )
    4) cd - : 이동하기 바로전의 디렉토리로 이동합니다. ( 잘못 이동하였을 경우, 자주 사용합니다. )



    3.mkdir (make directory) 

    mkdir 은 새로운 디렉토리를 만들 때 사용하는 명령어입니다. 
    
    mkdir dirname : dirname 의 디렉토리를 생성합니다. 
    
    mkdir -p dirname/subdname : 존재하지 않는 디렉토리의 하위디렉토리까지 생성합니다. 
    
    mk -m 644 dirname : 특정 퍼미션을 갖는 디렉토리를 생성합니다.

     
    4.  cp (copy) 

    cp 는 파일을 복사하는 명령어 입니다. 
    
    cp file cfile : file 을 cfile 이라는 이름으로 복사합니다. 
    
    cp -f file cfile : 복사할 때 복사대상이 있으면 지우고 강제로 복사합니다. 
    
    cp -R dir cdir : 디렉토리 복사할 때 사용하며, 폴더안의 모든 하위경로와 파일들을 모두 복사합니다. 


    5. mv (move) 

    mv 는 파일을 이동하는 명령어 입니다. cp 와 비슷하지만 다른 점은 cp 는 파일을 복사하여 원본 파일이 남아있지만 mv 는 원본 파일이 남지 않는다는 점입니다. 그래서 이름 변경시에도 사용가능합니다. 
    
    mv fname mfname : fname 의 파일을 mfname 의 이름으로 이동/변경 합니다. 
    
    mv -b fname mfname : mfname 의 파일이 존재하면 mfname 을 백업한 뒤에 이동합니다. 
    
    mv -f fname mfname : mfname 의 파일이 존재하면 백업 없이 덮어씁니다. 


    6. rm (remove) 

    rm 은 파일이나 디렉토리를 삭제할 때 사용하는 명령어 입니다. 
    
    rm [filename] : filename에 해당하는 file 을 삭제합니다. 
    
    rm -f [filename]: file name에 해당하는 file을 묻지 않고 삭제합니다. (comfirm)
    
    // 디렉토리를 삭제하고싶다면, -R 을 넣어주어야합니다.
    rm -R [dir name]: 디렉토리를 삭제합니다. 
    
    
    ex) rm /home/apps/test.xml
    ex) rm -R /home/apps/testSetupDir


    7. pwd (print working directory)

    현재 작업중인 디렉토리 정보 출력 
    
    현재 작업하고있는 path가 어디인지 확인할때 사용한다.
    
    ex) pwd


    8. tail

    파일의 뒷부분을 보고싶은 줄 수만큼 보여준다. 
    
    옵션을 지정하지 않으면 파일 하위 10줄을 보여준다. 
    
    참고로 -F 옵션을 주고 실행하면, 
    
    파일 내용을 화면에 계속 띄워주고 파일이 변하게되면 새로운 업데이트된 내용을 갱신해준다. 
    
    주로 실시간으로 내용이 추가되는 로그파일을 모니터링할때 유용하게 사용한다. 
    
    //주로 tomcat 의 log를 확인할때 사용합니다.
    ex) tail -f xxx/logs/catalina.out 


    9.find

    특정 파일이나 디렉토리를 검색한다 
    
    사용법이 앞의 명령어들에비해 살짝 복잡하므로, 기본 사용법을 언급하자면 다음과 같다. 
    
    find [검색경로] -name [파일명] 
    
    파일명은 직접 풀 네임을 입력해도 되지만, 
    
    다음 예제처럼 특정 조건을 적용해 검색할수도 있다. 
    
    //주로 사용하진 않지만, 가끔 application setup 시 .so 라던지, 필요 파일들이 누락되거나, yum으로 설치할 경우 path를 찾기 어려운데 해당때에 유용합니다.
    ex) # find ./ -name 'file1' 
    ./file1 
    


    10. ps

    특정 프로세스를 검색할때 사용한다. 
    
    ps -ef | grep [프로세스명] 
    
    특정 프로세스가 현재 linux에서 동작중인지를 확인하기 위하여, 사용할때가 많다. 
    
    ex) ps -ef | grep tomcat 


    11. netstat

    특정 Port를 검색할때 사용한다. 
    
    netstat -anp | grep [PORT] 
    
    특정 프로세스 현재 Linux에서 해당 포트를 사용중인지 확인하기 위하여, 사용할때가 많다. 
    
    ex) netstat -anp | grep 80 


    12. chmod

    특정 파일/폴더에 대한 권한을 줄때 사용한다. 
    
    755를 기본적으로 상위권한(write / read / delete)를 줄때 사용한다. 
    
    chmod 755 [파일Name] 
    
    폴더 전체에게 주고싶다면, 
    
    chmod 755 -R [폴더 name] 으로 주면된다. 
    
    ex) chmod 755 /home/apps/*.html 
    
    ex) chmod 755 -R /home/apps 


    13. chown

    특정 파일/폴더에 사용자 권한을 줄때 사용한다. 
    
    chown [usergroup]:[userid] [filename] 
    
    형식으로 사용하며, 폴더를 대상으로 할 경우  
    
    chown -R [usergroup]:[userid] [filename] 
    
    
    ex) chown app:app startUp.sh 
    ex) chown -R app:app /home/apps

     

    14. tar

    [압축할 때] tar cvzf 파일명.tar.gz <디렉토리> 또는 파일 
    [압축 해제] tar xvzf 파일명.tar.gz 
    
    [예제] 
    tar -xvvf foo.tar : foo.tar 파일을 푼다.
    tar -xvvzf foo.tar.gz : gzip으로 압축된 foo.tar.gz 파일을 푼다. 
    tar -cvvf foo.tar foo/ : foo 디렉토리에 있는 내용물을 foo.tar 파일로 묶는다.
    기능 옵션
    반드시 아래 옵션들 중 하나가 들어가야 한다. 
    -A, --catenate, --concatenate : 저장 파일에 tar 파일을 추가한다.
    -c, --create : 새 저장 파일을 만든다. 
    -d, --diff, --compare : 저장 파일 혹은 파일 시스템 간의 다른 점을 찾는다. 
    --delete : 저장 파일에서 지운다. (자기 테이프에는 쓰면 안됨!)
    -r, --append : 저장 파일의 끝에 파일을 덧붙인다. 
    -t, --list : 저장 파일의 내용 목록을 보여준다.
    -u, --update : 저장 파일에 저장된 사본보다 새로운 파일만을 덧붙인다. 
    -x, --extract, --get : 저장된 것에서 풀어낸다. 

    댓글

Designed by black7375.