리눅스 명령어(Linux Command)

우리가 Linux 시스템을 사용함에 있어서 다양하고 많은 명령어의 사용법을 익혀둔다면
보다 편리하고 빠른 작업이 가능하게 해준다. 특히나 우리가 흔하게 접해볼 수 있는 운영체제인
MacOS, Windows ... 등의 운영체제들은 사용자의 편의성을 고려GUI(Graphic User Interface)
주로 사용하기 때문에 마우스와 함께 작업을 진행할 수 있지만,
실제 서버를 운영하거나 관리할 때에는 CUI/CLI(Command User Interface / Comman Line Interface)
리소스의 소모가 적고 반응이 빠르다는 대표적인 이유로인해 사용하고 있기 때문에 Linux 시스템에서
자주 사용되는 명령어들에 관해서는 알아둘 필요가 있겠다.

(물론 다른 운영체제들도 검은색 배경의 Console에서 명령어 기반의 작업이 가능하다.)
** 필자는 아직 서버운영에 대한 경력이 전무하기에 실무에서는 어떤방식의 작업이 이뤄지는지
정확하게 서술은 할 수 없다...

● 명령어 ls(list segments)

리눅스에서 가장 많이 쓰이는 명령어로 해당하는 디렉터리나 파일의 정보를
표준출력으로 출력해주는 명령어이다. 코드럭에 기재된 옵션들의 조합 외에도
좀 더 다양한 조합으로 명령어의 시너지를 볼 수도 있다.

** Asterisk : 문자 * 를 이용하면 ls *.txt, a* ... 등의 와일드카드 또한 활용이 가능하다.

ls   #list segments

### <Option> ### 
ls -a   # 디렉터리 내의 숨김파일/디렉터리까지 출력해주는 옵션
ls -l   # 파일의 정보를 "자세히" 출력, 권한, 소유자, 파일명 ...등
ls -h   # 숫자로만 표기가 아닌, K,M,G 등의 단위로 파일의 크기를 출력

### <Option> ### 
ls -la   # 숨김파일과 함께 자세히 출력
ls -ld   # 디렉토리만 지정하여 자세히 출력

 

● 명령어 mv(move)

파일명의 변경과 파일의 위치를 변경해줄 수 있는 명령어이다.
mv의 경우 같은 mv [옵션] [대상파일] [목적파일] 식의 구성으로 사용되는데,
코드블럭을 보며 이해해보자
** 명령어 "rename"의 경우 파일의 확장자를 일괄적으로 변경할 때 사용된다.

mv # move

### <Example> ###
# $PATH = /home/user/
mv ./A_file ./B_file   # 같은 미디어/볼륨 안에서의 mv 명령어는 이름을 변경해주는 기능


### <Example> ###
mv /home/user_1/A_file /home/user_2/B_file   # 식의 이용은 위치를 변경, 이름 또한 변경이 가능하게 해준다

 

 

● 명령어 cp(copy)

파일이나 디렉토리를 복사할 때 사용되는 명령어로
우리가 Windows에서 흔히 사용하는 "복사, 붙여넣기"의 기능과
동일하게 생각하면 될 것 같다.
cp의 경우 cp [옵션] [대상 파일/디렉토리] [목적지] 식의 구성으로 사용된다.

cp   # copy

### <Example> ###
cp -R [A_Directory / File] [B_Directory]   # 하위 디렉토리의 파일, 디렉토리를 전부복사
cp -a [A_Directory / File] [B_Directory/"file_name"]   # 원본파일의 속성과 링크를 포함하여 복사를 하는 경우이며, 저장될 위치에서의 이름지정도 가능
cp -v [A_Directory / File] [B_Directory]   # 복사가 진행되는 과정을 표시해주는 옵션

### <Example> ###
cp -arp [A_Directory / File] [B_Directory]   # 속성, 소유자, 권한 등 원본파일의 모든 부분을 동일하게 복사하는 경우에 사용

 

● 명령어 cd(change directory) / pwd(print working directory)

우리가 검은색 배경의 콘솔창에서 작업을 하면서 많이 사용하게 되는,
작업 위치에 관련된 명령어이다. 대부분의 실무자들은 우리가 워드나 엑셀파일을
작업하면서 "Ctrl + S" 를 누르며 수시로 파일을 저장하는 행위와 비슷하게
수행하는 일종의 습관(?)이라고 말 하기도 한다. cd 의 경우 cd [디렉토리] 식의 구성으로 사용된다.
절대경로 위치지정 외에도 상대경로 위치지정도 가능한데 몇 가지 예시를 확인해보자

. : 현재 디렉토리를 의미
.. : 한 단계(?) 상위 디렉토리를 의미
~ : "user"의 홈 디렉토리를 의미
---> 식의 표현으로 상대경로 지정이 가능하다. 하지만 예외의 경우는 언제나 존재하기 때문에
중요한 작업을 수행한다면 안정성의 이유로 절대경로의 사용을 지향한다고 한다.

cd   # change directory
pwd  # print working directory

### <Example> ###
# $PATH = /home/user

~$ pwd   # 현재 작업 위치를 확인
/home/user   # /home/user 디렉토리에서 작업하고 있음을 확인가능

~$ cd /home   # 절대경로를 지정하여 현재위치 /home/user 위치에서 상위 디렉토리인 /home 디렉토리로 위치를 변경
~$ pwd        # 현재 작업위치를 확인
/home        # cd 명령어로 위치가 변경되어 /home 으로 위치가 변경되었음을 확인

 

 

● 명령어 cat(concatenate)

명령어 "cat"은 인터넷 사전에 정의되어 있는 바에 의하면,
표준 입력표준 출력으로 이어주는(concatenate) 역할을 하는 명령어라고 서술 되어있다.
주로 길이가 짧은 파일의 내용을 간편하게 보고싶을 때 사용되거나,
재지정(Redirect)을 활용하여 파일을 파일을 복사해주거나 합쳐주는 등의 작업을 수행할 때 사용된다.
** Redirect == <, <<, >, >> 등의 부호를 이용
** Pipe == "|" 부호를 이용
cat 의 사용법으로는 cat [옵션] [파일] 식의 구성으로 사용되며,
주 사용방식은 코드블럭에 표현 해보았다.

cat   # concatenate

### <Example> ###
cat File.txt   # 단일 파일의 내용을 출력
cat File1.txt File2.txt File3.txt   # 복수 개의 파일의 내용을 한 번에 출력
cat -n File.txt   # 행 번호를 표시하여 파일의 내용을 출력
cat File1.txt File2.txt File3.txt > New_File.txt   # 복수 개의 파일의 내용을 새로운 파일의 내용으로 출력 후 저장




이번 포스트에는 리눅스를 사용하며 거의 필수적으로 많이 사용되는 명령어 몇 가지를
간단하게 알아보았다. 다음 포스트에서는 서버를 운영할 때 주로 사용되는 명령어와
다중 명령어에 대하여 글을 써보도록 하겠다.

'Linux_System' 카테고리의 다른 글

[Linux]YUM_LocalRepository  (0) 2022.10.26
[Linux]Basic_Command(2)  (0) 2022.10.10
[Linux]LVM  (1) 2022.09.22
[Linux]RAID  (0) 2022.09.20
[Linux]Disk_Quota  (1) 2022.09.19

+ Recent posts