Articles

arbejde med filer og mapper

oversigt

undervisning: 30 min
øvelser: 20 min
spø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.

  1. 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 end north pacific gyre/).

  2. begynd ikke navnet med- (dash).

    kommandoer behandler Navne, der starter med- som indstillinger.

  3. 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 kaldet notepad, der kan køres fra kommandolinjen i sammevej som nano 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).

skærmbillede af nano teksteditor i aktion

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 bruge Control-G for at få hjælp og Control-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
  1. hvad gjorde kommandoen touch?Når du ser på din nuværende mappe ved hjælp af GUI-filudforskeren,vises filen?

  2. brug ls -l til at inspicere filerne. Hvor stor er my_file.txt?

  3. Hvornår vil du måske oprette en fil på denne måde?

løsning

  1. touch kommandoen genererer en ny fil kaldetmy_file.txt idin nuværende mappe. Du kan observere denne nyligt genererede fil ved at skrive ls på kommandolinjeprompten. my_file.txt kan også ses i yourgui Filudforsker.

  2. Når du inspicerer filen medls -l, bemærk at størrelsen afmy_file.txt er 0 bytes. Med andre ord indeholder den ingen data.Hvis du åbner my_file.txt ved hjælp af din teksteditor er den tom.

  3. 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 fil mythesis 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, .pdfangiver et PDF-dokument, .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 somwhale.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 tildata-shell directory,

cd ~/Desktop/data-shell/

i vores thesisDirectory Vi har en fil draft.txtsom 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 vi thesis/draft.txt til thesis/quotes.txt,som har samme effekt som omdøbning af filen.Helt sikkert,ls viser os, at thesis indeholder nu en fil kaldet quotes.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(eller mv --interactive), kan bruges til at lave mv bede dig om bekræftelse, før du overskriver.

Bemærk, at mv fungerer også på mapper.

lad os flyttequotes.txt ind i den aktuelle arbejdsmappe.Vi bruger mv endnu en gang,men denne gang bruger vi bare navnet på en mappe som det andet argumentat fortælle mv 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, at thesis 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,at quotes.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 og maltose.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 tilraw/ 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 af ls 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ådethesis og thesis_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?

  1. cp statstics.txt statistics.txt
  2. mv statstics.txt statistics.txt
  3. mv statstics.txt .
  4. cp statstics.txt .

opløsning

  1. Nej. Selvom dette ville oprette en fil med det korrekte navn, eksisterer den forkert navngivne fil stadig i directoryand skal slettes.
  2. ja, dette ville arbejde for at omdøbe filen.
  3. Nej, perioden(.) angiver, hvor filen skal flyttes, men giver ikke et nyt filnavn; identiske filnavnekan ikke oprettes.
  4. 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
  1. proteins-saved.dat recombined
  2. recombined
  3. proteins.dat recombined
  4. proteins-saved.dat

Solution

We start in the /Users/jamie/data directory, and create a new folder called recombined.Den anden linje bevæger sig (mv) filen proteins.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.

  1. Nej, se forklaring ovenfor. proteins-saved.dat er placeret på /Users/jamie
  2. ja
  3. Nej, se forklaring ovenfor. proteins.dater placeret på /Users/jamie/data/recombined
  4. Nej, se forklaring ovenfor. proteins-saved.dat er placeret på /Users/jamie

fjernelse af filer og mapper

vender tilbage tildata-shelldirectory,lad os rydde op i denne mappe ved at fjerne quotes.txt filen, vi oprettede.Den unikke kommando, vi bruger til dette, er rm(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 bruger rm?

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 af rm 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, skalrm -rbruges 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 idata-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 the data-shell/molecules directory:*.pdb matches ethane.pdbpropane.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 matche methane.pdb mens*ethane.pdb matcher begge ethane.pdb og methane.pdb.

jokertegn kan bruges i kombination med hinandender.g. ???ane.pdb matcher tre tegn efterfulgt af ane.pdb,giver cubane.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 i molecules mappe(som kun indeholder filer med navne, der slutter med .pdb) resulterer ien fejlmeddelelse om, at der ikke er nogen fil kaldet *.pdf.Men generelt kommandoer som wc og ls 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, som ls Kommando(R) vilproducerer denne produktion?

ethane.pdb methane.pdb

  1. ls *t*ane.pdb
  2. ls *t?ne.*
  3. ls *t??ne.pdb
  4. ls ethane.*

Solution

The solution is

shows all files whose names contain zero or more characters (*) followed by the letter t, then zero or more characters (*) followed by ane.pdb. Dette giver ethane.pdb methane.pdb octane.pdb pentane.pdb.

viser alle filer, hvis navne starter med nul eller flere tegn (*) efterfulgt af bogstavet t, derefter et enkelt tegn (?), derefter ne. efterfulgt af nul eller flere tegn (*). Dette vil give os octane.pdb og pentane.pdb men matcher ikke noget, der slutter i thane.pdb.

løser problemerne med mulighed 2 ved at matche to tegn (??) mellemt ogne. Dette er løsningen.

viser kun filer, der starter medethane..

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.datogsucrose.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 and sucrose.dat to the analyzed directory.The shell will expand *.dat to match all .dat files in the current directory.The mv 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 navnet raw ogprocessed, der indeholder datafiler. Målet er at kopiere mappestrukturenaf 2016-05-18-data mappen til en mappe kaldet 2016-05-20så 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 formkdir 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å?.txtmatchera.txtmen ikkeany.txt.

  • brug af kontroltasten kan beskrives på mange måder, herunderCtrl-XControl-X og^X.

  • skallen har ikke en skraldespand: når noget er slettet, er det virkelig væk.

  • de fleste filers navne ersomething.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.