예제가 포함된 Linux의 mkdir 명령

Linux의 mkdir 명령은 디렉터리를 만드는 데 사용됩니다. 파일 및 디렉터리 관리에 중요한 역할을 하기 때문에 모든 Linux 사용자가 숙지해야 하는 기본 명령입니다. mkdir 명령의 기본 구문을 사용하면 한 번에 하나 이상의 디렉터리를 만들고, 권한을 설정하고, 부모 디렉터리가 아직 없는 경우 부모 디렉터리도 만들 수 있습니다. mkdir의 다양한 옵션과 구문을 이해하면 명령줄에서 파일과 디렉터리를 관리할 때 효율성이 크게 향상될 수 있습니다.

이 가이드에서는 mkdir 명령의 구문을 설명하고 해당 옵션을 살펴보고 Linux 시스템의 다양한 시나리오에서 mkdir을 사용하는 방법에 대한 실제 예를 제공합니다.

mkdir 명령의 구문

가장 간단한 형식으로 mkdir 명령은 다음 구문을 따릅니다.

mkdir [OPTION]... DIRECTORY...
  • mkdir은 시스템에 새 디렉터리를 만들도록 지시하는 명령입니다.
  • [OPTION]은 명령의 동작을 수정하는 선택 인수입니다.
  • DIRECTORY는 생성하려는 디렉터리의 이름입니다.

mkdir 명령에 사용 가능한 옵션

mkdir 명령과 함께 사용하여 해당 기능을 사용자 정의할 수 있는 몇 가지 옵션이 있습니다.

  • -m, –mode=MODE: 새 디렉터리에 대한 파일 모드(권한)를 설정합니다. 종종 '755' 또는 '644'와 같은 숫자 문자열로 표시됩니다.
  • -p, –parents: 지정된 디렉터리가 이미 존재하는 경우 이 옵션을 사용하면 오류가 보고되지 않습니다. 또한 필요에 따라 상위 디렉토리를 생성할 수도 있습니다.
  • -v, –verbose: mkdir 명령이 수행하는 작업을 설명하는 자세한 출력을 제공합니다.
  • –help: 도움말 메시지를 표시하고 종료합니다.
  • –version: 버전 정보를 출력하고 종료합니다.

mkdir 명령 예

mkdir을 사용하여 간단한 디렉토리 만들기

mkdir 명령의 가장 간단하고 일반적인 용도는 새 디렉터리를 만드는 것입니다.

mkdir new_directory

이 명령에서 new_directory는 생성 중인 디렉터리의 이름입니다. 이 명령을 실행하면 현재 위치에 new_directory라는 새 디렉터리가 생성됩니다.

mkdir을 사용하여 여러 디렉터리 만들기

mkdir 명령은 여러 디렉터리를 동시에 만들 수도 있습니다. 방법은 다음과 같습니다.

mkdir dir1 dir2 dir3

이 명령에서 dir1, dir2, dir3은 생성할 디렉터리의 이름입니다. 이 명령은 현재 위치에 세 개의 디렉터리를 생성합니다.

mkdir을 사용하여 특정 권한이 있는 디렉터리 만들기

-m 또는 –mode 옵션을 사용하면 디렉터리 생성 시 디렉터리의 권한을 지정할 수 있습니다.

mkdir -m 755 new_directory

여기서 new_directory는 권한이 '755'로 설정된 상태로 생성됩니다. 즉, 소유자는 읽고, 쓰고, 실행할 수 있지만 그룹과 다른 사람은 읽고 실행만 할 수 있습니다.

mkdir을 사용하여 중첩 디렉터리 만들기

-p 또는 –parents 옵션을 사용하면 필요에 따라 상위 디렉터리를 생성할 수 있습니다. 예를 들어:

mkdir -p dir1/dir2/dir3

이 명령은 dir1과 dir2가 있는지 확인하고, 없으면 생성합니다. 그런 다음 dir1 내부에 있는 dir2 내부에 dir3을 생성합니다.

mkdir과 ​​함께 자세한 출력 사용

-v 또는 –verbose 옵션을 사용하면 mkdir이 생성한 각 디렉터리에 대한 메시지를 인쇄하게 되는데, 이는 문제 해결이나 확인에 유용할 수 있습니다.

mkdir -v new_directory

이 명령은 new_directory를 생성한 다음 해당 생성을 나타내는 메시지를 인쇄합니다.

이름에 공백이 있는 디렉토리 생성

때로는 이름에 공백이 포함된 디렉터리를 만들고 싶을 때가 있습니다. 디렉터리 이름을 따옴표로 묶어 이를 수행할 수 있습니다.

