Articles

arbeta med filer och kataloger

översikt

undervisning: 30 min
övningar: 20 min
frågor

  • hur kan jag skapa, kopiera och ta bort filer och kataloger?

  • hur kan jag redigera filer?

mål

  • skapa en kataloghierarki som matchar ett givet diagram.

  • skapa filer i den hierarkin med en redigerare eller genom att kopiera och byta namn på befintliga filer.

  • Ta bort, kopiera och flytta angivna filer och / eller kataloger.

skapa kataloger

vi vet nu hur man utforskar filer och kataloger,men hur skapar vi dem i första hand?

steg ett: se var vi är och vad vi redan har

låt oss gå tillbaka till vår data-shell katalog på Skrivbordetoch använd ls -F för att se vad den innehåller:

$ pwd
/Users/nelle/Desktop/data-shell
$ ls -F
creatures/ data/ molecules/ north-pacific-gyre/ notes.txt pizza.cfg solar.pdf writing/

skapa en katalog

låt oss skapa en ny katalog som heter thesis med kommandot mkdir thesis(som inte har någon utgång):

$ mkdir thesis

som du kanske gissar från dess namn betydermkdir ”Mark directory”.Eftersom thesis är den relativa sökvägen (dvs., har inte ett ledande snedstreck, som /what/ever/thesis),den nya katalogen skapas i den aktuella arbetskatalogen:

$ ls -F
creatures/ data/ molecules/ north-pacific-gyre/ notes.txt pizza.cfg solar.pdf thesis/ writing/

eftersom vi just har skapat thesis katalogen finns det inget i det ännu:

$ ls -F thesis

Observera att mkdir är inte begränsat till att skapa enstaka kataloger en i taget. Alternativet-p tillåtermkdir för att skapa en katalog med valfritt antal kapslade underkataloger i en enda operation:

$ mkdir -p thesis/chapter_1/section_1/subsection_1

-R alternativet till kommandotls listar alla kapslade underkataloger i en katalog. Låt oss använda ls -FR för att rekursivt lista den nya kataloghierarkin som vi just skapade under thesis katalog:

$ ls -FR thesischapter_1/thesis/chapter_1:section_1/thesis/chapter_1/section_1:subsection_1/thesis/chapter_1/section_1/subsection_1:

två sätt att göra samma sak

att använda skalet för att skapa en katalog är inte annorlunda än att använda en filutforskare.Om du öppnar den aktuella katalogen med operativsystemets grafiska Filutforskare visas katalogen thesis där också.Medan skalet och Filutforskaren är två olika sätt att interagera med filerna,är filerna och katalogerna själva desamma.

bra namn för filer och kataloger

komplicerade namn på filer och kataloger kan göra ditt liv smärtsamtnär du arbetar på kommandoraden. Här ger vi några användbaratips för namnen på dina filer.

  1. använd inte mellanslag.

    mellanslag kan göra ett namn mer meningsfullt,men eftersom mellanslag används för att skilja argument på kommandoradendet är bättre att undvika dem i namn på filer och kataloger.Du kan använda -eller _ istället (t. ex. north-pacific-gyre/ snarare än north pacific gyre/).

  2. börja inte namnet med- (streck).

    kommandon behandlar namn som börjar med - som alternativ.

  3. Stick med bokstäver, siffror, . (period eller”full stop”), - (dash) och _ (understreck).

    många andra tecken har speciella betydelser på kommandoraden.Vi kommer att lära oss om några av dessa under denna lektion.Det finns specialtecken som kan göra att ditt kommando inte fungerar somförväntat och kan till och med leda till dataförlust.

Om du behöver hänvisa till namn på filer eller kataloger som har mellanslageller andra specialtecken, bör du omge namnet i citat ("").

skapa en textfil

låt oss ändra vår arbetskatalog tillthesis användacd,kör sedan en textredigerare som heter Nano för att skapa en fil som heterdraft.txt:

$ cd thesis$ nano draft.txt

vilken redaktör?

När vi säger, ’nano är en textredigerare’ vi menar verkligen ’text’: det kan bara fungera med vanliga teckendata, inte tabeller, bilder eller andramänskliga medier. Vi använder det i exempel eftersom det är en avminst komplexa textredigerare. Men på grund av detta drag kan detinte vara tillräckligt kraftfullt eller tillräckligt flexibelt för det arbete du behöver göraefter denna workshop. På Unix-system (som Linux och macOS) använder många programmerare Emacs orVim (som båda kräver mer tid att lära sig) eller en grafisk redigerare somgedit. På Windows kanske du önskaranvänd Notepad++. Windows har också en inbyggdredigerare som heter notepad som kan köras från kommandoraden på samma sättsätt som nano för den här lektionen.

