Базові команди Linux
Комбінації клавіш
-
повернути курсор на початок:
ctrl + a. -
курсор назад до кінця:
ctrl + e.
Комбінації клавіш VIM
- відмінити:
u - повторити:
ctrl + r - видалити поточний символ:
x4. - видалити поточний рядок:
dd - перехід на наступну сторінку:
fn + up - перехід на наступну сторінку:
fn + down - пошук слів:
/wordвведіть, потім натисніть n, щоб продовжити пошук - початок рядка:
^ - кінець рядка:
$ - наступне слово:
w - попереднє слово:
b - видалити наступні рядки, включаючи цей:
:,$d. - символ багаторазового вибору:
v - блочне виділення:
ctrl + v, натисніть d або x, щоб видалити після виділення, або натисніть c, щоб замінити - відступ:
<<і>>
Shell
- Перша стрічка у файлі скрипті повинна починатись з:
#!/bin/bash - Для того, щоб зробити файл виконуваним потрібно надати права на виконання:
chmod +x ./index.sh
Змінні
name="linux" # декларування змінної
echo $name # використання змінної
echo ${name} # використовувати змінну *рекомендовано
readonly name # зробити змінну доступною лише для читання
unset name # видалити змінні, змінні лише для читання не можна видалити
Змінні оболонки можна розділити на локальні змінні під поточним скриптом і змінні оточення.
# Рядок (одинарні лапки)
name='Petro'
# Рядок (подвійні лапки)
name="Petro"
Внутрішні символи рядка в одинарних лапках виводяться як є, тобто всередині не може бути змінних або екранованих символів.
# Одинарні лапки
name='Petro'
echo 'I am ${name}' # I am ${name}
# подвійні лапки
name='Petro'
echo "I am ${name}" # I am Petro
arr=("a" "b" "c") # масив
echo ${arr[0]} # "a"
echo ${arr[@]} # Вивести всі елементи масиву "a" "b" "c"
Передача аргументів
echo "$1 $2 $3"
. /index.sh a b c # a b c
Оператори
Арифметика в оболонці зазвичай виконується з використанням зворотних лапок з `expr``.
a=10
b=20
echo `expr $a + $b`
**Умовне судження
if [ $name == 'Petro' ] # Зверніть увагу, що ви повинні залишити пробіл
then
echo "рівні"
fi
Доповнення: Ви можете використовувати == при визначенні рівності, або просто використовувати =.
Логічні операції:
name="Petro"
age=22
if [[ $name == 'Petro' && $age == 20 ]]
then
echo "рівні"
else
echo "не рівні"
fi