mkdir "new directory"

이 명령을 사용하면 new 디렉토리('new'와 'directory' 사이에 공백 포함)라는 이름의 새 디렉토리가 생성됩니다.

mkdir 버전 확인

현재 시스템에 설치된 mkdir 명령의 버전을 확인할 수 있습니다. 이는 호환성 문제가 있거나 문제를 해결하는 동안 도움이 될 수 있습니다. 버전을 확인하려면 다음을 사용할 수 있습니다.

mkdir --version

이 명령은 현재 시스템에서 사용 중인 mkdir 명령의 버전 정보를 표시합니다.

mkdir에 대한 도움말 표시

mkdir 명령을 사용하는 데 도움이 필요하거나 해당 옵션을 빠르게 확인하려면 –help 옵션을 사용하십시오.

mkdir --help

이 명령은 mkdir 명령의 사용법과 사용 가능한 옵션을 보여주는 도움말 메시지를 출력합니다.

텍스트 파일에서 디렉터리 만들기

생성하려는 디렉터리 이름 목록이 포함된 텍스트 파일이 있다고 가정해 보세요. mkdir과 ​​함께 xargs 명령을 사용하여 이 작업을 수행할 수 있습니다.

xargs mkdir < dir_list.txt

이 명령에서 dir_list.txt는 디렉터리 이름 목록이 포함된 텍스트 파일입니다. 명령은 이 파일을 읽고 이 이름으로 디렉터리를 만듭니다.

전체 경로가 있는 디렉토리 생성

디렉터리를 생성하려는 전체 경로를 지정할 수 있습니다. 이는 현재 작업 디렉터리가 아닌 다른 위치에 디렉터리를 생성하려는 경우 특히 유용합니다.

mkdir /path/to/new_directory

여기서는 지정된 경로 /path/to/에 new_directory가 생성됩니다.

숨겨진 디렉토리 생성

Linux에서는 점(.)으로 시작하는 모든 파일 또는 디렉터리 이름이 숨겨진 것으로 간주됩니다. 숨겨진 디렉터리를 만들려면 다음을 사용하세요.

mkdir .hidden_directory

이 명령은 .hidden_directory라는 숨겨진 디렉터리를 생성합니다. ls -a를 사용하여 이 디렉터리를 볼 수 있습니다.

기존 디렉터리 덮어쓰기 방지

-p 또는 –parents 옵션을 사용하면 mkdir 명령이 기존 디렉터리를 덮어쓰는 것을 방지할 수도 있습니다.

mkdir -p existing_directory

이 명령을 사용하면 기존 디렉터리가 이미 존재하는 경우 덮어쓰지 않아 잠재적인 데이터 손실을 방지할 수 있습니다.

디렉토리 생성 및 그룹 ID 설정

그만큼 g 옵션을 사용하면 새 디렉터리의 그룹 ID를 설정할 수 있습니다.

mkdir -m g=group_name new_directory

이 명령은 new_directory를 생성하고 해당 그룹 ID를 group_name으로 설정합니다.

디렉토리 생성 및 임시 디렉토리 만들기

그만큼 t 옵션을 사용하면 디렉터리를 임시 디렉터리로 만들 수 있는데, Linux는 이를 표준 디렉터리와 약간 다르게 처리합니다.

mkdir -m t new_directory

이 명령은 new_directory를 임시 디렉터리로 생성합니다. 임시 디렉토리에 생성된 파일은 일반적으로 일정 시간 동안 액세스하지 않으면 삭제됩니다.

여러 수준의 중첩 디렉터리 만들기

그만큼 -p 옵션을 사용하면 단일 명령으로 여러 수준의 중첩 디렉터리를 만들 수 있습니다.

mkdir -p Level1/Level2/Level3/Level4

이 명령은 네 가지 수준의 디렉터리를 생성합니다. Level1은 최상위 디렉터리이고, Level4는 최하위 디렉터리이며, Level2와 Level3은 중간 디렉터리입니다.

사용자, 그룹 및 기타 사용자에 대해 서로 다른 권한을 가진 디렉토리 생성

-m 옵션을 사용하면 사용자, 그룹 및 기타 사용자에 대해 서로 다른 권한을 지정할 수 있습니다.

mkdir -m u=rwx,g=rx,o= new_directory

여기서 new_directory는 사용자(u)에 대한 읽기, 쓰기 및 실행 권한을 갖고, 그룹(g)에 대한 읽기 및 실행 권한을 가지며, 다른 사용자(o)에 대한 권한은 없습니다.