oavsett vilken redaktör du använder måste du veta var den söker och sparar filer. Om du startar det från skalet kommer det (förmodligen)att använda din nuvarande arbetskatalog som standardplats. Om du använderdin dators startmeny, kanske det vill spara filer i skrivbordet ordocuments katalog istället. Du kan ändra detta genom att navigera tillen annan katalog första gången du ’Spara som…’

låt oss skriva in några rader text.När vi är nöjda med vår text kan vi trycka på Ctrl+O(tryck på Ctrl eller Control-tangenten och, medan du håller ner den, tryck på O-tangenten) för att skriva våra data till disken(vi blir frågade vilken fil vi vill spara detta till:tryck på Retur för att acceptera den föreslagna standardvärdet för draft.txt).

skärmdump av nano textredigerare i aktion

När vår fil har sparats kan vi använda Ctrl+X för att avsluta redigeraren ochåtergå till skalet.

kontroll, Ctrl eller ^ Nyckel

kontrollknappen kallas också ”Ctrl” – tangenten. Det finns olika sättdär användning av Kontrollnyckeln kan beskrivas. Du kan till exempel se en instruktion för att trycka på kontrollknappen och, medan du håller ner den, tryck på X-tangenten, beskriven som någon av:

  • Control-X
  • Control+X
  • Ctrl-X
  • Ctrl+X
  • ^X
  • C-x

i nano, längst ner på skärmen ser du ^G Get Help ^O WriteOut.Det betyder att du kan använda Control-G för att få hjälp och Control-O för att spara dinfil.

nano lämnar ingen utgång på skärmen efter att den har avslutats,men ls visar nu att vi har skapat en fil som heter draft.txt:

$ ls
draft.txt

skapa filer på ett annat sätt

vi har sett hur man skapar textfiler med nanoredaktör.Prova nu följande kommando:

$ touch my_file.txt
  1. vad gjorde kommandot touch?När du tittar på din nuvarande katalog med GUI file explorer,visas filen?

  2. användls -l för att inspektera filerna. Hur stor är my_file.txt?

  3. När kanske du vill skapa en fil på det här sättet?

lösning

  1. kommandottouch genererar en ny fil som hetermy_file.txt indin nuvarande katalog. Du kan observera den här nyligen genererade filen genom att skriva ls vid kommandotolken. my_file.txt kan också ses i yourGUI file explorer.

  2. När du inspekterar filen med ls -l, Observera att storleken påmy_file.txt är 0 byte. Med andra ord innehåller den Inga data.Om du öppnar my_file.txt med din textredigerare är den tom.

  3. Vissa program genererar inte utdatafiler själva, menistället kräver att tomma filer redan har genererats.När programmet körs söker det efter en befintlig fil topopulera med dess utgång. Touch-kommandot låter dig skapa en tom textfil som ska användas av sådanaprogram.

Vad finns i ett namn?

Du kanske har märkt att alla Nelles filer heter ”something dotsomething”, och i den här delen av lektionen använde vi alltid tillägget.txt. Det här är bara en konvention: vi kan ringa en fil mythesis ellernästan allt annat vi vill ha. Men de flesta använder tvådelade namnmest av tiden för att hjälpa dem (och deras program) att berätta olika typer av filer ifrån varandra. Den andra delen av ett sådant namn kallasfilnamnstillägg och indikerarvilken typ av data filen innehåller: .txt signalerar en vanlig textfil, .pdfindikerar ett PDF-dokument, .cfg är en konfigurationsfil full av parametrarför något program eller annat, .png är en PNG-bild och så vidare.

detta är bara en konvention, om än en viktig. Filer innehållerbyte: det är upp till oss och våra program att tolka dessa bytesenligt reglerna för vanliga textfiler, PDF-dokument, konfigurationfiler, bilder och så vidare.

att namnge en PNG-bild av en val somwhale.mp3 gör det inte på något sätt till en inspelning av whalesong, även om det kan orsaka att operativsystemet försöker öppna det med en musikspelarenär någon dubbelklickar på den.

flytta filer och kataloger

återgå till data-shell katalog,

cd ~/Desktop/data-shell/

i vårthesiskatalog Vi har en fildraft.txtvilket inte är ett särskilt informativt namn,så låt oss ändra filens namn medmv, som är kort för”Move”:

