Основи роботи з Linux. / Команди bash. Работа в консоли / Робота в консолі. Команди bash.
Команди BASH
Виведення на екран
echo $змінна | рядок | "рядок $змінна"
Змінні та їх виведення у консоль.
#!/bin/bash
STR="Hello World!"
echo $STR
echo $PATH # змінна пошуку команд
echo "$PATH - змінна пошуку" # форматування рядка
Команда переправлення висновку
echo 'hello' > filename.txt
echo 'hello' >> filename.txt
Змінна PATH
echo $PATH
-
це мета, де система шукає виконувані файли-команди, наприклад python
whereis python
-
виведе всі місця, де знаходяться файли для пітона
Як додати шлях до пошуку для поточного сеансу терміналу.
PATH=$PATH:~/opt/bin
Або
PATH=~/opt/bin:$PATH
Команда pwd.
- Висновок поточної директорії
Зміна директорії. Команда cd
cd ~ # домашня директорія
cd / # коренева директорія
cd dirname/subdir # зміна директорії
cd .. # підняття на рівень вгору
Перегляд директорії. Команда ls.
ls # короткий список
ls -l # повний список
ls -la # включаючи приховані файли
ls -lh # c коротким розміром
Команда grep.
grep -rn 'string' # пошук файлів з рядком із зазначенням номера рядка
Об’єднання команд оператор |.
ls-la | grep 'substr' # пошук файлів і директорій, що містять підрядок
Команда mkdir (створення директорії).
mkdir dirname
Команда rm.
rm ./filename # видалення файлу
rm -R dirname # видалення директорії та її вмісту
Команда nano.
nano ./filename # редагування файлу
-
ctrl+o - запис до файлу
-
ctrl+x - вихід із редактора
Команда cat
cat filename
виведення вмісту файлу
Системна змінна $PS1
Змінює зовнішній вигляд запрошення.
echo $PS1
PS1='>>>'
export PS1='<<<'
Команда chmode.
chmod +x ./filename # зробити файл виконуваним
chmod 777 ./filename # зміна прав на файл
chmod 667 -R dirname # зміна прав на вміст директорії
Команда chown.
chown -R user:user dirname # зміна власника та групи директорії та всього вмісту рекурсивно
Рядок, що визначає вміст файлу (якою мовою python, php, bash і т.д.).
#!/bin/bash
#!/usr/bin/env python
Мова bash
Перенаправлення введення-виведення
>> > - перенаправляє у файл
| - з'єднує виведення однієї команди із введенням іншої
Команда source та запуск bash скриптів.
myscript # запуск команди (файлу) із системних директорій
./myscript # запуск файлу з поточної дерикторії
source ./myscript # запуск скрипту в поточній сесії терміналу (оболонки) shell у поточному процесі
. ./myscript # аналог попередньої команди
Використання точки говорить про поточну директорію (що не знаходиться в змінній PATH) без точки інтерпретатор шукатиме файл у $PATH.
Використання source дозволяє змінювати оточення оболонки, т.к. виконується над новому процесі як із звичайному запуску (без source).
Умова. Перевіряємо існування файлу .bashrc
cd () {
builtin cd ${1:+"$@"} # виконуємо оригінальну команду з параметрами
if [ -f "env.sh" ] # перевіряємо існування файлу
then
source ./env.sh # запускаємо файл
fi
}
.bashrc - файл, що виконується першим при запуску терміналу.