웹사이트 검색

초보자를 위한 10가지 유용한 Linux 명령줄 요령 - 2부


처음 Linux를 사용하기 시작하고 Windows의 그래픽 인터페이스에 익숙해졌을 때 Linux 터미널이 정말 싫었습니다. 그 당시에는 명령을 기억하기 어렵고 각 명령을 적절하게 사용하는 것이 어렵다는 것을 알았습니다. 시간이 지나면서 Linux 터미널의 아름다움, 유연성, 유용성을 깨달았고, 솔직히 말해서 사용하지 않고는 하루가 지나갈 수 없습니다. 오늘 저는 Linux를 처음 접하는 사람들이 Linux로 쉽게 전환하거나 단순히 새로운 것을 배우는 데 도움이 되는 몇 가지 유용한 요령과 팁을 공유하고 싶습니다.

  1. Linux의 5가지 흥미로운 명령줄 팁과 요령 - 1부
  2. Linux 파일 형식을 관리하는 데 유용한 5가지 명령 - 3부

이 기사에서는 최소한의 기술을 사용하여 전문가처럼 Linux 터미널을 사용하는 방법에 대한 몇 가지 유용한 요령을 보여 드리고자 합니다. 필요한 것은 Linux 터미널과 이러한 명령을 테스트할 여유 시간뿐입니다.

1. 올바른 명령을 찾으세요

올바른 명령을 실행하는 것은 시스템에 매우 중요할 수 있습니다. 그러나 Linux에는 명령줄이 너무 많아서 기억하기 어려운 경우가 많습니다. 그렇다면 필요한 올바른 명령을 어떻게 검색합니까? 대답은 거의입니다. 실행해야 할 것은 다음과 같습니다.


# apropos <description>

찾고 있는 명령에 대한 실제 설명으로 "설명"을 변경해야 하는 위치입니다. 다음은 좋은 예입니다.


# apropos "list directory"

dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents

왼쪽에는 명령이 표시되고 오른쪽에는 설명이 표시됩니다.

2. 이전 명령 실행

여러 번 동일한 명령을 반복해서 실행해야 합니다. 키보드의 위로 키를 반복해서 누를 수 있지만 대신 기록 명령을 사용할 수 있습니다. 이 명령은 터미널을 시작한 이후 입력한 모든 명령을 나열합니다.


# history

    1  fdisk -l
    2  apt-get install gnome-paint
    3  hostname linux-console.net
    4  hostnamectl linux-console.net
    5  man hostnamectl 
    6  hostnamectl --set-hostname linux-console.net
    7  hostnamectl -set-hostname linux-console.net
    8  hostnamectl set-hostname linux-console.net
    9  mount -t "ntfs" -o
   10  fdisk -l
   11  mount -t ntfs-3g /dev/sda5 /mnt
   12  mount -t rw ntfs-3g /dev/sda5 /mnt
   13  mount -t -rw ntfs-3g /dev/sda5 /mnt
   14  mount -t ntfs-3g /dev/sda5 /mnt
   15  mount man
   16  man mount
   17  mount -t -o ntfs-3g /dev/sda5 /mnt
   18  mount -o ntfs-3g /dev/sda5 /mnt
   19  mount -ro ntfs-3g /dev/sda5 /mnt
   20  cd /mnt
   ...

위 출력에서 볼 수 있듯이 실행한 모든 명령 목록을 받게 됩니다. 각 줄에는 명령을 입력한 행을 나타내는 숫자가 있습니다. 다음을 사용하여 해당 명령을 불러올 수 있습니다.


!#

여기서 #은 실제 명령 번호로 변경되어야 합니다. 더 나은 이해를 위해 아래 예를 참조하십시오.


!501

다음과 같습니다:

# history

3. 미드나이트 커맨더를 사용하세요

cd, cp, mv, rm 등의 명령을 사용하는 데 익숙하지 않은 경우 < Strong>자정 명령. 마우스도 사용할 수 있는 사용하기 쉬운 시각적 셸입니다.