$ mv thesis/draft.txt thesis/quotes.txt

det första argumentet berättarmv vad vi ’rör’, medan den andra är där det är att gå.I det här fallet flyttar vi thesis/draft.txt till thesis/quotes.txt,vilket har samma effekt som att byta namn på filen.Visst nog,ls visar oss att thesis innehåller nu en fil som heter quotes.txt:

$ ls thesis
quotes.txt

man måste vara försiktig när man anger målfilnamnet, eftersom mv kommer att skriva över en befintlig fil med samma namn, vilket kanleda till dataförlust. Ett ytterligare alternativ, mv -i (eller mv --interactive),kan användas för att göra mv be dig om bekräftelse innan du skriver över.

Observera att mv fungerar också på kataloger.

Låt oss flytta quotes.txt till den aktuella arbetskatalogen.Vi använder mv än en gång,men den här gången använder vi bara namnet på en katalog som det andra argumentetatt berätta mv att vi vill behålla filnamnet,men lägg filen någonstans ny.(Det är därför kommandot kallas ’flytta’.) I det här fallet är katalognamnet vi använder det speciella katalognamnet . som vi nämnde tidigare.

$ mv thesis/quotes.txt .

effekten är att flytta filen från katalogen den var i till den aktuella arbetskatalogen.ls visar oss nu att thesis är tom:

$ ls thesis

vidare,ls med ett filnamn eller katalognamn som argument listar bara den filen eller katalogen.Vi kan använda detta för att se att quotes.txt finns fortfarande i vår nuvarande katalog:

quotes.txt

flytta filer till en ny mapp

efter att ha kört följande kommandon inser Jamie att hon lägger filernasucrose.datochmaltose.dat I fel mapp. Filerna borde ha placerats i mappen raw.

$ ls -F analyzed/ raw/$ ls -F analyzedfructose.dat glucose.dat maltose.dat sucrose.dat$ cd analyzed

fyll i tomrummen för att flytta dessa filer till mappen raw/ (dvs den som hon glömde att lägga in dem)

$ mv sucrose.dat maltose.dat ____/____

lösning

$ mv sucrose.dat maltose.dat ../raw

minns att .. hänvisar till överordnade katalogen (dvs. en ovan den aktuella katalogen)och att . hänvisar till den aktuella katalogen.

kopiera filer och kataloger

cp kommandot fungerar väldigt mycket sommv,förutom att det kopierar en fil istället för att flytta den.Vi kan kontrollera att det gjorde det rätta med ls med två sökvägar som argument-som de flesta Unix-kommandon kanls ges flera sökvägar samtidigt:

$ cp quotes.txt thesis/quotations.txt$ ls quotes.txt thesis/quotations.txt
quotes.txt thesis/quotations.txt

Vi kan också kopiera en katalog och allt dess innehåll genom att användakursivt alternativ -r, för att säkerhetskopiera en katalog:

$ cp -r thesis thesis_backup

Vi kan kontrollera resultatet genom att ange innehållet i både thesisochthesis_backupkatalogen:

$ ls thesis thesis_backup
thesis:quotations.txtthesis_backup:quotations.txt

byta namn på filer

anta att du skapade en vanlig textfil i din nuvarande katalog för att innehålla en lista över destatistiska tester du behöver göra för att analysera dina data och namngav den:statstics.txt

När du har skapat och sparat den här filen inser du att du felstavade filnamnet! Du villkorrigera misstaget, vilket av följande kommandon kan du använda för att göra det?

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

lösning

  1. nej. Även om detta skulle skapa en fil med rätt namn, finns den felaktigt namngivna filen fortfarande i katalogenoch skulle behöva raderas.
  2. ja, det här skulle fungera för att byta namn på filen.
  3. nej, perioden(.) anger var filen ska flyttas, men ger inte ett nytt filnamn; identiska filnamnkan inte skapas.
  4. nej, perioden(.) anger var filen ska kopieras, men ger inte ett nytt filnamn; identiska filnamnkan inte skapas.

flytta och kopiera

vad är utgången från det avslutandels kommandot i sekvensen som visas nedan?

$ 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 andra raden flyttar (mv) filen proteins.dat till den nya mappen (recombined).Den tredje raden gör en kopia av filen vi just flyttat. Den knepiga delen här är där filen varkopierade till. Kom ihåg att ..betyder”gå upp en nivå”, så den kopierade filen är nu i /Users/jamie.Observera att .. tolkas med avseende på den aktuella workingdirectory, inte med avseende på platsen för filen som kopieras.Så det enda som kommer att visas med ls (i /Users/jamie/data) är den rekombinerade mappen.

  1. nej, se förklaring ovan. proteins-saved.datfinns på/Users/jamie
  2. ja
  3. nej, se förklaring ovan. proteins.datfinns på /Users/jamie/data/recombined
  4. nej, se förklaring ovan. proteins-saved.dat finns på /Users/jamie

