Команди Bash: Bash ls, Bash head, Bash mv та Bash cat Пояснено прикладами

Баш лс

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

Баш мв

Ця команда bash переміщує файли та папки.

mv source target mv source ... directory

Перший аргумент - це файл, який потрібно перемістити, а другий - місце, куди його потрібно перемістити.

Часто використовувані варіанти:

  • -f змусити їх переміщати та перезаписувати файли без узгодження з користувачем.
  • -i для підтвердження перед перезаписом файлів.

Баш Кіт

cat - одна з найбільш часто використовуваних команд в операційних системах Unix.

catвикористовується для послідовного читання файлу та друку його на стандартний вивід. Назва походить від того , як він може CON котячі enates файли.

Використання

cat [options] [file_names]

Найчастіше використовувані варіанти:

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

Приклад

Роздрукувати вміст file.txt:

cat file.txt

Об'єднайте вміст двох файлів і відображте результат у терміналі:

cat file1.txt file2.txt

Більше інформації про Bash:

Що таке Bash?

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

Багато речей, які можна зробити в графічному інтерфейсі операційної системи 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а потім те, що ми хочемо надрукувати, тут, "Привіт світ!"

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.