Bash-kommandoer: Bash ls, Bash head, Bash mv og Bash cat forklaret med eksempler

Bash ls

ls er en kommando på Unix-lignende operativsystemer til at liste indholdet af en mappe, for eksempel mappe- og filnavne.

Anvendelse

cat [options] [file_names]

Mest anvendte muligheder:

  • -a, alle filer og mapper, inklusive dem der er skjult og starter med en .
  • -l, viser alle filer i langt format
  • -G, aktiver farvet output

Eksempel:

Liste filer i freeCodeCamp/guide/

Efter kloning af den primære freeCodeCamp repo er her output efter kørsel lsi freeCodeCampbiblioteket:

api-server docker-compose.yml public change_volumes_owner.sh Dockerfile.tests README.md client docs sample.env CODE_OF_CONDUCT.md HoF.md search-indexing config lerna.json SECURITY.md CONTRIBUTING.md LICENSE.md server curriculum node_modules tools docker-compose-shared.yml package.json utils docker-compose.tests.yml package-lock.json

Flere bash-kommandoer

Bash hoved

headbruges til at udskrive de første ti linjer (som standard) eller ethvert andet beløb, der er angivet for en fil eller filer. catpå den anden side bruges til at læse en fil sekventielt og udskrive den til standardoutputtet (det vil sige den udskriver hele indholdet af filen).

Det er dog 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. Den headkommando tillader dig at se de første N linjer af en fil.

Hvis der kaldes mere end på en fil, vises de første ti linjer i hver fil, medmindre et specifikt antal linjer er angivet. At vælge at vise filoverskriften er valgfri ved hjælp af nedenstående mulighed.

Anvendelse

head [options] [file_name(s)]

Mest anvendte muligheder:

  • -n N, udskriver de første N linjer i filen / filerne
  • -q, udskriver ikke filoverskrifterne
  • -v, udskriver altid filoverskrifterne

Eksempel

head file.txt

Udskriver de første ti linjer med file.txt (standard)

head -n 7 file.txt

Udskriver de første syv linjer file.txt

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

Udskriver de første 5 linjer file1.txt efterfulgt af de første 5 linjer file2.txt

Bash mv

Denne bash-kommando 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.

Bash Cat

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

catbruges til at læse en fil sekventielt og udskrive den til standardoutput. Navnet kommer fra den måde, det kan con kat enates filer.

Anvendelse

cat [options] [file_names]

Mest anvendte muligheder:

  • -b, antal 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 indholdet af file.txt:

cat file.txt

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

cat file1.txt file2.txt

Mere info om Bash:

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 gøres i GUI for et 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 har et bash-script med følgende indhold:

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

Dette script 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, echoefterfulgt af det, vi vil udskrive, her, "Hej verden!"

It’s worth noting that first line of the script starts with #!. It is a special directive which Unix treats differently.

Why did we use #!/bin/bash at the beginning of the script file?

That is because it is a convention to let the interactive shell know what kind of interpreter to run for the program that follows.

The first line tells the operating system that the file should be executed by the program at /bin/bash, the standard location of the Bourne shell on almost every Unix or Unix-like system. By adding #!/bin/bash at the beginning of the script, it tells the OS to use the shell at that specific path to execute all the following commands in the script.

#!går under mange navne som "hash-bang", "she-bang", "sha-bang" eller "crunch-bang". Bemærk, at denne første linje kun overvejes, hvis scriptet er et eksekverbart.

For eksempel, hvis det myBashScript.sher eksekverbart, vil kommandoen ./myBashScript.shfå OS til at se på den første linje for at finde ud af, hvilken tolk der skal bruges. I dette tilfælde ville det være #!/bin/bash.

På den anden side, hvis du kører bash myBashScript.sh, ignoreres den første linje, da operativsystemet allerede ved at bruge bash.

For at gøre myBashScript.sheksekverbar skal du blot køre sudo chmod +x myBashScript.sh. Kør derefter følgende kommando for at udføre scriptet:

[email protected]:~$ ./myBashScript.sh 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å det skal du bruge:

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

Og udfør derefter scriptet.