ta bort filer och kataloger

återgå till data-shell katalog,låt oss städa upp den här katalogen genom att ta bort filen quotes.txt vi skapade.UNIX-kommandot vi använder för detta är rm(kort för ”ta bort”):

$ rm quotes.txt

Vi kan bekräfta att filen har gått med ls:

$ ls quotes.txt
ls: cannot access 'quotes.txt': No such file or directory

radering är för alltid

Unix-skalet har inte en papperskorg som vi kan återställa deletedfiles från (även om de flesta grafiska gränssnitt till Unix gör). Istället, när vi tar bort filer, kopplas de bort från filsystemet så attderas lagringsutrymme på disken kan återvinnas. Verktyg för att hitta ochåterhämta raderade filer finns, men det finns ingen garanti för att de fungerar i en viss situation, eftersom datorn kan återvinna filens diskutrymme direkt.

använda RM säkert

vad händer när vi kör rm -i thesis_backup/quotations.txt?Varför skulle vi vilja ha detta skydd när vi använder rm?

lösning

$ rm: remove regular file 'thesis_backup/quotations.txt'? y

-ialternativet kommer att uppmana före (varje) borttagning (använd Y för att bekräfta radering eller N för att behålla filen).Unix-skalet har inte en papperskorg, så alla filer som tas bort försvinner forever.By med alternativet -i har vi chansen att kontrollera att vi bara tar bort de filer som vi vill ta bort.

om vi försöker ta bort thesis katalog med rm thesisfår vi ett felmeddelande:

