본문 바로가기

카테고리 없음

리눅스 명령어

리눅스란 컴퓨터 운영체제 중 하나다.

운영체제란 컴퓨터의 하드웨어를 관리하는 것인데,

사용자가 컴퓨터를 사용하기 위해 필요한 소프트웨어가 바로 운영체제다.

대표적으로 우리가 많이 쓰는 윈도우 그리고 리눅스, IOS가 있다.

 

리눅스는 다중 사용자, 다중 작업인 멀티태스킹이나 다중 쓰레드를 지원하는 네트워크 운영체제다.

강력한 네트워크를 구축하고 보안도 높은 장점이 있다.

 

리눅스의 기본적인 명령어들을 살펴보자.

이후 더 자세한 사용법을 알고 싶으면 'man 명령어이름'을 사용하자!

 

1. ls

LiSt의 약자로 windows의 dir 명령과 같은 역할을 한다.

해당 디렉토리에 있는 파일의 목록을 볼 수 있다.

 

ls -a : 현재 디렉토리의 목록 (숨김 파일을 포함해서 보여준다)

ls -l : 현재 디렉토리의 목록을 자세히 보여준다 (소문자 엘)

ls *.conf : 확장자가 conf인 목록을 보여준다

ls -l /etc/lalala/b* : /etc/lalala디렉토리에 있는 목록 중 앞 글자가 b인 것의 목록을 자세히 보여준다.

 

리눅스는 숨김파일이라는 속성이 별도 존재하지 않는다.

파일이름이나 디렉토리의 제일 앞글자를 '.'으로 하면 자동 숨김파일이 된다.

 

2. cd

change directory의 약자로 디렉토리 이동시켜주는 명령어다.

 

cd : 현재 사용자의 홈 디렉토리로 이동, 만약 현재 사용자가 root면 '/root' 디렉토리로 이동한다.

cd -com : com 사용자의 홈 디렉토리로 이동한다

cd .. : 바로 상위의 디렉토리로 이동한다. '..'은 현 디렉토리의 부모 디렉토리를 의미한다.

cd /etc/lalala : /etc/lalala 디렉토리로 이동함 (절대경로)

cd ../etc/lalala : 상대경로로 이동한다. 현재 디렉토리의 상위로 이동한 후, 다시 /etc/lalala로 이동

 

3. pwd

print working directory의 약자로 현재 디렉토리의 전체 경로를 화면에 보여준다.

 

4. rm

ReMove의 약자로 파일이나 디렉토리를 삭제한다.

삭제할 때는 현재 사용자가 파일이나 디렉토리를 삭제할 권한이 있어야 한다.

단, root 사용자는 모든 권한이 있으므로 이 명령에 제약이 없다.

 

rm lala.txt : 해당 파일 삭제

rm -i lala.txt : 삭제 시 정말 삭제할지 확인하는 메시지가 나옴

rm -f lala.txt : 삭제 시 확인하지 않고 바로 삭제 (f는 force의 약자다)

rm -rf lala : lala디렉토리와 그 아리에 있는 하위 디렉토리를 강제로 전부 삭제 (r는 Recursive의 약자)

 

Recursive란? 재귀(recursion)리는 뜻으로 어떠한 것을 정의할 때 자기 자신을 참조하는 것을 뜻한다. 

리눅스에서는 windows의 휴지통 개념이 없으므로 삭제한 파일이나 폴더를 복구하기가 상당히 어렵다!!

그래서 나는 업무하면서 리눅스 사용할때 삭제하거나 내용을 수정할 일이 있으면반드시!!!! 백업파일을 만들어 두고 삭제, 수정을 진행했다. (안그러면 등에서 식은땀이 흐른다.....)백업파일을 만드는 방법은, FTP를 열어서 삭제할 파일을 복사해 다른 곳에 저장하던지,아니면 같은자리에 복사 붙여넣기하여 '오늘날짜.bak' 이런식으로 백업파일을 만들어둔다.그것도 싫다면 copy 명령어를 사용해도 된다. 밑에서 설명하겠다.

 

5. cp

CoPy의 약자로 파일이나 디렉토리를 복사한다.새로 복사한 파일은 복사한 사용자의 소유가 된다. 명령을 실행하는 사용자는 해당 파일의 읽기 권한이 필요하다cp happy.txt lower.txt : happy.txt를 lower.txt라는 이름으로 바꿔서 복사cp -r happy lower : 디렉토리 복사한다. happy 디렉토리를 lower 디렉토리로 복사

 

6. touch