F1 – F12 키 덕분에 다양한 작업을 쉽게 수행할 수 있습니다. 하단의 범례를 확인하시면 됩니다. 파일이나 폴더를 선택하려면 '삽입' 버튼을 클릭하세요.

간단히 말해서 자정 명령을 "mc"라고 합니다. 시스템에 mc를 설치하려면 다음을 실행하세요.


$ sudo apt-get install mc        [On Debian based systems]

# yum install mc                 [On Fedora based systems]

다음은 Midnight Commander를 사용하는 간단한 예입니다. 다음을 입력하여 mc를 엽니다.


# mc

이제 TAB 버튼을 사용하여 창(왼쪽오른쪽) 사이를 전환합니다. "Software" 폴더로 이동할 LibreOffice 파일이 있습니다.

새 디렉토리로 파일을 이동하려면 키보드의 F6 버튼을 누르세요. 이제 MC가 확인을 요청합니다.

확인되면 파일이 새 대상 디렉터리로 이동됩니다.

자세히 알아보기: Linux에서 Midnight Commander 파일 관리자를 사용하는 방법

4. 특정 시간에 컴퓨터 종료

때로는 근무 시간이 끝난 후 몇 시간 후에 컴퓨터를 종료해야 하는 경우도 있습니다. 다음을 사용하여 특정 시간에 컴퓨터가 종료되도록 구성할 수 있습니다.


$ sudo shutdown 21:00

이는 귀하가 제공한 특정 시간에 컴퓨터가 종료되도록 지시합니다. 특정 시간(분) 후에 시스템이 종료되도록 지정할 수도 있습니다.


$ sudo shutdown +15

이렇게 하면 15분 안에 시스템이 종료됩니다.

5. 알려진 사용자에 대한 정보 표시

간단한 명령을 사용하여 Linux 시스템 사용자와 이에 대한 일부 기본 정보를 나열할 수 있습니다. 간단히 다음을 사용하세요:


# lslogins

그러면 다음과 같은 결과가 나타납니다.


UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS
0 root 0 0 Apr29/11:35 root
1 bin 0 1 bin
2 daemon 0 1 daemon
3 adm 0 1 adm
4 lp 0 1 lp
5 sync 0 1 sync
6 shutdown 0 1 Jul19/10:04 shutdown
7 halt 0 1 halt
8 mail 0 1 mail
10 uucp 0 1 uucp
11 operator 0 1 operator
12 games 0 1 games
13 gopher 0 1 gopher
14 ftp 0 1 FTP User
23 squid 0 1
25 named 0 1 Named
27 mysql 0 1 MySQL Server
47 mailnull 0 1
48 apache 0 1 Apache
...

6. 파일 검색

파일을 검색하는 것이 생각만큼 쉽지 않은 경우가 있습니다. 파일 검색의 좋은 예는 다음과 같습니다.


# find /home/user -type f

이 명령은 /home/user에 있는 모든 파일을 검색합니다. find 명령은 매우 강력한 명령이며 더 많은 옵션을 전달하여 검색을 더욱 자세하게 만들 수 있습니다. 주어진 크기보다 큰 파일을 검색하려면 다음을 사용할 수 있습니다.


# find . -type f -size 10M

위 명령은 현재 디렉토리에서 10MB보다 큰 모든 파일을 검색합니다. Linux 시스템의 루트 디렉터리에서 명령을 실행하지 마십시오. 컴퓨터에 높은 I/O가 발생할 수 있습니다.

find와 함께 가장 자주 사용되는 조합 중 하나는 "exec" 옵션입니다. 이 옵션을 사용하면 기본적으로 find 명령의 결과에 대해 일부 작업을 실행할 수 있습니다.

예를 들어, 디렉토리에 있는 모든 파일을 찾아 해당 파일의 권한을 변경하고 싶다고 가정해 보겠습니다. 이 작업은 다음을 통해 쉽게 수행할 수 있습니다.


# find /home/user/files/ -type f -exec chmod 644 {} \;