$ rm thesis
rm: cannot remove `thesis': Is a directory

detta händer eftersom rmsom standard fungerar bara på filer,inte kataloger.

rm kan ta bort en katalog och allt dess innehåll om vi använder therecursive alternativ -r, och det kommer att göra det utan några bekräftelseanmälningar:

$ rm -r thesis

eftersom det inte finns något sätt att hämta filer raderade med skalet, börrm -r användas med stor försiktighet (Du kan överväga att lägga till det interaktiva alternativet rm -r -i).

operationer med flera filer och kataloger

ofta måste man kopiera eller flytta flera filer samtidigt. Detta kan göras genom att tillhandahålla en lista med enskilda filnamn eller ange ett namnmönster med jokertecken.

Kopiera med flera filnamn

för denna övning kan du testa kommandona i katalogendata-shell/data.

i exemplet nedan, vad gör cp när du får flera filnamn och ett katalognamn?

$ mkdir backup$ cp amino-acids.txt animals.txt backup/

i exemplet nedan, vad gör cpnär du får tre eller fler filnamn?

$ ls -F
amino-acids.txt animals.txt backup/ elements/ morse.txt pdb/ planets.txt salmon.txt sunspot.txt
$ cp amino-acids.txt animals.txt morse.txt

lösning

om det ges mer än ett filnamn följt av ett katalognamn (dvs. målkatalogen måste vara det sista argumentet) kopierar cp filerna till den namngivna katalogen.

om det ges tre filnamn kastar cp ett fel som det nedan, eftersom det förväntar sig ett directoryname som det sista argumentet.

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’. Å andra sidan matchar p*.pdb endastpentane.pdb och propane.pdb, eftersom ” p ”endast på framsidanmatchar filnamn som börjar med bokstaven ”p”.

? är också ett jokertecken, men det matchar exakt en character.So ?ethane.pdbskulle matchamethane.pdbmedan*ethane.pdbmatchar bådeethane.pdbochmethane.pdb.

jokertecken kan användas i kombination med varandra.g. ???ane.pdb matchar tre tecken följt av ane.pdb,vilket ger cubane.pdb ethane.pdb octane.pdb.

När skalet ser ett jokertecken expanderar det jokertecknet för att skapa alist av matchande filnamn innan du kör kommandot som var begärt. Som ett undantag, om ett jokerteckenuttryck inte matcharvilken fil som helst, kommer Bash att skicka uttrycket som ett argument till kommandosom det är. Till exempel skriver ls *.pdf i katalogen molecules (som bara innehåller filer med namn som slutar med .pdb) resulterar iett felmeddelande om att det inte finns någon fil som heter *.pdf.Men i allmänhet kommandon som wc och ls se listorna avfilnamn som matchar dessa uttryck, men inte wildcardsthemselves. Det är skalet, inte de andra programmen, som handlar omexpandera jokertecken, och detta är ett annat exempel på ortogonal design.

lista filnamn som matchar ett mönster

När du kör i molecules katalog, som ls kommando(er) kommer att producera denna 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. Detta ger ethane.pdb methane.pdb octane.pdb pentane.pdb.

visar alla filer vars namn börjar med noll eller fler tecken (*) följt av bokstaven t, sedan ett enda tecken (?), sedan följt av noll eller fler tecken (*). Detta ger oss octane.pdb och pentane.pdb men matchar inte något som slutar i thane.pdb.

åtgärdar problemen med alternativ 2 genom att matcha två tecken (??) mellant ochne. Detta är lösningen.

visar bara filer som börjar medethane..

mer om jokertecken

Sam har en katalog som innehåller kalibreringsdata, dataset och beskrivningar av dataset:

.├── 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

innan hon går till en annan fältresa vill hon säkerhetskopiera sina data ochskicka några dataset till sin kollega Bob. Sam använder följande kommandoför att få jobbet 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 genom att fylla i tomrummen.

den resulterande katalogstrukturen ska se ut så här

.├── 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

lö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/

organisera kataloger och filer

Jamie arbetar med ett projekt och hon ser att hennes filer inte är mycket välorganiserade:

$ ls -F
analyzed/ fructose.dat raw/ sucrose.dat

fructose.datochsucrose.datfiler innehåller utdata från hennes dataanalys. Vilket kommando (er) som behandlas i den här lektionen behöver hon köra så att kommandona nedan kommer attproducera utmatningen som visas?

$ 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 till den ’analyserade’ katalogen.

reproducera en mappstruktur

du startar ett nytt experiment och vill duplicera directorystructure från ditt tidigare experiment så att du kan lägga till nya data.

Antag att det föregående experimentet finns i en mapp som heter ”2016-05-18”, som innehåller en data mapp som i sin tur innehåller mappar med namnet raw ochprocessed som innehåller datafiler. Målet är att kopiera mappstrukturenav mappen 2016-05-18-data till en mapp som heter 2016-05-20så att din slutliga katalogstruktur ser ut så här:

2016-05-20/└── data ├── processed └── raw

vilken av följande uppsättning kommandon skulle uppnå detta mål?Vad skulle de andra kommandona göra?

$ mkdir 2016-05-20$ mkdir 2016-05-20/data$ mkdir 2016-05-20/data/processed$ mkdir 2016-05-20/data/raw
$ mkdir 2016-05-20$ cd 2016-05-20$ mkdir data$ cd data$ mkdir raw processed
$ mkdir 2016-05-20/data/raw$ mkdir 2016-05-20/data/processed
$ 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 två första uppsättningarna kommandon uppnår detta mål.Den första uppsättningen använder relativa sökvägar för att skapa toppnivåkatalogen innanunderkataloger.

den tredje uppsättningen kommandon kommer att ge ett fel eftersom standardbeteendet för mkdir skapar inte en underdirektoryav en icke-existerande katalog: mapparna mellannivå måste skapas först.

den fjärde uppsättningen kommandon uppnår detta mål. Kom ihåg att-p, följt av en sökväg för en eller flera kataloger, kommer att orsakamkdir för att skapa några mellanliggande underkataloger efter behov.

den slutliga uppsättningen kommandon genererar katalogerna’ rå ’och’ bearbetade ’på samma nivåsom katalogen’ data’.

nyckelpunkter

  • cp kopierar en fil.

  • mkdir skapar en ny katalog.

  • mv flyttar (byter namn) en fil eller katalog.

  • rm tar bort (raderar) en fil.

  • * matchar noll eller fler tecken i ett filnamn, så *.txt matchar alla filer som slutar på .txt.

  • ? matchar alla enskilda tecken i ett filnamn, så ?.txt matchar a.txt men inte any.txt.

  • användning av kontrollknappen kan beskrivas på många sätt, inklusive Ctrl-XControl-X och ^X.

  • skalet har ingen papperskorg: när något har tagits bort är det verkligen borta.

  • de flesta filernas namn är something.extension. Tillägget krävs inte och garanterar ingenting, men används normalt för att ange typen av data i filen.

  • beroende på vilken typ av arbete du gör kan du behöva en kraftfullare textredigerare än Nano.