The Ultimate Linux Command Line Guide - Fuld Bash-vejledning

Velkommen til vores ultimative guide til Linux Command Line. Denne vejledning viser dig nogle af de vigtigste Linux-kommandolinjeteknologier og introducerer dig til Bash-scriptingsproget.

Hvad er Bash?

Bash (forkortelse for Bourne Again SHell) er en Unix-skal og en kommandosprogstolk. En skal er simpelthen en makroprocessor, der udfører kommandoer. Det er den mest anvendte shell, der er pakket som standard til de fleste Linux-distributioner, og en efterfølger til Korn-shell (ksh) og C-shell (csh).

Mange ting, der kan udføres Linux-operativsystem, kan gøres via kommandolinjen. Nogle eksempler er ...

  • Redigering af filer
  • Justering af lydstyrken på operativsystemet
  • Henter websider fra internettet
  • Automatisering af arbejde, du udfører hver dag

Du kan læse mere om bash her via GNU-dokumentationen og via tldp-guiden.

Brug af bash på kommandolinjen (Linux, OS X)

Du kan begynde at bruge bash på de fleste Linux- og OS X-operativsystemer ved at åbne en terminal. Lad os overveje et simpelt hej verdenseksempel. Åbn din terminal, og skriv følgende linje (alt efter $ -tegnet):

[email protected]:~$ echo "Hello world!" Hello world!

Som du kan se, brugte vi ekkokommandoen til at udskrive strengen "Hej verden!" til terminalen.

Skrivning af et bash-script

Du kan også placere alle dine bash-kommandoer i en .sh-fil og køre dem fra kommandolinjen. Sig, at du havde et bash-script med følgende indhold:

#!/bin/bash echo "Hello world!"

Det er værd at bemærke, at første linje i scriptet starter med #!. Det er et specielt direktiv, som Unix behandler forskelligt.

Hvorfor brugte vi #! / Bin / bash i begyndelsen af ​​scriptfilen?

Det er fordi det er en konvention at lade den interaktive shell vide, hvilken slags tolk der skal køres for det følgende program. Den første linje fortæller Unix, at filen skal udføres af / bin / bash. Dette er Bourne-skalens standardplacering på næsten ethvert Unix-system. Tilføjelse af #! / Bin / bash som den første linje i dit script fortæller operativsystemet at påkalde den angivne shell for at udføre de kommandoer, der følger i scriptet. #!kaldes ofte “hash-bang”, “she-bang” eller “sha-bang”. Selvom det kun udføres, hvis du kører dit script som en eksekverbar. For eksempel, når du skriver ./scriptname.extension, vil det se på den øverste linje for at finde ud af tolken, mens kørsel af scriptet som bash scriptname.sh, første linje ignoreres.

Derefter kunne du køre scriptet sådan: For at gøre filen eksekverbar skal du kalde denne kommando under sudo chmod + x "filnavn".

[email protected]:~$ ./myBashScript.sh Hello world!

Scriptet har kun to linjer. Den første indikerer, hvilken tolk der skal bruges til at køre filen (i dette tilfælde bash). Den anden linje er den kommando, vi vil bruge, ekko, efterfulgt af det, vi vil udskrive, som er "Hello World".

Nogle gange udføres scriptet ikke, og ovenstående kommando returnerer en fejl. Det skyldes de tilladelser, der er angivet på filen. For at undgå denne anvendelse:

[email protected]:~$ chmod u+x myBashScript.sh

Og udfør derefter scriptet.

Linux-kommandolinje: Bash Cat

Cat er en af ​​de mest anvendte kommandoer i Unix-operativsystemer.

Cat bruges til at læse en fil sekventielt og udskrive den til standardoutput. Navnet er afledt af dens funktion con kat Enate filer.

Anvendelse

cat [options] [file_names]

Mest anvendte muligheder:

  • -b, numeriske ikke-tomme outputlinjer
  • -n, nummer alle outputlinjer
  • -s, klem flere tilstødende tomme linjer
  • -v, viser tegn, der ikke er udskrevet, undtagen faner og slutningen af ​​linjetegn

Eksempel

Udskriv i terminalen indholdet af file.txt:

cat file.txt

Sammenkæd indholdet af de to filer, og vis resultatet i terminalen:

cat file1.txt file2.txt

Linux Command Line: Bash cd

Skift f.ekscd projects. Bibliotek til den angivne sti.

Der er et par virkelig nyttige argumenter, der kan hjælpe dette:

  • . henviser til den aktuelle telefonbog, f.eks ./projects
  • ..kan bruges til at flytte en mappe op, bruge cd ..og kan kombineres for at flytte flere niveauer op../../my_folder
  • /er roden af dit system for at nå centrale mapper, såsom system, usersosv
  • ~er hjemmekataloget, normalt stien /users/username. Gå tilbage til mapper, der henvises til i forhold til denne sti, ved at inkludere den for eksempel i starten af ​​din sti ~/projects.

Linux Command Line: Bash-hoved

Head bruges til at udskrive de første ti linjer (som standard) eller ethvert andet beløb, der er angivet i en fil eller filer. Cat bruges til at læse en fil sekventielt og udskrive den til standardoutput.

dvs. udskriver hele indholdet af hele filen. - det er ikke altid nødvendigt, måske vil du bare kontrollere indholdet af en fil for at se, om den er den rigtige, eller kontrollere, at den faktisk ikke er tom. Hovedkommandoen giver dig mulighed for at se de første N-linjer i en fil.

if more than on file is called then the first ten lines of each file is displayed, unless specific number of lines are specified. Choosing to display the file header is optional using the option below

Usage

head [options] [file_name(s)]

Most used options:

  • -n N, prints out the first N lines of the file(s)
  • -q, doesn’t print out the file headers
  • -v, always prints out the file headers

Example

head file.txt

Prints in terminal the first ten lines of file.txt (default)

head -n 7 file.txt

Prints in terminal the first seven lines of file.txt

head -q -n 5 file1.txt file2.txt

Print in terminal the first 5 lines of file1.txt, followed by the first 5 lines of file2.txt

Linux Command Line: Bash ls

ls is a command on Unix-like operating systems to list contents of a directory, for example folder and file names.

Usage

cat [options] [file_names]

Most used options:

  • -a, all files and folders, including ones that are hidden and start with a .
  • -l, List in long format
  • -G, enable colorized output.

Example:

List files in freeCodeCamp/guide/

ls ⚬ master CODE_OF_CONDUCT.md bin package.json utils CONTRIBUTING.md gatsby-browser.js plugins yarn.lock LICENSE.md gatsby-config.js src README.md gatsby-node.js static assets gatsby-ssr.js translations

Linux Command Line: Bash man

Man, en forkortelse af mennesket ual, er et bash kommando bruges til at vise on-line referencemanualer af den givne kommando.

Man viser den reletive mand siden (kort for mennesket ual side ) af den givne kommando.

Anvendelse

man [options] [command]

Mest anvendte muligheder:

  • -f, udskrive en kort beskrivelse af den givne kommando
  • -a, viser efter hinanden alle de tilgængelige introduktionsmanualsider indeholdt i manualen

Eksempel

Vis mandsiden til ls:

man ls

Linux Command Line: Bash mv

Flytter filer og mapper.

mv source target mv source ... directory

Det første argument er den fil, du vil flytte, og det andet er placeringen, du skal flytte den til.

Almindeligt anvendte muligheder:

  • -f for at tvinge til at flytte dem og overskrive filer uden at tjekke med brugeren.
  • -i for at bede om bekræftelse inden overskrivning af filer.

Det er alt. Gå ud og brug Linux.