Leerdoelen
- Voer
Bash
-opdrachten uit om de volgende taken uit te voeren:- druk de huidige werkdirectory af (
pwd
) - navigeer tussen mappen op je computer (
cd
) - nieuwe mappen maken (
mkdir
) - een lijst met bestanden en submappen in mappen afdrukken (
ls
) - verwijder bestanden (
rm
) en mappen (rm -r
) - bestanden (
cp
) en mappen (cp -r
) naar een andere map kopiëren - maak eenvoudig nieuwe bestanden met een enkele opdracht (
touch
)
- druk de huidige werkdirectory af (
Bash-opdrachten uitvoeren in de terminal
In de vorige sectie over terminalsessies, hebt u geleerd dat de terminal een prompt weergeeft die laat zien dat Bash
wacht op invoer.
Bedenk dat, afhankelijk van de configuratie van uw computer, u mogelijk een ander teken als prompt en / of aanvullende informatie vóór de prompt ziet, zoals uw huidige locatie in de bestandsstructuur van uw computer (bijv. uw huidige werkdirectory).
Wanneer u commando’s typt (uit dit leerboek of uit andere bronnen), typ dan niet het dollarteken (of een andere tekenprompt). Typ alleen de commando’s die erop volgen.
Opmerking: in de voorbeelden op deze pagina zijn de ingesprongen regels die volgen op een prompt en die niet beginnen met een dollarteken ($), de uitvoer van het commando. De resultaten van de onderstaande opdrachten op uw computer zullen enigszins afwijken, afhankelijk van uw besturingssysteem en hoe u uw bestandssysteem heeft aangepast.
Handige bash-opdrachten om mappen en bestanden te beheren
Huidige werkdirectory afdrukken (pwd)
Uw huidige werkdirectory is de directory waarin uw opdrachten worden uitgevoerd. Het wordt meestal afgedrukt als het volledige pad naar de directory (wat betekent dat u de bovenliggende directory kunt zien).
Om de naam van de huidige werkdirectory af te drukken, gebruikt u het commando pwd
.
Omdat dit het eerste commando is dat je hebt uitgevoerd in Bash
in deze sessie is het resultaat van de pwd
het volledige pad naar uw homedirectory. De homedirectory is de standaarddirectory waarin u zich bevindt elke keer dat u een nieuwe Bash
-sessie start.
Windows-gebruikers: merk op dat de Terminal
gebruikt voorwaartse slashes (/
) om mappen binnen een pad aan te duiden. Dit verschilt van de Windows Verkenner die backslashes gebruikt (\
) om mappen binnen een pad aan te geven.
Huidige werkmap wijzigen (cd)
Vaak wil je misschien de huidige werkmap wijzigen, zodat je toegang hebt tot verschillende submappen en bestanden.
Om van mappen te veranderen, gebruik je het commando cd
gevolgd door de naam van de directory (bijv. cd downloads
). Vervolgens kunt u uw huidige werkmap opnieuw afdrukken om het nieuwe pad te controleren.
U kunt bijvoorbeeld de werkmap wijzigen in een bestaande documents
-map onder uw homedirectory en controleer of de huidige werkdirectory is bijgewerkt.
U kunt ga terug naar de bovenliggende directory van een huidige directory met het commando cd ..
, aangezien het volledige pad van de huidige werkdirectory wordt begrepen door Bash
.
Je kunt ook teruggaan naar je homedirectory (bijv. /users/jpalomino
) op elk moment met de opdracht cd ~
(het teken dat bekend staat als de tilde).
Maak een nieuwe directory (mkdir)
De eerste stap bij het aanmaken van een nieuwe directory is om naar de directory te navigeren die je zou willen graag de ouderregisseur zijn y naar deze nieuwe map met cd
.
Gebruik dan het commando mkdir
gevolgd door de naam die je wilt om de nieuwe directory (bijv mkdir directory-name
).
U kunt bijvoorbeeld een nieuwe map maken onder documents
genaamd assignments
. Vervolgens kunt u naar de nieuwe directory met de naam assignments
navigeren en de huidige werkdirectory afdrukken om het nieuwe pad te controleren.
Merk op dat het mkdir
commando geen uitvoer heeft.Omdat assignments
wordt geleverd aan Bash
als een relatief pad (dat wil zeggen: zonder schuine streep of aanvullende padinformatie), de nieuwe map wordt standaard aangemaakt in de huidige werkmap (bijv. documents
).
Datatip: map versus map: je kunt een map zien als een map. Onthoud echter dat de term directory rekening houdt met de relatie tussen die map en de mappen erin en eromheen.
Datatip: merk op dat u een gemakkelijk te lezen directorynaam aan het maken bent. De naam heeft geen spaties en gebruikt alleen kleine letters om het lezen van de machine onderweg te ondersteunen.
Druk een lijst met bestanden en submappen af (ls)
Om een lijst van alle submappen en bestanden in uw huidige werkdirectory, gebruik dan het commando ls
.
In het bovenstaande voorbeeld, ls
printte de inhoud van de homedirectory die de subdirectory’s documents
en downloads
en de bestanden met de naam addresses.txt
en grades.txt
.
U kunt doorgaan om je huidige werkmap te veranderen in een submap zoals documents
en een nieuwe lijst met alle bestanden en submappen af te drukken om je nieuw gemaakte assignments
te zien directory.
Je kunt ook een nieuwe subdirectory maken onder assignments
genaamd , en maak een lijst van de inhoud van de assignments
directory om de nieuw gemaakte homeworks
te zien.
Verwijder een bestand (rm)
Om een specifiek bestand te verwijderen, kunt u gebruik het commando rm
gevolgd door de naam van het bestand dat je wilt verwijderen (bijv. rm filename
).
U kunt bijvoorbeeld het addresses.txt
-bestand verwijderen uit de basismap.
Verwijder een directory (rm -r)
Om te verwijderen (dwz verwijderen) een map en alle submappen en bestanden die het bevat, navigeer naar de bovenliggende map en gebruik vervolgens het commando rm -r
gevolgd door de naam van de map die u wilt verwijderen (bijv. rm -r directory-name
).
U kunt bijvoorbeeld de assignments
directory verwijderen onder de documents
directory omdat het niet voldoet aan de vereiste van een goede naam voor een directory (dwz niet voldoende beschrijvend – wat voor soort toewijzingen?).
De rm
staat voor remove, terwijl de -r
nodig is om vertel Bash
dat het de opdracht moet herhalen (of herhalen) via een lijst van alle bestanden en sub-directory binnen de bovenliggende directory.
Dus de nieuw aangemaakte homeworks
directory onder assignments
wordt ook verwijderd als assignments
wordt verwijderd.
Kopieer een bestand (cp)
Je kunt ook een specifiek bestand naar een nieuwe map kopiëren met het commando cp
gevolgd door de naam van het bestand dat u wilt kopiëren en de naam van de map waarnaar u het bestand wilt kopiëren (bijv cp filename directory-name
).
U kunt bijvoorbeeld grades.txt
van de basismap kopiëren naar documents
.
Let op: de originele kopie van het bestand blijft in de originele directory, dus je zou nu twee exemplaren hebben van grades.txt
, de originele in de homedirectory en de kopie onder documents
.
Kopieer een directory en zijn inhoud (cp -r)
Op dezelfde manier kunt u een hele directory naar een andere directory kopiëren met cp -r
gevolgd door de directorynaam die u wilt kopiëren en de naam van de directory waarnaar u de directory wilt kopiëren (bijv. cp -r directory-name-1 directory-name-2
).
Vergelijkbaar met rm -r
, -r
in cp -r
is nodig om Bash
te vertellen dat het de opdracht moet herhalen (of herhalen) door een lijst van alle bestanden en sub-directory binnen de bovenliggende directory.
Nogmaals, de originele kopie van de directory blijft in de originele directory.
Maak een nieuw bestand met een enkele opdracht (touch)
U kunt een nieuw leeg bestand maken met de enkele opdracht touch
(bijv touch file-name.txt
). Deze opdracht is oorspronkelijk gemaakt om de tijdstempels van bestanden te beheren.Als een bestand echter nog niet bestaat, maakt de opdracht het bestand.
Dit is een ongelooflijk handige manier om snel en programmatisch een nieuw leeg bestand te maken dat op een later tijdstip kan worden gevuld.
Oefen je basische vaardigheden
Projectorganisatie is een integraal onderdeel tot efficiënt onderzoek. In deze challenge gebruik je Bash
om een earth-analytics
directory te maken die je in dit leerboek zult gebruiken.
Je maakt dan een data
directory binnen de earth-analytics
directory om alle gegevens op te slaan die je nodig hebt om de huiswerkopdrachten te voltooien en te volgen samen met de cursus.
Maak een directory voor earth-analytics
Begin met het maken van een earth-analytics
directory (of map) bij u thuis directory. Bedenk dat dit de standaardmap is waarin de terminal wordt geopend.
- Maak een nieuwe map met de naam
earth-analytics
.
- Verander vervolgens je werkdirectory in de
earth-analytics
directory, en maak daarbinnen een nieuwe directory met de naamdata
.
- Ga als laatste terug naar de homedirectory en bevestig dat je dan toegang hebt tot de directories die je zojuist hebt aangemaakt.