Kommandoen mkdir i Linux bruges til at oprette mapper. Det er en grundlæggende kommando, som enhver Linux-bruger bør være bekendt med, da den spiller en afgørende rolle i fil- og mappestyring. Den grundlæggende syntaks for mkdir-kommandoen giver dig mulighed for at oprette en eller flere mapper ad gangen, indstille tilladelser og endda oprette overordnede mapper, hvis de ikke allerede eksisterer. At forstå de forskellige muligheder og syntaks for mkdir kan forbedre din effektivitet betydeligt, når du administrerer filer og mapper på kommandolinjen.
Denne vejledning vil forklare syntaksen for kommandoen mkdir, udforske dens muligheder og give praktiske eksempler på, hvordan man bruger mkdir i forskellige scenarier på et Linux-system.
Syntaks for mkdir-kommandoen
I sin enkleste form følger mkdir-kommandoen denne syntaks:
mkdir [OPTION]... DIRECTORY...
- mkdir er kommandoen til at instruere systemet til at lave en ny mappe.
- [OPTION] er et valgfrit argument, der ændrer kommandoens adfærd.
- DIRECTORY er navnet på den eller de mapper, du vil oprette.
Valgmulighederne tilgængelige med mkdir Command
Der er flere muligheder, du kan bruge med mkdir-kommandoen til at tilpasse dens funktionalitet:
- -m, –mode=MODE: Indstiller filtilstanden (tilladelser) for den nye mappe, ofte repræsenteret som en numerisk streng, som '755' eller '644'.
- -p, –forældre: Hvis de angivne mapper allerede findes, sikrer denne mulighed, at der ikke rapporteres fejl. Det giver også mulighed for at oprette overordnede mapper efter behov.
- -v, –verbose: Giver omfattende output, der forklarer, hvad mkdir-kommandoen gør.
- –hjælp: Viser en hjælpemeddelelse og afslutter.
- –version: Udsender versionsoplysninger og afslutter.
mkdir kommandoeksempler
Oprettelse af en simpel mappe med mkdir
Den mest enkle og almindelige brug af kommandoen mkdir er at oprette en ny mappe:
mkdir new_directory
I denne kommando er new_directory navnet på den mappe, du opretter. Efter at have udført denne kommando, vil en ny mappe med navnet new_directory blive oprettet på din nuværende placering.
Oprettelse af flere mapper med mkdir
Kommandoen mkdir kan også oprette flere mapper samtidigt. Sådan gør du:
mkdir dir1 dir2 dir3
I denne kommando er dir1, dir2 og dir3 navnene på de mapper, der skal oprettes. Denne kommando vil oprette disse tre mapper på din nuværende placering.
Oprettelse af en mappe med specifikke tilladelser med mkdir
Ved at bruge indstillingen -m eller –mode kan du angive tilladelserne for mappen på tidspunktet for dens oprettelse:
mkdir -m 755 new_directory
Her oprettes new_directory med tilladelser sat til '755', hvilket betyder, at ejeren kan læse, skrive og udføre, mens gruppen og andre kun kan læse og udføre.
Oprettelse af indlejrede mapper med mkdir
Indstillingen -p eller –parents tillader oprettelse af overordnede mapper efter behov. For eksempel:
mkdir -p dir1/dir2/dir3
Denne kommando kontrollerer eksistensen af dir1 og dir2, og hvis de ikke findes, opretter den dem. Derefter opretter den dir3 inde i dir2, som er inde i dir1.
Brug af Verbose Output med mkdir
Indstillingen -v eller –verbose får mkdir til at udskrive en besked for hver mappe, den opretter, hvilket kan være nyttigt til fejlfinding eller bekræftelse:
mkdir -v new_directory
Denne kommando vil oprette new_directory og derefter udskrive en meddelelse, der angiver dens oprettelse.
Oprettelse af en mappe med et mellemrum i navnet
Nogle gange ønsker vi at oprette en mappe med et mellemrum i navnet. Vi kan opnå dette ved at sætte biblioteksnavnet i anførselstegn:
mkdir "new directory"
Med denne kommando oprettes en ny mappe med navnet ny mappe (med et mellemrum mellem 'ny' og 'bibliotek').
Kontrollerer version af mkdir
Du kan kontrollere den version af mkdir-kommandoen, der i øjeblikket er installeret på dit system. Dette kan være nyttigt i tilfælde af kompatibilitetsproblemer eller under fejlfinding. For at tjekke versionen kan du bruge:
mkdir --version
Denne kommando viser versionsoplysningerne for den mkdir-kommando, der i øjeblikket er i brug på dit system.
Viser hjælp til mkdir
Hvis du nogensinde har brug for hjælp til at bruge mkdir-kommandoen eller hurtigt vil tjekke dens muligheder, så brug –help-indstillingen:
mkdir --help
Denne kommando udsender en hjælpemeddelelse, der viser brugen og tilgængelige muligheder for kommandoen mkdir.
Oprettelse af mapper fra en tekstfil
Forestil dig, at du har en tekstfil med en liste over mappenavne, som du vil oprette. Du kan gøre dette ved at bruge xargs-kommandoen sammen med mkdir:
xargs mkdir < dir_list.txt
I denne kommando er dir_list.txt en tekstfil, der indeholder listen over mappenavne. Kommandoen vil læse denne fil og oprette mapper med disse navne.
Oprettelse af en mappe med en fuld sti
Du kan angive den fulde sti, hvor du vil oprette mappen. Dette er især nyttigt, når du vil oprette mapper på en anden placering end den aktuelle arbejdsmappe:
mkdir /path/to/new_directory
Her oprettes new_directory i den angivne sti /path/to/.
Oprettelse af en skjult mappe
I Linux betragtes ethvert fil- eller biblioteksnavn, der starter med en prik (.), som skjult. For at oprette en skjult mappe skal du bruge:
mkdir .hidden_directory
Denne kommando vil oprette en skjult mappe med navnet .hidden_directory. Du kan se denne mappe ved hjælp af ls -a.
Forhindre overskrivning af eksisterende mapper
Indstillingen -p eller –parents kan også bruges til at forhindre mkdir-kommandoen i at overskrive eksisterende mapper:
mkdir -p existing_directory
Med denne kommando, hvis exist_directory allerede eksisterer, vil den ikke blive overskrevet, hvilket forhindrer potentielt datatab.
Oprettelse af en mappe og indstilling af gruppe-id
Det g
mulighed giver dig mulighed for at indstille gruppe-id'et for den nye mappe:
mkdir -m g=group_name new_directory
Denne kommando opretter new_directory og indstiller dens gruppe-id til gruppenavn.
Oprettelse af en adressebog og gør den til en midlertidig adressebog
Det t
mulighed giver dig mulighed for at gøre en mappe til en midlertidig mappe, som Linux behandler lidt anderledes end en standard mappe:
mkdir -m t new_directory
Denne kommando vil oprette new_directory som en midlertidig mappe. Filer, der er oprettet i en midlertidig mappe, slettes normalt, når der ikke er adgang til dem i et vist tidsrum.
Oprettelse af flere niveauer af indlejrede mapper
Det -p
mulighed kan bruges til at oprette flere niveauer af indlejrede mapper med en enkelt kommando:
mkdir -p Level1/Level2/Level3/Level4
Denne kommando vil oprette fire niveauer af mapper. Niveau1 er biblioteket på øverste niveau, Niveau4 er biblioteket på nederste niveau, og Niveau2 og Niveau3 er mellemliggende biblioteker.
Oprettelse af en mappe med forskellige tilladelser for bruger, gruppe og andre
Indstillingen -m giver dig mulighed for at angive forskellige tilladelser for bruger, gruppe og andre:
mkdir -m u=rwx,g=rx,o= new_directory
Her oprettes new_directory med læse-, skrive- og eksekveringstilladelser for brugeren (u), læse- og eksekveringstilladelser for gruppen (g), og ingen tilladelser for andre (o).
Oprettelse af en mappe i detaljeret tilstand og ignorering af fejl
Valgmuligheden -v kan kombineres med -p for at ignorere fejl og give detaljerede output:
mkdir -pv existing_directory
I denne kommando, hvis exist_directory allerede eksisterer, vil mkdir-kommandoen ikke returnere en fejl og i stedet give et detaljeret output.
Oprettelse af en mappe uden detaljeret tilstand
Hvis du vil oprette en mappe i stilhed, uden noget udførligt output, skal du bruge kommandoen mkdir uden -v-indstillingen:
mkdir quiet_directory
Denne kommando opretter en mappe med navnet quiet_directory uden at vise nogen besked.
Brug af Brace Expansion med mkdir Command
Brace-udvidelse er en kraftfuld funktion i Linux, der kan bruges med mkdir-kommandoen til at oprette en sekvens af mapper:
mkdir dir{1..5}
Denne kommando vil oprette fem mapper med navnet dir1, dir2, dir3, dir4 og dir5.
Oprettelse af mapper og indstilling af Sticky Bit
Den sticky bit er en tilladelsesbit, der beskytter filerne i en mappe. Hvis det er indstillet, kan filerne kun slettes eller omdøbes af ejeren af filerne eller root-brugeren. Sådan kan du indstille den sticky bit, når du opretter en mappe:
mkdir -m +t new_directory
Med denne kommando oprettes new_directory med sticky bit-sættet.
Oprettelse af en mappe og indstilling af Setuid- og Setgid-bits
Setuid- og setgid-bits kan indstilles, når du opretter en mappe, hvilket påvirker ejerskabet af filer og mapper, der er oprettet i. Indstillingen -m giver dig mulighed for at indstille disse bits:
mkdir -m u+s,g+s new_directory
Denne kommando vil oprette new_directory med setuid og setgid bits sat.
Oprettelse af mapper med forskellige tilladelser ved hjælp af oktal tilstand
Mens vi allerede har diskuteret den symbolske tilstand til indstilling af tilladelser, understøtter mkdir-kommandoen også den oktale tilstand:
mkdir -m 700 private_directory
Her oprettes private_directory med tilladelser sat til '700' (læse, skrive og udføre for brugeren, og ingen tilladelser til gruppe og andre).
Oprettelse af en mappe og gør den uforanderlig
At gøre en mappe uforanderlig forhindrer den i at blive slettet, selv af root-brugeren. Først opretter vi en mappe og gør den derefter uforanderlig ved hjælp af chattr
kommando:
mkdir new_directory
sudo chattr +i new_directory
Dette vil oprette en new_directory og derefter gøre den uforanderlig.
Oprettelse af en mappe og indstilling af standard ACL'er
Hvis dit filsystem understøtter adgangskontrollister (ACL'er), kan du indstille standard-ACL'er, når du opretter en mappe:
mkdir new_directory
setfacl -d -m g::rwx new_directory
I disse kommandoer oprettes først new_directory, og derefter indstiller setfacl-kommandoen standard-ACL for biblioteket til rwx for gruppen.
Oprettelse af en mappe og indstilling af en SELinux-kontekst
Hvis du arbejder på et system med SELinux aktiveret, kan du indstille SELinux-konteksten, når du opretter en mappe:
mkdir new_directory
chcon -t httpd_sys_content_t new_directory
Her oprettes new_directory først. Derefter ændrer chcon-kommandoen SELinux-konteksten for new_directory til httpd_sys_content_t.
Konklusion
At mestre mkdir-kommandoen og dens forskellige muligheder kan i høj grad forbedre din evne til at administrere mapper på et Linux-system. Ved at forstå dens syntaks og eksperimentere med de angivne eksempler kan du strømline din arbejdsgang og forbedre din kommandolinjeeffektivitet. Uanset om du opretter enkelte mapper, flere mapper eller indstiller specifikke tilladelser, er mkdir et vigtigt værktøj for enhver Linux-bruger.