arbejde med filer og mapper
oversigt
undervisning: 30 min
øvelser: 20 minspørgsmål
hvordan kan jeg oprette, kopiere og slette filer og mapper?
hvordan kan jeg redigere filer?
mål
Opret et kataloghierarki, der matcher et givet diagram.
Opret filer i dette hierarki ved hjælp af en editor eller ved at kopiere og omdøbe eksisterende filer.
Slet, Kopier og flyt angivne filer og/eller mapper.
oprettelse af mapper
Vi ved nu,hvordan man udforsker filer og mapper, men hvordan opretter vi dem i første omgang?
trin et: se, hvor vi er, og hvad vi allerede har
lad os gå tilbage til vores data-shell
mappe på Skrivebordetog brug ls -F
for at se, hvad den indeholder:
$ pwd
creatures/ data/ molecules/ north-pacific-gyre/ notes.txt pizza.cfg solar.pdf writing/
Opret en mappe
lad os oprette en ny mappe kaldet thesis
brug af kommandoen mkdir thesis
(som ikke har nogen udgang):
$ mkdir thesis
som du måske gætter ud fra sit navn, mkdir
betyder ‘Mark directory’.Siden thesis
er den relative sti(dvs., har ikke en førende skråstreg, som /what/ever/thesis
),den nye mappe oprettes i det aktuelle arbejdsmappe:
da vi lige har oprettet thesis
Directory, er der intet i det endnu:
$ ls -F thesis
bemærk, at mkdir
er ikke begrænset til at oprette enkeltmapper en ad gangen. -p
mulighed tilladermkdir
for at oprette en mappe med et vilkårligt antal indlejrede undermapper i en enkelt operation:
$ mkdir -p thesis/chapter_1/section_1/subsection_1
-R
mulighed for ls
kommando vil liste alle indlejrede undermapper i en mappe. Lad os bruge ls -FR
til rekursivt at liste det nye kataloghierarki, vi lige har oprettet under thesis
directory:
$ ls -FR thesischapter_1/thesis/chapter_1:section_1/thesis/chapter_1/section_1:subsection_1/thesis/chapter_1/section_1/subsection_1:
to måder at gøre det samme
brug af skallen til at oprette en mappe er ikke anderledes end at bruge en Filudforsker.Hvis du åbner den aktuelle mappe ved hjælp af operativsystemets grafiske Filudforsker,vises mappen
thesis
der også.Mens skallen og filudforskeren er to forskellige måder at interagere med filerne på,er filerne og katalogerne selv de samme.
gode navne til filer og mapper
komplicerede navne på Filer og mapper kan gøre dit liv smertefuldtnår du arbejder på kommandolinjen. Her giver vi et par nyttigetips til navnene på dine filer.
brug ikke mellemrum.
mellemrum kan gøre et navn mere meningsfuldt,men da mellemrum bruges til at adskille argumenter på kommandolinjendet er bedre at undgå dem i navne på Filer og mapper.Du kan bruge
-
eller_
i stedet (f. eks.north-pacific-gyre/
snarere endnorth pacific gyre/
).begynd ikke navnet med
-
(dash).kommandoer behandler Navne, der starter med
-
som indstillinger.Stick med bogstaver, tal,
.
(periode eller ‘fuld stop’),-
(bindestreg) og_
(understregning).mange andre tegn har særlige betydninger på kommandolinjen.Vi vil lære om nogle af disse i løbet af denne lektion.Der er specialtegn, der kan få din kommando til ikke at fungere somforventet og kan endda resultere i tab af data.
Hvis du skal henvise til navne på Filer eller mapper, der har rumeller andre specialtegn, skal du omgive navnet i citater (
""
).
Opret en tekstfil
lad os ændre vores arbejdsmappe tilthesis
brugcd
,kør derefter en teksteditor kaldet Nano for at oprette en fil kaldetdraft.txt
:
$ cd thesis$ nano draft.txt
hvilken Editor?
Når vi siger, ‘
nano
er en teksteditor’ vi mener virkelig ‘tekst’: det kan kun arbejde med almindelige tegndata, ikke tabeller, billeder eller andremenneskevenlige medier. Vi bruger det i eksempler, fordi det er en af deøst komplekse tekstredaktører. Men på grund af dette træk kan detikke være stærkt nok eller fleksibelt nok til det arbejde, du skal gøreefter dette værksted. MacOS) bruger mange programmører Emacs orVim (som begge kræver mere tid til at lære) eller en grafisk editor som f.eksgedit. På vinduer kan du ønskebrug Notepad++. Vinduer har også en indbyggetredaktør kaldetnotepad
, der kan køres fra kommandolinjen i sammevej somnano
med henblik på denne lektion.uanset hvilken editor du bruger, skal du vide, hvor den søger efter og gemmer filer. Hvis du starter den fra skallen, vil den (sandsynligvis)bruge din nuværende arbejdsmappe som standardplacering. Hvis du bruger din computers startmenu, kan det være en god ide at gemme filer i dit skrivebordordokumentkatalog i stedet. Du kan ændre dette ved at navigere tilen anden mappe første gang du ‘Gem som…’
lad os skrive et par tekstlinjer.Når vi er tilfredse med vores tekst, kan vi trykke på Ctrl+O(tryk på Ctrl eller Control-tasten, og mens du holder den nede, skal du trykke på O-tasten) for at skrive vores data til disken(vi bliver spurgt, hvilken fil vi vil gemme dette til:tryk på Retur for at acceptere den foreslåede standard for draft.txt
).
Når vores fil er gemt, kan vi bruge Ctrl+H til at afslutte editoren ogvende tilbage til skallen.
kontrol, Ctrl eller ^ nøgle
kontroltasten kaldes også ‘Ctrl’ – tasten. Der er forskellige måderhvor brug af kontrolnøglen kan beskrives. For eksempel kan du se en instruktion om at trykke på kontroltasten, og mens du holder den nede,skal du trykke på:
Control-X
Control+X
Ctrl-X
Ctrl+X
^X
C-x
i nano, langs bunden af skærmen vil du se
^G Get Help ^O WriteOut
.Det betyder, at du kan brugeControl-G
for at få hjælp ogControl-O
for at gemme dinfil.
nano
efterlader ikke noget output på skærmen,efter at det er afsluttet, men ls
viser nu, at vi har oprettet en fil kaldet draft.txt
:
$ ls
draft.txt
oprettelse af filer på en anden måde
vi har set, hvordan man opretter tekstfiler ved hjælp af
nano
editor.Prøv nu følgende kommando:$ touch my_file.txt
hvad gjorde kommandoen
touch
?Når du ser på din nuværende mappe ved hjælp af GUI-filudforskeren,vises filen?brug
ls -l
til at inspicere filerne. Hvor stor ermy_file.txt
?Hvornår vil du måske oprette en fil på denne måde?
løsning
touch
kommandoen genererer en ny fil kaldetmy_file.txt
idin nuværende mappe. Du kan observere denne nyligt genererede fil ved at skrivels
på kommandolinjeprompten.my_file.txt
kan også ses i yourgui Filudforsker.Når du inspicerer filen med
ls -l
, bemærk at størrelsen afmy_file.txt
er 0 bytes. Med andre ord indeholder den ingen data.Hvis du åbnermy_file.txt
ved hjælp af din teksteditor er den tom.nogle programmer genererer ikke outputfiler selv, menkræver i stedet, at tomme filer allerede er genereret.Når programmet køres, søger det efter en eksisterende fil topopulate med dens output. Touch-kommandoen giver dig mulighed foreffektivt generere en tom tekstfil, der skal bruges af sådanneprogrammer.
hvad er der i et navn?
Du har måske bemærket, at alle Nelles filer hedder ‘noget dotsomething’, og i denne del af lektionen brugte vi altid udvidelsen
.txt
. Dette er bare en konvention: vi kan kalde en filmythesis
ellernæsten alt andet, vi ønsker. De fleste bruger dog todelte navnedet meste af tiden for at hjælpe dem (og deres programmer) med at fortælle forskellige slags filer fra hinanden. Den anden del af et sådant navn kaldesfilnavn udvidelse, og indikererhvilken type data filen indeholder:.txt
signalerer en almindelig tekstfil,.cfg
er en konfigurationsfil fuld af parametrefor et eller andet program eller andet,.png
er et PNG-billede, og så videre.dette er bare en konvention, omend en vigtig. Filer indeholderbytes: det er op til os og vores programmer at fortolke disse bytesi henhold til reglerne for almindelige tekstfiler, PDF-dokumenter, konfigurationsfiler, billeder og så videre.
navngivning af et PNG-billede af en hval som
whale.mp3
gør det ikke på en eller anden måde magisk til en optagelse af hvalsang, selvom det måske får operativsystemet til at prøve at åbne det med en musikafspillernår nogen dobbeltklikker på det.flytning af filer og mapper
vender tilbage til
data-shell
directory,cd ~/Desktop/data-shell/
i vores
thesis
Directory Vi har en fildraft.txt
som ikke er et særligt informativt navn,så lad os ændre filens navn ved hjælp afmv
, som er forkortelse for ‘move’:$ mv thesis/draft.txt thesis/quotes.txt
det første argument fortæller
mv
hvad vi ‘bevæger os’,mens det andet er, hvor det skal hen.I dette tilfælde flytter vithesis/draft.txt
tilthesis/quotes.txt
,som har samme effekt som omdøbning af filen.Helt sikkert,ls
viser os, atthesis
indeholder nu en fil kaldetquotes.txt
:$ ls thesis
quotes.txt
man skal være forsigtig, når man angiver målfilnavnet, da
mv
vil overskrive enhver eksisterende fil med samme navn, som kunneføre til datatab. En ekstra mulighed,mv -i
(ellermv --interactive
), kan bruges til at lavemv
bede dig om bekræftelse, før du overskriver.Bemærk, at
mv
fungerer også på mapper.lad os flytte
quotes.txt
ind i den aktuelle arbejdsmappe.Vi brugermv
endnu en gang,men denne gang bruger vi bare navnet på en mappe som det andet argumentat fortællemv
at vi vil beholde filnavnet,men læg filen et nyt sted.(Dette er grunden til, at kommandoen kaldes ‘flytte’.) I dette tilfælde er det katalognavn, vi bruger, det specielle katalognavn.
som vi nævnte tidligere.$ mv thesis/quotes.txt .
effekten er at flytte filen fra den mappe, den var i, til den aktuelle arbejdsmappe.
ls
viser os nu, atthesis
er tom:$ ls thesis
yderligere,
ls
med et filnavn eller mappenavn som argument viser kun den pågældende fil eller mappe.Vi kan bruge dette til at se,atquotes.txt
er stadig i vores nuværende mappe:flytning af filer til en ny mappe
efter at have kørt følgende kommandoer, indser Jamie, at hun sætter filerne
sucrose.dat
ogmaltose.dat
i den forkerte mappe. Filerne skulle have været placeret i mappenraw
.$ ls -F analyzed/ raw/$ ls -F analyzedfructose.dat glucose.dat maltose.dat sucrose.dat$ cd analyzed
udfyld emnerne for at flytte disse filer til
raw/
mappe(dvs.den hun glemte at sætte dem i)$ mv sucrose.dat maltose.dat ____/____
opløsning
$ mv sucrose.dat maltose.dat ../raw
husk at
..
henviser til den overordnede mappe (dvs. en over den aktuelle mappe), og at.
henviser til den aktuelle mappe.kopiering af filer og mapper
cp
kommandoen fungerer meget sommv
,bortset fra at den kopierer en fil i stedet for at flytte den.Vi kan kontrollere, at det gjorde det rigtige ved hjælp afls
med to stier som argumenter — som de fleste unikke kommandoer,ls
kan gives flere stier på en gang:$ cp quotes.txt thesis/quotations.txt$ ls quotes.txt thesis/quotations.txt
quotes.txt thesis/quotations.txt
Vi kan også kopiere en mappe og alt dens indhold ved at bruge therecursive option
-r
, f. eks. at sikkerhedskopiere en mappe:$ cp -r thesis thesis_backup
Vi kan kontrollere resultatet ved at notere indholdet af både
thesis
ogthesis_backup
directory:$ ls thesis thesis_backup
thesis:quotations.txtthesis_backup:quotations.txt
omdøbning af filer
Antag, at du oprettede en almindelig tekstfil i din nuværende mappe til at indeholde en liste overstatistiske tests, du skal gøre for at analysere dine data, og navngivet det:
statstics.txt
når du har oprettet og gemt denne fil, indser du, at du stavede filnavnet forkert! Du vilkorrigere fejlen, hvilken af følgende kommandoer kan du bruge til at gøre det?
cp statstics.txt statistics.txt
mv statstics.txt statistics.txt
mv statstics.txt .
cp statstics.txt .
opløsning
- Nej. Selvom dette ville oprette en fil med det korrekte navn, eksisterer den forkert navngivne fil stadig i directoryand skal slettes.
- ja, dette ville arbejde for at omdøbe filen.
- Nej, perioden(.) angiver, hvor filen skal flyttes, men giver ikke et nyt filnavn; identiske filnavnekan ikke oprettes.
- Nej, perioden(.) angiver, hvor filen skal kopieres, men angiver ikke et nyt filnavn; identiske filnavnekan ikke oprettes.
flytning og kopiering
Hvad er udgangen af lukningen
ls
kommando i sekvensen vist nedenfor?$ pwd
/Users/jamie/data
$ ls
proteins.dat
$ mkdir recombined$ mv proteins.dat recombined/$ cp recombined/proteins.dat ../proteins-saved.dat$ ls
proteins-saved.dat recombined
recombined
proteins.dat recombined
proteins-saved.dat
Solution
We start in the
/Users/jamie/data
directory, and create a new folder calledrecombined
.Den anden linje bevæger sig (mv
) filenproteins.dat
til den nye mappe (recombined
).Den tredje linje laver en kopi af den fil, vi lige har flyttet. Den vanskelige del her er, hvor filen varkopieret til. Husk at..
betyder ‘gå op et niveau’, så den kopierede fil er nu i/Users/jamie
.Bemærk, at..
fortolkes med hensyn til den aktuelle arbejdemappe, ikke med hensyn til placeringen af den fil, der kopieres.Så det eneste, der vises ved hjælp af ls (i/Users/jamie/data
) er den rekombinerede mappe.
- Nej, se forklaring ovenfor.
proteins-saved.dat
er placeret på/Users/jamie
- ja
- Nej, se forklaring ovenfor.
proteins.dat
er placeret på/Users/jamie/data/recombined
- Nej, se forklaring ovenfor.
proteins-saved.dat
er placeret på/Users/jamie
fjernelse af filer og mapper
vender tilbage til
data-shell
directory,lad os rydde op i denne mappe ved at fjernequotes.txt
filen, vi oprettede.Den unikke kommando, vi bruger til dette, errm
(forkortelse for’fjern’):$ rm quotes.txt
Vi kan bekræfte, at filen er gået ved hjælp af
ls
:$ ls quotes.txt
ls: cannot access 'quotes.txt': No such file or directory
sletning er for evigt
den unikke shell har ikke en papirkurv, som vi kan gendanne deletedfiles fra (selvom de fleste grafiske grænseflader til unik gør). I stedet, når vi sletter filer, fjernes de fra filsystemet, såderes lagerplads på disken kan genbruges. Værktøjer til at finde andrecovering slettede filer findes, men der er ingen garanti de ‘ ll arbejde i en bestemt situation, da computeren kan genbruge thefile diskplads med det samme.
brug af rm sikkert
Hvad sker der, når vi udfører
rm -i thesis_backup/quotations.txt
?Hvorfor vil vi have denne beskyttelse, når du brugerrm
?løsning
$ rm: remove regular file 'thesis_backup/quotations.txt'? y
-i
valgmulighed vil spørge før (hver) fjernelse (Brug Y til at bekræfte sletning eller N for at holde filen).Den unikke skal har ikke en skraldespand, så alle de fjernede filer forsvinder forever.By ved hjælp af-i
har vi chancen for at kontrollere, at vi kun sletter de filer, vi vil fjerne.Hvis vi forsøger at fjerne
thesis
mappe ved hjælp afrm thesis
,får vi en fejlmeddelelse:$ rm thesis
rm: cannot remove `thesis': Is a directory
dette sker, fordi
rm
som standard fungerer kun på filer, Ikke mapper.
rm
kan fjerne en mappe og alt dens indhold, hvis vi bruger dencursive mulighed-r
, og det vil gøre det uden nogen bekræftelsesanmodninger:$ rm -r thesis
da der ikke er nogen måde at hente filer slettet ved hjælp af skallen, skal
rm -r
bruges med stor forsigtighed (Du kan overveje at tilføje den interaktive mulighedrm -r -i
).operationer med flere filer og mapper
ofte skal man kopiere eller flytte flere filer på en gang. Dette kan gøres ved at angive en liste over individuelle filnavne eller angive et navngivningsmønster ved hjælp af jokertegn.
kopier med flere filnavne
til denne øvelse kan du teste kommandoerne i
data-shell/data
mappe.hvad gør
cp
i eksemplet nedenfor, når der gives flere filnavne og et mappenavn?$ mkdir backup$ cp amino-acids.txt animals.txt backup/
i eksemplet nedenfor, Hvad gør
cp
gør når der gives tre eller flere filnavne?$ ls -F
løsning
Hvis der gives mere end et filnavn efterfulgt af et mappenavn (dvs.destinationsmappen skal være det sidste argument),
cp
kopierer filerne til den navngivne mappe.Hvis der gives tre filnavne,
cp
kaster en fejl som den nedenfor, fordi den forventer en directoryname som det sidste argument.cp: target ‘morse.txt’ is not a directory
Using wildcards for accessing multiple files at once
Wildcards
*
is a wildcard, which matches zero or more characters.Let’s consider thedata-shell/molecules
directory:*.pdb
matchesethane.pdb
propane.pdb
, and everyfile that ends with ‘.pdb’. På den anden sidep*.pdb
matcher kunpentane.pdb
ogpropane.pdb
, fordi ‘p’ på forsiden kunpatcher filnavne, der begynder med bogstavet ‘p’.
?
er også et jokertegn, men det matcher nøjagtigt et character.So?ethane.pdb
ville matchemethane.pdb
mens*ethane.pdb
matcher beggeethane.pdb
ogmethane.pdb
.jokertegn kan bruges i kombination med hinandender.g.
???ane.pdb
matcher tre tegn efterfulgt afane.pdb
,givercubane.pdb ethane.pdb octane.pdb
.når skallen ser et jokertegn, udvides jokertegnet til at oprette alist af matchende filnavne, før du kører den kommando, der blev bedt om. Som en undtagelse, hvis et jokertegnudtryk ikke matcherenhver fil, bash vil videregive udtrykket som et argument til kommandoensom det er. For eksempel at skrive
ls *.pdf
imolecules
mappe(som kun indeholder filer med navne, der slutter med.pdb
) resulterer ien fejlmeddelelse om, at der ikke er nogen fil kaldetwc
ogls
se listerne overfilnavne, der matcher disse udtryk, men ikke vildkortene selv. Det er skallen, ikke de andre programmer, der beskæftiger sig medudvidende jokertegn, og dette er et andet eksempel på ortogonalt design.List filnavne, der matcher et mønster
når du kører i
molecules
mappe, somls
Kommando(R) vilproducerer denne produktion?
ethane.pdb methane.pdb
ls *t*ane.pdb
ls *t?ne.*
ls *t??ne.pdb
ls ethane.*
Solution
The solution is
shows all files whose names contain zero or more characters (
*
) followed by the lettert
, then zero or more characters (*
) followed byane.pdb
. Dette giverethane.pdb methane.pdb octane.pdb pentane.pdb
.
viser alle filer, hvis navne starter med nul eller flere tegn (
*
) efterfulgt af bogstavett
, derefter et enkelt tegn (?
), derefterne.
efterfulgt af nul eller flere tegn (*
). Dette vil give osoctane.pdb
ogpentane.pdb
men matcher ikke noget, der slutter ithane.pdb
.
løser problemerne med mulighed 2 ved at matche to tegn (
??
) mellemt
ogne
. Dette er løsningen.
viser kun filer, der starter med
ethane.
.mere om jokertegn
Sam har en mappe, der indeholder kalibreringsdata, datasæt og beskrivelser af datasættene:
.├── 2015-10-23-calibration.txt├── 2015-10-23-dataset1.txt├── 2015-10-23-dataset2.txt├── 2015-10-23-dataset_overview.txt├── 2015-10-26-calibration.txt├── 2015-10-26-dataset1.txt├── 2015-10-26-dataset2.txt├── 2015-10-26-dataset_overview.txt├── 2015-11-23-calibration.txt├── 2015-11-23-dataset1.txt├── 2015-11-23-dataset2.txt├── 2015-11-23-dataset_overview.txt├── backup│ ├── calibration│ └── datasets└── send_to_bob ├── all_datasets_created_on_a_23rd └── all_november_files
før hun går ud til en anden Ekskursion, vil hun sikkerhedskopiere sine data ogsend nogle datasæt til sin kollega Bob. Sam bruger følgende kommandoerfor at få arbejdet gjort:
$ cp *dataset* backup/datasets$ cp ____calibration____ backup/calibration$ cp 2015-____-____ send_to_bob/all_november_files/$ cp ____ send_to_bob/all_datasets_created_on_a_23rd/
hjælp Sam ved at udfylde emnerne.
den resulterende mappestruktur skal se sådan ud
.├── 2015-10-23-calibration.txt├── 2015-10-23-dataset1.txt├── 2015-10-23-dataset2.txt├── 2015-10-23-dataset_overview.txt├── 2015-10-26-calibration.txt├── 2015-10-26-dataset1.txt├── 2015-10-26-dataset2.txt├── 2015-10-26-dataset_overview.txt├── 2015-11-23-calibration.txt├── 2015-11-23-dataset1.txt├── 2015-11-23-dataset2.txt├── 2015-11-23-dataset_overview.txt├── backup│ ├── calibration│ │ ├── 2015-10-23-calibration.txt│ │ ├── 2015-10-26-calibration.txt│ │ └── 2015-11-23-calibration.txt│ └── datasets│ ├── 2015-10-23-dataset1.txt│ ├── 2015-10-23-dataset2.txt│ ├── 2015-10-23-dataset_overview.txt│ ├── 2015-10-26-dataset1.txt│ ├── 2015-10-26-dataset2.txt│ ├── 2015-10-26-dataset_overview.txt│ ├── 2015-11-23-dataset1.txt│ ├── 2015-11-23-dataset2.txt│ └── 2015-11-23-dataset_overview.txt└── send_to_bob ├── all_datasets_created_on_a_23rd │ ├── 2015-10-23-dataset1.txt │ ├── 2015-10-23-dataset2.txt │ ├── 2015-10-23-dataset_overview.txt │ ├── 2015-11-23-dataset1.txt │ ├── 2015-11-23-dataset2.txt │ └── 2015-11-23-dataset_overview.txt └── all_november_files ├── 2015-11-23-calibration.txt ├── 2015-11-23-dataset1.txt ├── 2015-11-23-dataset2.txt └── 2015-11-23-dataset_overview.txt
opløsning
$ cp *calibration.txt backup/calibration$ cp 2015-11-* send_to_bob/all_november_files/$ cp *-23-dataset* send_to_bob/all_datasets_created_on_a_23rd/
organisering af mapper og filer
Jamie arbejder på et projekt, og hun ser, at hendes filer ikke er meget velorganiserede:
$ ls -F
analyzed/ fructose.dat raw/ sucrose.dat
fructose.dat
ogsucrose.dat
filer indeholder output fra hendes dataanalyse. Hvilke kommandoer, der er omfattet af denne lektion, skal hun køre, så kommandoerne nedenfor vilproducere det viste output?$ ls -F
analyzed/ raw/
$ ls analyzed
fructose.dat sucrose.dat
Solution
mv *.dat analyzed
Jamie needs to move her files
fructose.dat
andsucrose.dat
to theanalyzed
directory.The shell will expand *.dat to match all .dat files in the current directory.Themv
command then moves the list of .DAT filer til’ analyseret ‘ mappe.Gengiv en mappestruktur
du starter et nyt eksperiment og vil gerne duplikere directorystruktur fra dit tidligere eksperiment, så du kan tilføje nye data.
Antag, at det forrige eksperiment er i en mappe kaldet ‘2016-05-18’,som indeholder en
data
mappe, der igen indeholder mapper med navnetraw
ogprocessed
, der indeholder datafiler. Målet er at kopiere mappestrukturenaf2016-05-18-data
mappen til en mappe kaldet2016-05-20
så din endelige mappestruktur ser sådan ud:2016-05-20/└── data ├── processed └── raw
hvilket af følgende sæt kommandoer ville nå dette mål?Hvad ville de andre kommandoer gøre?
$ mkdir 2016-05-20$ mkdir 2016-05-20/data$ mkdir 2016-05-20/data/processed$ mkdir 2016-05-20/data/raw
div >$ mkdir -p 2016-05-20/data/raw$ mkdir -p 2016-05-20/data/processed
$ mkdir 2016-05-20$ cd 2016-05-20$ mkdir data$ mkdir raw processed
løsning
de første to sæt kommandoer opnår dette mål.Det første sæt bruger relative stier til at oprette det øverste niveau mappe førundermapper.
det tredje sæt kommandoer giver en fejl, fordi standardadfærden for
mkdir
opretter ikke en underdirektorataf en ikke-eksisterende mappe: mapperne på mellemniveau skal oprettes først.det fjerde sæt kommandoer opnår dette mål. Husk, at
-p
, efterfulgt af en sti til en eller flere mapper, vil medføremkdir
for at oprette mellemliggende undermapper efter behov.det endelige sæt kommandoer genererer de’ rå ‘og’ behandlede ‘mapper på samme niveausom’ data ‘ – mappen.
nøglepunkter
cp
kopierer en fil.
mkdir
opretter en ny mappe.
mv
flytter (omdøber) en fil eller mappe.
rm
fjerner (sletter) en fil.
*
matcher nul eller flere tegn i et filnavn, så*.txt
matcher alle filer, der slutter i.txt
.
?
matcher et enkelt tegn i et filnavn, så?.txt
matchera.txt
men ikkeany.txt
.brug af kontroltasten kan beskrives på mange måder, herunder
Ctrl-X
Control-X
og^X
.skallen har ikke en skraldespand: når noget er slettet, er det virkelig væk.
de fleste filers navne er
something.extension
. Udvidelsen er ikke påkrævet og garanterer ikke noget, men bruges normalt til at angive datatypen i filen.afhængigt af hvilken type arbejde du udfører, har du muligvis brug for en mere kraftfuld teksteditor end Nano.
Leave a Reply