위 명령은 지정된 디렉터리의 모든 파일을 재귀적으로 검색하고 찾은 파일에 대해 chmod 명령을 실행합니다. 앞으로는 이 명령에 대한 더 많은 용도를 발견하게 될 것이라고 확신합니다. 지금은 Linux 'find' 명령 및 사용법에 대한 35가지 예를 읽어보세요.

7. 하나의 명령으로 디렉토리 트리 구축

아마도 mkdir 명령을 사용하여 새 디렉토리를 생성할 수 있다는 것을 알고 계실 것입니다. 따라서 새 폴더를 생성하려면 다음과 같이 실행합니다.


# mkdir new_folder

하지만 해당 폴더 내에 5개의 하위 폴더를 만들고 싶다면 어떻게 해야 할까요? mkdir 5 연속으로 실행하는 것은 좋은 해결책이 아닙니다. 대신 다음과 같이 -p 옵션을 사용할 수 있습니다.


# mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}

결국 new_folder에 5개의 폴더가 있어야 합니다.


# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. 파일을 여러 디렉터리에 복사

파일 복사는 일반적으로 cp 명령으로 수행됩니다. 파일 복사는 일반적으로 다음과 같습니다.


# cp /path-to-file/my_file.txt /path-to-new-directory/

이제 해당 파일을 여러 디렉터리에 복사해야 한다고 상상해 보세요.


# cp /home/user/my_file.txt /home/user/1
# cp /home/user/my_file.txt /home/user/2
# cp /home/user/my_file.txt /home/user/3

이것은 약간 터무니없는 일입니다. 대신 간단한 한 줄 명령으로 문제를 해결할 수 있습니다.


# echo /home/user/1/ /home/user/2/ /home/user/3/ | xargs -n 1  cp /home/user/my_file.txt

9. 더 큰 파일 삭제하기

때로는 파일이 매우 커질 수 있습니다. 관리 능력이 부족하여 단일 로그 파일의 크기가 250GB를 초과하는 경우를 보았습니다. 이러한 경우에는 제거해야 할 데이터 양이 매우 많기 때문에 rm 유틸리티를 사용하여 파일을 제거하는 것만으로는 충분하지 않을 수 있습니다. 이 작업은 '무거운' 작업이므로 피해야 합니다. 대신, 정말 간단한 솔루션을 사용할 수 있습니다.


# > /path-to-file/huge_file.log

물론 귀하의 경우에 맞게 경로와 파일 이름을 정확한 이름으로 변경해야 합니다. 위의 명령은 단순히 빈 출력을 파일에 기록합니다. 더 간단하게 말하면 시스템에 높은 I/O를 발생시키지 않고 파일을 비웁니다.

10. 여러 Linux 서버에서 동일한 명령 실행

최근 독자 중 한 명이 LinuxSay 포럼에서 SSH를 사용하여 여러 Linux 상자에 단일 명령을 동시에 실행하는 방법에 대해 질문했습니다. 그는 자신의 컴퓨터 IP 주소를 다음과 같이 갖고 있었습니다.


10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

그래서 이 문제에 대한 간단한 해결책이 있습니다. 위에 표시된 것처럼 list.txt라는 파일 하나에 서버의 IP 주소를 다른 파일 아래에 수집합니다. 그런 다음 다음을 실행할 수 있습니다.


# for in $i(cat list.txt); do ssh user@$i 'bash command'; done

위의 예에서 "user"를 로깅할 실제 사용자로 변경하고 "bash command"를 실행하려는 실제 bash 명령으로 변경해야 합니다. . 이 방법은 SSH 키를 사용하여 컴퓨터에 비밀번호 없는 인증을 사용할 때 더 잘 작동합니다. 이렇게 하면 사용자의 비밀번호를 반복해서 입력할 필요가 없기 때문입니다.

Linux 박스 설정에 따라 SSH 명령에 몇 가지 추가 매개변수를 전달해야 할 수도 있습니다.

결론

위의 예는 매우 간단한 예이며 Linux의 장점을 찾고 다른 운영 체제에서는 훨씬 더 많은 시간이 걸릴 수 있는 다양한 작업을 쉽게 수행하는 방법을 찾는 데 도움이 되었기를 바랍니다.