Bash команди: Bash ls, Bash head, Bash mv и Bash cat Обяснено с примери

Баш ls

ls е команда в Unix-подобни операционни системи за изброяване на съдържанието на директория, например имена на папки и файлове.

Употреба

cat [options] [file_names]

Най-често използвани опции:

  • -a, всички файлове и папки, включително тези, които са скрити и започват с .
  • -l, избройте всички файлове в дълъг формат
  • -G, активиране на цветно извеждане

Пример:

Списък на файлове в freeCodeCamp/guide/

След клонирането на основното репо freeCodeCamp, ето изходът след стартиране lsв freeCodeCampдиректорията:

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

Още команди bash

Баш Глава

headсе използва за отпечатване на първите десет реда (по подразбиране) или всяко друго количество, посочено от файл или файлове. cat, от друга страна, се използва за четене на файл последователно и отпечатването му на стандартния изход (т.е. той отпечатва цялото съдържание на файла).

Това обаче не винаги е необходимо - може би просто искате да проверите съдържанието на даден файл, за да видите дали е правилният, или да проверите дали наистина не е празно. В headкоманда ви позволява да видите първите N реда от файл.

Ако се извика повече от файла, тогава се показват първите десет реда на всеки файл, освен ако не е посочен определен брой редове. Изборът да се покаже заглавката на файла не е задължителен, като се използва опцията по-долу.

Употреба

head [options] [file_name(s)]

Най-често използвани опции:

  • -n N, отпечатва първите N реда на файла (ите)
  • -q, не отпечатва заглавките на файла
  • -v, винаги отпечатва заглавията на файла

Пример

head file.txt

Отпечатва първите десет реда на file.txt (по подразбиране)

head -n 7 file.txt

Отпечатва първите седем реда на file.txt

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

Отпечатва първите 5 реда на file1.txt, последвани от първите 5 реда на file2.txt

Баш mv

Тази команда bash премества файлове и папки.

mv source target mv source ... directory

Първият аргумент е файлът, който искате да преместите, а вторият е местоположението, в което да го преместите.

Често използвани опции:

  • -f да ги преместите насила и да презапишете файлове, без да проверявате с потребителя.
  • -i за да поискате потвърждение преди презаписване на файлове.

Баш котка

cat е една от най-често използваните команди в операционните системи Unix.

catсе използва за последователно четене на файл и отпечатването му на стандартния изход. Името идва от начина, по който може да се против котка enates файлове.

Употреба

cat [options] [file_names]

Най-често използвани опции:

  • -b, брой непразни изходни редове
  • -n, номерирайте всички изходни редове
  • -s, изстискайте множество съседни празни редове
  • -v, показват непечатани символи, с изключение на раздели и знак в края на реда

Пример

Отпечатайте съдържанието на file.txt:

cat file.txt

Обединете съдържанието на двата файла и покажете резултата в терминал:

cat file1.txt file2.txt

Повече информация за Bash:

Какво е Баш?

Bash (съкратено от Bourne Again SHell) е обвивка на Unix и интерпретатор на команден език. Черупката е просто макро процесор, който изпълнява команди. Това е най-широко използваната обвивка, пакетирана по подразбиране за повечето дистрибуции на Linux, и наследник на черупката Korn (ksh) и C черупката (csh).

Много неща, които могат да бъдат направени в GUI на операционна система Linux, могат да бъдат направени чрез командния ред. Някои примери са:

  • Редактиране на файлове
  • Регулиране на силата на звука на операционната система
  • Извличане на уеб страници от интернет
  • Автоматизиране на работата, която вършите всеки ден

Можете да прочетете повече за bash тук, чрез GNU Документацията и чрез tldp ръководството.

Използване на bash в командния ред (Linux, OS X)

Можете да започнете да използвате bash в повечето операционни системи Linux и OS X, като отворите терминал. Нека разгледаме прост пример за здрав свят. Отворете терминала си и напишете следния ред (всичко след знака $):

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

Както можете да видите, ние използвахме командата echo, за да отпечатаме низа „Hello world!“ до терминала.

Писане на bash скрипт

Можете също така да поставите всичките си команди bash в .sh файл и да ги стартирате от командния ред. Да предположим, че имате bash скрипт със следното съдържание:

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

Този скрипт има само два реда. Първият показва какъв интерпретатор да се използва за стартиране на файла (в този случай, bash). Вторият ред е командата, която искаме да използваме, echoпоследвана от това, което искаме да отпечатаме, тук, "Hello world!"

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.

#! goes by many names such as "hash-bang", "she-bang", "sha-bang", or "crunch-bang". Note that this first line is only considered if the script is an executable.

For example, if myBashScript.sh is executable, the command ./myBashScript.sh will cause the OS will look at the first line figure out which interpreter to use. In this case it would be #!/bin/bash.

On the other hand, if you run bash myBashScript.sh, then the first line is ignored since the OS already knows to use bash.

To make myBashScript.sh executable, simply run sudo chmod +x myBashScript.sh. Then run the following command to execute the script:

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

Sometimes the script won’t be executed, and the above command will return an error. It is due to the permissions set on the file. To avoid that, use:

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

And then execute the script.