LDP:Bash beginners guide/appendixes

Матеріал з docs.linux.org.ua — збірника документації з Unix/Linux українською мовою.

Перейти до: навігація, пошук

Додатки

В цьому документі описані загальні можливості найпопулярніших оболонок та відмінності між ними.

Загальні можливості

Наступні можливості є стандартними у кожні оболонці. Зверніть увагу, що команди stop, suspend, jobs, bg і fg доступні лише у системах, котрі дозволяють керування завданнями.

Таблиця А1. Стандартні можливості оболонок

КомандаЗначення
>Перенаправлення виводу
>>Додати до файлу
<Перенаправлення вводу
<<Документна вставка (перенаправлення вводу)
|Конвеєризація виводу
&Запуск процесу у фоні
;Декілька команд у одному рядку
*Будь-які символи (у імені файлу)
?Будь-який поодинокий символ
[ ]Будь-які символи з тих, що перелічені
( )Запустити у дочірній оболонці
` `Підставити вивід залапкованої команди
" "Часткове цитування (дозволяє змінні та підстановку команд)
' 'Повне цитування (без розкривань)
\Екранувати наступний символ
$varЗначення змінної
$$Ідентифікатор процесу
$0Ім’я команди
$nn-ний аргумент (n від 0 до 9)
$*Всі аргументи як одне слово
#Початок коментаря
bgФонове виконання
breakПерервати виконання циклу
cdЗмінити каталог
continueПовторити виконання циклу (з наступним елементом циклу)
echoПоказати вивід
evalОцінити (проаналізувати) аргументи
execЗапустити нову оболонку
fgВиконання на передньому плані
jobsПоказати активні задачі
killЗавершити запущені задачі
newgrpЗмінити до нової групи
shiftЗсунути позиційні параметри
stopТимчасово зупинити фонове завдання
suspendТимчасово зупинити поточне завдання
timeРахувати тривалість виконання команди
umaskЗадати чи проглянути права доступу до файлу
unsetВидалити визначення функції чи змінної
waitЗачекати на завершення фонового завдання

Відмінності

У наведеній таблиці показано основні відмінності між стандартною оболонкою (sh), Оновленою оболонкою Борна (bash), оболонкою Корна (ksh) та С-подібною оболонкою (csh).

Image:tip-www.png
Сумісність оболонок

Оскільки оновлена оболонка Борна є надбудовою стандартної оболонки, всі команди sh працюватимуть у bash (але не навпаки). Bash має багато власних можливостей, і, як показано у таблиці, багато можливостей відрізняються від інших оболонок.

Оскільки оболонка Turbo C є надбудовою csh, всі команди csh працюватимуть у tcsh, але не навпаки.

Таблиця А2. Відмінності між оболонками

shbashkshcshПояснення
$$$%Стандартна користувацька підказка
>|>|>!Примусове перенаправлення
> file 2>&1&> file або
> file 2>&1> file 2>&1>& fileПере направити стандартний вивід та стандартні помилки у файл
{ } { }Розкрити елементи списку
`command``command` або $(command)$(command)`command`Підставити вивід команди command
$HOME$HOME$HOME$homeДомашній каталог
~~~Символ домашнього каталогу
~+, ~-, dirs~+, ~-=-, =NДоступ до стеку каталогів
var=valueVAR=valuevar=valueset var=valueПрисвоєння змінних
export varexport VAR=valueexport var=valsetenv var valЗадати змінну середовища
${nnnn}${nn} Посилання більше як на 9 аргументів
"$@""$@""$@" Всі аргументи як окремі слова
$#$#$#$#argvКількість аргументів
$?$?$?$statusСтан завершення останньої команди
$!$!$! PID останнього фонового процесу
$-$-$- Поточні опції
. filesource file або . file. filesource fileЗчитати команди з файлу
alias x='y'alias x=yalias x yІм’я x замінює команду y
caseCasecaseswitch або caseВибір альтернатив
donedonedoneendКінець оператора циклу
esacesacesacendswКінець циклів case чи switch
exit nexit nexit nexit (expr)Завершити з станом
for/dofor/dofor/doforeachЦикл зі змінними
set -f, set -o nullglob|dotglob|nocaseglob|noglob noglobІгнорувати символи підстановки для генерації імен файлів
hashhashalias -thashstatПоказати збережені команди (відстежувані псевдоніми)
hash cmdshash cmdsalias -t cmdsrehashЗапам’ятати розміщення команд
hash -rhash -r unhashЗабути розміщення команд
historyhistoryhistoryПереглянути попередні команди
ArrowUp+Enter чи !!r!!Повторити попередню команду
!strr str!strПовторити попередню команду, що починається з "str"
!cmd:s/x/y/r x=y cmd!cmd:s/x/y/Замінити "x" на "y" у останній команді, що починається з "cmd", і виконати її
if [ $i -eq 5 ]if [ $i -eq 5 ]if ((i==5))if ($i==5)Проста перевірка умови
fififiendifКінець оператора if
ulimitulimitulimitlimitВстановити обмеження ресурсів
pwdpwdpwddirsНадрукувати ім’я поточного каталогу
readreadread$<Зчитати з терміналу
trap 2trap 2trap 2onintrІгнорувати переривання
unaliasunaliasunaliasВидалити псевдоніми
untiluntiluntil Розпочати цикл until
while/dowhile/dowhile/dowhileРозпочати цикл while

Оновлена оболонка Борна має багато можливостей, не перелічених тут. Таблиця наведена просто щоб дати вам уявлення про те, як ця оболонка об’єднує в себе всі зручні ідеї з інших оболонок: зверніть увагу на відсутність пропусків у стовпчику bash. Додаткова інформація про властивості оболонки bash знаходиться на сторінках info Bash у розділі Bash Features (Властивості Bash).

Додаткова інформація.

Ви повинні прочитати як мінімум один посібник, вивчаючи вашу оболонку. Найкращим вибором буде info bash. Роздрукуйте його та перечитуйте, коли у вас з’явиться вільна хвилинка.

Особисті інструменти