Verbose 모드에서 디렉토리 생성 및 오류 무시

-v 옵션을 -p와 결합하여 오류를 무시하고 자세한 출력을 제공할 수 있습니다.

mkdir -pv existing_directory

이 명령에서 기존 디렉터리가 이미 존재하는 경우 mkdir 명령은 오류를 반환하지 않고 대신 자세한 출력을 제공합니다.

Verbose 모드 없이 디렉토리 만들기

자세한 출력 없이 자동으로 디렉터리를 생성하려면 -v 옵션 없이 mkdir 명령을 사용합니다.

mkdir quiet_directory

이 명령은 메시지를 표시하지 않고 Quiet_directory라는 디렉터리를 생성합니다.

mkdir 명령과 함께 중괄호 확장 사용

중괄호 확장은 mkdir 명령과 함께 일련의 디렉터리를 생성하는 데 사용할 수 있는 Linux의 강력한 기능입니다.

mkdir dir{1..5}

이 명령은 dir1, dir2, dir3, dir4 및 dir5라는 5개의 디렉터리를 생성합니다.

디렉터리 생성 및 고정 비트 설정

고정 비트는 디렉터리 내의 파일을 보호하는 권한 비트입니다. 설정된 경우 파일 소유자 또는 루트 사용자만 파일을 삭제하거나 이름을 바꿀 수 있습니다. 디렉토리를 생성할 때 고정 비트를 설정하는 방법은 다음과 같습니다.

mkdir -m +t new_directory

이 명령을 사용하면 고정 비트가 설정된 new_directory가 생성됩니다.

디렉토리 생성 및 Setuid 및 Setgid 비트 설정

setuid 및 setgid 비트는 디렉토리를 생성할 때 설정할 수 있으며, 이는 디렉토리 내에 생성된 파일 및 디렉토리의 소유권에 영향을 미칩니다. -m 옵션을 사용하면 다음 비트를 설정할 수 있습니다.

mkdir -m u+s,g+s new_directory

이 명령은 setuid 및 setgid 비트가 설정된 new_directory를 생성합니다.

8진수 모드를 사용하여 다양한 권한을 가진 디렉터리 생성

권한 설정을 위한 기호 모드에 대해 이미 논의했지만 mkdir 명령은 8진수 모드도 지원합니다.

mkdir -m 700 private_directory

여기서 private_directory는 '700' 권한(사용자에 대한 읽기, 쓰기, 실행, 그룹 및 기타 권한 없음)으로 설정된 상태로 생성됩니다.

디렉토리를 생성하고 불변으로 만들기

디렉터리를 변경할 수 없게 만들면 루트 사용자라도 디렉터리를 삭제할 수 없습니다. 먼저 디렉터리를 만든 다음 다음을 사용하여 디렉터리를 변경할 수 없게 만듭니다. chattr 명령:

mkdir new_directory
sudo chattr +i new_directory

그러면 new_directory가 생성되고 이를 변경할 수 없게 됩니다.

디렉터리 생성 및 기본 ACL 설정

파일 시스템이 ACL(액세스 제어 목록)을 지원하는 경우 디렉터리를 생성할 때 기본 ACL을 설정할 수 있습니다.

mkdir new_directory
setfacl -d -m g::rwx new_directory

이 명령에서는 new_directory가 먼저 생성된 다음 setfacl 명령이 디렉터리의 기본 ACL을 그룹의 rwx로 설정합니다.

디렉토리 생성 및 SELinux 컨텍스트 설정

SELinux가 활성화된 시스템에서 작업하는 경우 디렉터리를 생성할 때 SELinux 컨텍스트를 설정할 수 있습니다.

mkdir new_directory
chcon -t httpd_sys_content_t new_directory

여기서는 new_directory가 먼저 생성됩니다. 그런 다음 chcon 명령은 new_directory의 SELinux 컨텍스트를 httpd_sys_content_t로 변경합니다.

결론

mkdir 명령과 다양한 옵션을 익히면 Linux 시스템에서 디렉터리를 관리하는 능력이 크게 향상될 수 있습니다. 구문을 이해하고 제공된 예제를 실험해 보면 워크플로를 간소화하고 명령줄 효율성을 향상시킬 수 있습니다. 단일 디렉터리를 생성하든, 여러 디렉터리를 생성하든, 특정 권한을 설정하든 mkdir은 모든 Linux 사용자에게 필수적인 도구입니다.

Joshua James

코멘트를 남겨주세요