Баш лс
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.