크기가 0인 새 파일을 생성하거나,이미 파일이 존재한다면 파일의 최종 수정 시간을 변경한다.touch happy.txt : 파일이 없을 경우 happy.txt라는 빈 파일을 생성하고,                       happy.txt가 있을 경우 파일의 최종 수정시간을 현재 시각으로 변경한다.

 

7. mv

MoVe의 약자로 파일이나 디렉토리의 이름을 변경하거나 다른 디렉토리로 옮겨준다.mv happy.txt /etc/lalala/ : happy.txt를 /etc/lalala/디렉토리로 이동한다mv aaa bbb ccc ddd : aaa, bbb, ccc 파일을 '/ddd' 디렉토리로 이동mv happy.txt lower.txt : happy.txt의 이름을 lower.txt로 변경해서 이동

 

8. mkdir

MaKe DIRectory 의 약자로, 새로운 디렉토리를 생성한다.생성한 디렉토리는 명령을 실행한 사용자의 소유가 된다.mkdir happy : 현재 디렉토리 아래에 '/happy' 디렉토리 생성mkdir -p /high/lower : /high/lower 디렉토리를 생성하는데,                               만약 '/lower'의 부모 디렉토리인 '/high' 디렉토리가 없다면 자동 생성해줌                              p는 Parents의 약자

 

9. rmdir

ReMove DIRectory 의 약자로, 디렉토리를 삭제한다.해당 디렉토리의 삭제 권한이 있어야 하며, 디렉토리는 비어있어야 한다.파일이 들어있는 딜게토리를 삭제하려면 'rm -r'을 명령해야 함

rmdir happy : happy 디렉토리 삭제

 

10. cat

conCATenate의 약자로, 파일 내용을 화면에 보여준다.여러 개의 파일을 나열하면 파일을 연결해서 보여준다.cat a.txt b.txt : a.txt와 b.txt를 연결해서 파일의 내용을 화면에 보여준다.

 

11. head / tail

텍스트 형식으로 작성된 파일의 앞 10행 또는 마지막 10행만 화면에 출력한다.head /etc/lalala/flower.conf : 해당 파일의 앞 10행을 화면에 출력head -3 /etc/lalala/flower.conf : 앞 3행만 화면에 출력tail -5 /etc/lalala/flower.conf : 마지막 5행만 화면에 출력

 

12. more

텍스트 형식으로 작성된 파일을 페이지 단위로 화면에 출력한다.스페이스 바를 누르면 다음페이지로 이동하며 'B'를 누르면 앞 페이지로 이동, 'Q'를 누르면 종료한다.more /etc/lalala/happy.confmore +100 /etc/lalala/happy.conf : 10행부터 출력

 

13. less

more 명령어와 비슷한데, 기능이 더 확장되어 있다.more에서 사용하는 키도 사용할 수 있으며 추가로 화살표 키나 'page up' , 'page down' 키도 사용할 수 있다.

less /etc/lalala/happy.conf 

less +10 /etc/lalala/happy.conf : 10행부터 출력

 

14. file

해당 파일이 어떤 종류인지 알려줌!

file /etc/lalala/happy.conf : happy.conf는 텍스트 파일이므로 아스키 파일(ASCII)로 표시됨

file /bin/7zip : 7zip은 실행 파일이므로 'ELF 64-bit LSB shared object' 파일로 표시됨

 

15. clear

현재 사용중인 터미널 화면을 깨끗하게 청소해줌!

 

 

 

 

 

리눅스 명령어 10가지를 대보시오.

1. ls : 현재 위치에 있는 목록들 표기하기

2. pwd : 현재 디렉토리 위치 표시하기

3. ps -ef grep|tomcat : 톰캣위치 확인, 톰캣 상태 확인

4. tail -f catalina.out : 로그를 보기 위해 톰캣의 logs 디렉토리에 들어가서 명령어 시행

5. ./shutdown.sh : 서버 끄기 (톰캣안의 bin 폴더 에서 명령어 시행 > 톰캣을 끈다)

6. ./startup.sh : 서버 기동 (톰캣안의 bin 폴더 에서 명령어 시행 > 톰캣을 킨다)

7. find -name tomcat : tomcat 이라는 이름의 파일을 찾기 (하도 안보여서 위치 알려고)

8. cp a.txt a20220124.txt : 백업파일 만들기 위해서 복사

9. zip -q -d log4j-core*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class 

  전세계적으로 보안취약점 이슈가 되었던 log4j 문제를 해결하기 위해 JndiLookup.class 를 삭제하는 명령어

10. cd : change directory의 약자로, 디렉토리를 이동시켜주는 명령어