Інтернет Windows Android

C функції роботи з шляхами в linux. Основи лінукс: Введення в bash

Нещодавно я описував команди для пересування по директоріях в терміналі Лінукс. Ось я і зважився продовжити розповідь про командах в консолі. Так з пересуваннями начебто розібралися. Тепер я хочу трохи більш докладно розглянути які шляхи для тек, в консолі бувають.

Давайте для початку розглянемо найвідоміші для всіх, шляхи до наших файлів і тек, а саме абсолютні шляхи. Відкрийте термінал і виведіть команду яка виводить повний шлях до вашої домашньої директорії. Я про цю команду розповідав недавно, ось. вводимо pwd:


: ~ $ Pwd
/ Home / dante


Як бачите дана консольна команда вивела повний шлях починаючи з кореневої директорії. Такі пересування по директоріях я як раз і описував недавно, це пересування за допомогою абсолютного шляху. Але це не всі можливості рухатися по категоріям нашої операційної системи. В операційній системі Лінукс, Існує ще можливість використання відносних шляхів.

Відносні шляхи в консолі, відраховують категорії щодо тієї категорії в якій ви перебуваєте. Їх можливо використовувати за допомогою ".." двох точок, зазначених перед папкою в яку ми хочемо перейти. Давайте перейдемо куди-небудь в нашій операційній системі. Наприклад в папку usr і оглянемо її вміст командою ls.

[Email protected]: ~ $ Cd / usr
[Email protected]: / Usr $ ls

[Email protected]: / Usr $

Ось ми бачимо список доступних директорій. Давайте тепер перейдемо в директорію « share».

[Email protected]: ~ $ Cd / usr / share


Так, зараз ми знаходимося в категорії / Usr / share як ми бачимо. Давайте зараз перейдемо до категорії яка знаходиться на одному рівні з тією категорією, в якій ми знаходимося. Наприклад в категорію « local». Це можна зробити за допомогою абсолютного шляху ось так.

[Email protected]: ~ $ Cd / usr / local

[Email protected]: / Usr / share $ pwd
/ Usr / share
[Email protected]: / Usr / share $


Як бачите я вивів для вас в консолі, повний шлях до того місця де ви перебуваєте. Ми знаємо що директорія « local»Знаходиться на одному рівні з Директорією« share»І ми можемо використовувати команду, ось такого виду.

[Email protected]: / Usr / share $ cd ../local
[Email protected]: / Usr / local $


Як бачите команда запиту стала набагато простіше. Але це тільки якщо ви пам'ятаєте директорії, які знаходяться на одному рівні з вашої робочої Директорією, а я далеко не завжди в консолі пам'ятаю інші директорії.

Для того щоб перейти в наступну директорію, досить в консолі ввести команду щодо Вашої робочої директорії. Для цих цілей використовуйте замість ".." двох точок, "." одну точку і Ви будете рухатися щодо тієї директорії в консолі, в якій перебуваєте на даний момент. Давайте повернемося в директорію / usr і оглянемо ще раз що там знаходиться.

[Email protected]: / Usr / local $ cd / usr
[Email protected]: / Usr $ ls
bin games include lib local sbin share src
[Email protected]: / Usr $


Давайте тепер перейдемо в директорію « share»Щодо тієї директорії в якій ми зараз знаходимося. Для цього введіть в консолі

[Email protected]: / Usr $ cd ./local
[Email protected]: / Usr / local $


Як бачите використання відносних шляхів, здатне сильно скоротити команди які Ви вводите в консолі Лінукс.

Прочитавши цю статтю, ви дізнаєтеся що таке bash (Стандартний командний інтерпретатор лінукс), навчитеся звертатися зі стандартними командами: ls, cp, mv... зрозумієте призначення иноді, жорстких і символічних посилань і багато іншого.

Це посібник призначений для новачків в лінукс і для тих, хто хоче повторити або вдосконалити розуміння основних принципів лінукс, таких як копіювання і переміщення файлів, створення посилань, використання стандартних команд Лінукс поряд з перенаправлення і пайп. У цій статті ви знайдете безліч прикладів, що пояснюють викладений матеріал. Для початківців більшість інформації виявиться новою, а для більш просунутих користувачів цей матеріал може стати прекрасним посібником для узагальнення наявних знань і навичок.

Введення в bash

Shell

Якщо ви використовуєте лінукс, то знаєте що після логіна вас вітає запрошення командного інтерпретатора. Наприклад таке:

\$

Якщо після логіна завантажується графічна оболонка, то щоб дістатися до командного інтерпретатора потрібно запустити емулятор терміналу (gnome-terminal, xfce4-terminal, konsole, xterm, rxvt ...) або переключитися на один з віртуальних терміналів натиснувши CtrlAltF1 або CtrlAltF2 і т.д.

Запрошення командного інтерпретатора на вашому комп'ютері може відрізнятися від того що показано в прикладі. Воно може містити ім'я користувача, ім'я комп'ютера і назва поточної робочої директорії. Але незважаючи на всі ці відмінності, програма яка друкує це запрошення має назву « shell»(Оболонка), і швидше за все в ролі вашої командної оболонки виступає програма яка називається bash.

У вас запущений bash?

Перевірити чи запущений bash можна наступною командою:

\$ echo \\ $ SHELL / Bin / bash

Якщо в результаті виконання цієї команди ви отримали помилку або її висновок відрізняється від того що в прикладі, то можливо у вашій системі в якості командної оболонки використовується не bash. Незважаючи на це, велика частина матеріалу буде актуальна, але все ж рекомендуємо вам переключитися на bash. Зробити це можна (якщо bash встановлено в системі) командою:

\$ bash

Що таке bash

Bash (акронім від « Bourne- again SHell ») це стандартний інтерпретатор команд на більшості линукс систем. В його обов'язки входить обробка і виконання команд за допомогою яких користувач управляє комп'ютером. Після того як ви завершили роботу, можна завершити процес командного інтерпретатора. Після натискання клавіш CtrlD, команд exit або logout процес командного інтерпретатора буде завершено і на екрані знову з'явиться запрошення ввести ім'я користувача і пароль.

Використання «cd»

Давайте почнемо використовувати bash для навігації по файлової системи. Для початку надрукуйте наступну команду:

$ cd /

Цією командою ми вказали bash-у що хочемо переміститися в кореневу директорію - / . Всі директорії в системі організовані в деревоподібну структуру і / це її початок (або корінь). команда cd служить для зміни поточної робочої директорії.

шляхи

Щоб дізнатися в якому місці файлової системи в даний момент ви знаходитесь (поточну робочу директорію) наберіть:

\$ pwd /

У наведеному вище прикладі / - аргумент команди cd - називається шлях. Це місце файлової системи, куди ми хочемо переміститися. В даному випадку / - абсолютний шлях, це означає що шлях зазначений щодо кореневої директорії.

абсолютні шляхи

Ось кілька прикладів абсолютних шляхів

/ Dev / usr / usr / bin / usr / local / bin

Як ви вже могли помітити, всі ці шляхи об'єднує те, що вони починаються з / . Вказуючи шлях / usr / local / bin як аргумент команді cd ми говоримо їй перейти в кореневу директорію / , Потім в директорію usr, потім в local і bin. Абсолютні шляхи завжди починаються з /

відносні шляхи

Другий вид шляхів називається відносними. Bash, команда cd і інші команди відраховують ці шляхи щодо поточної директорії. Відносні шляхи ніколи не починаються з / . Наприклад, якщо ми знаходимося в / usr

\$ cd / usr

Потім ми можемо перейти в / usr / local / bin використовуючи відносний шлях

\$ cd local / bin \$ pwd / Usr / local / bin

Використання «..»

Відносні шляхи можуть містити одну або кілька директорій «..» . «..» вказує на батьківську директорію по відношенню до нашої робочої директорії. приклад:

\$ pwd / Usr / local / bin \\ $ cd .. \$ pwd / Usr / local

Як ви бачите, команда cd .. 'Піднімає нас на рівень вище'.

Можна додати .. до відносного шляху. Це дозволить переміститися в директорію, яка знаходиться на одному рівні з тієї в якій ми знаходимося. приклад:

\$ pwd / Usr / local \\ $ cd ../share \$ pwd / Usr / share

Приклади з використанням відносних шляхів

Відносні шляхи можуть бути досить складними. Ось кілька прикладів. Результат виконання команд не показаний, спробуйте визначити в якій директорії ви опинитеся використовуючи bash.

\$ cd / bin \$ cd ../usr/share/zoneinfo \$ cd / usr / X11R6 / bin \$ cd ../lib/X11 \$ cd / usr / bin \$ cd ../bin/../bin

Робоча директорія «.»

Перед тим як закінчити розмову про команду cd, Слід згадати ще кілька речей. По-перше, існує ще одна спеціальна директорія «.» , Яка вказує на поточну директорію. Ця директорія використовується для запуску виконуваних файлів, що знаходяться в поточній директорії.

\$ ./myprog

В останньому прикладі myprog це виконуваний файл знаходиться в поточній директорії, який буде запущений на виконання.

cd і домашня директорія користувача

Для того щоб перейти в домашню директорію, потрібно набрати

\$ cd

Без аргументу cd перемістить вас в домашню директорію. Для суперкористувача домашньої зазвичай є директорія / root, а для звичайних користувачів - / home / username /. Але що якщо ми хочемо вказати конкретний файл, що знаходиться в домашній директорії. Наприклад, як аргумент до програми 'Myprog'? Можна написати:

\$ ./myprog /home/user/myfile.txt

Однак, використовувати абсолютні шляхи до файлів не завжди зручно. Цю ж операцію можна зробити за допомогою ~ -тільди:

\$ ./myprog ~ / myfile.txt

~ - спеціальне ім'я, яке вказує в bash на домашню директорію користувача.

Домашні директорії інших користувачів

Але що якщо нам потрібно вказати файл в домашній директорії свого друга? Для цього після тильди потрібно вказати ім'я цього користувача. Наприклад, щоб вказати на файл fredsfile.txt знаходиться в домашній директорії користувача fred:

\$ ./myprog ~ fred / fredsfile.txt

команди лінукс

Введення в ls

Ймовірно ви вже знайомі з командою ls, Яка, викликана без аргументів, виводить на екран список файлів зберігаються в робочій директорії:

\$ cd / usr \$ ls X11R6 doc i686-pc-linux-gnu lib man sbin ssl bin gentoo-x86 include libexec portage share tmp distfiles i686-linux info local portage.old src

Якщо вказати опцію -a, Можна буде побачити всі файли, включаючи приховані (імена яких починаються з крапки).

\$ ls -a . bin gentoo-x86 include libexec portage share tmp .. distfiles i686-linux info local portage.old src X11R6 doc i686-pc-linux-gnu lib man sbin ssl

Докладний список директорій

Після самої команди ls як її аргументу можна вказати один або більше файлів або директорій. Якщо вказати ім'я файлу, то команда ls виведе інформацію тільки про цей файл. А якщо вказати назву директорії, ls покаже всі її вміст. опція '-L' команди ls буває дуже корисною якщо ви хочете крім імен файлів дізнатися більш детальну інформацію про них (права на файл, ім'я власника, час останньої зміни файлу і його розмір).

У наступному прикладі показано застосування опції '-L' для виведення інформації про файлах зберігаються в директорії / usr

\$ ls -l / usr drwxr-xr-x 7 root root 168 Nov 24 14:02 X11R6 drwxr-xr-x 2 root root 14576 Dec 27 8:56 bin drwxr-xr-x 2 root root 8856 Dec 26 12:47 distfiles lrwxrwxrwx 1 root root 9 Dec 22 20:57 doc -\u003e share / doc drwxr-xr-x 62 root root 1 856 Dec 27 15:54 gentoo-x86 drwxr-xr-x 4 root root 152 Dec 12 23:10 i686-linux drwxr-xr-x 4 root root 96 Nov 24 13:17 i686-pc-linux-gnu drwxr-xr-x 54 root root 5992 Dec 24 22:30 include lrwxrwxrwx 1 root root 10 Dec 22 20:57 info -\u003e share / info drwxr-xr -x 28 root root 13552 Dec 26 00:31 lib drwxr-xr-x 3 root root 72 Nov 25 00:34 libexec drwxr-xr-x 8 root root 240 Dec 22 20:57 local lrwxrwxrwx 1 root root 9 Dec 22 20 : 57 man -\u003e share / man lrwxrwxrwx 1 root root 11 Dec 8 7:59 portage -\u003e gentoo-x86 / drwxr-xr-x 60 root root 1864 Dec 8 7:55 portage.old drwxr-xr-x 3 root root 3096 Dec 22 20:57 sbin drwxr-xr-x 46 root root +1144 Dec 24 15:32 share drwxr-xr-x 8 root root 328 Dec 26 00:07 src drwxr-xr-x 6 root root 176 Nov 24 14: 25 ssl lrwxrwxrwx 1 root root 10 Dec 22 20:57 tmp -\u003e ../var/tmp

У першій колонці показана інформація про права доступу до кожного файлу в списку. (Трохи пізніше я поясню яка буква що позначає) Наступна колонка показує кількість посилань на кожен елемент списку. Третя і четверта колонки - власник і група файлу відповідно. П'ята колонка - розмір. Шоста - час останньої зміни файлу ( 'last modified time' або mtime). Остання колонка - ім'я файлу або директорії (Якщо це посилання, то після знака ' –> 'Стоїть ім'я об'єкта на який вона посилається).

Як подивитися тільки директорії

Іноді виникає потреба подивитися інформацію тільки про директорії, а не про всіх їх вмісті. З цим завданням допоможе впоратися опція '-D', Яка вказує команді виводити інформацію тільки про директорії. приклад:

\$ ls -dl / usr / usr / bin / usr / X11R6 / bin ../share drwxr-xr-x 4 root root 96 Dec 18 18:17 ../share drwxr-xr-x 17 root root 576 Dec 24 9:03 / usr drwxr-xr-x 2 root root 3192 Dec 26 12:52 / usr / X11R6 / bin drwxr-xr-x 2 root root 14576 Dec 27 8:56 / usr / bin

Рекурсивний список і інформація про иноді

дія опції '-R' протилежна дії '-D'. Вона дозволяє виводити інформацію про файлах знаходяться в директорії рекурсивно. Спочатку показується вміст директорії верхнього рівня, Потім по черзі вміст всіх піддиректорій і так далі. Висновок цієї команди може бути досить об'ємним, тому ми не наводимо її приклад, але ви можете спробувати зробити це самостійно, набравши в командному рядкуls -R'Або' ls -Rl‘.

І, нарешті, опція '-I' використовується для виведення иноді кожного об'єкта файлової системи.

\$ ls -i / usr 1409 X11R6 314258 i686-linux 43090 libexec 13394 sbin 1417 bin 1513 i686-pc-linux-gnu 5120 local 13408 share 8316 distfiles 1 517 include 776 man 23779 src 43 doc +1386 info 93892 portage 36737 ssl 70744 gentoo-x86 1585 lib 5132 portage.old 784 tmp

Що таке иноді?

Кожен об'єкт файлової системи (файл, директорія ...) має свій унікальний номер, званий инодом (Inode number). Ця інформація може здатися незначною, але розуміння функції иноді допоможе вам розібратися в багатьох операціях над файлової системою. Наприклад, подивимося на «.» і «..» як на посилання, присутні в кожній директорії. Щоб зрозуміти що з себе представляє директорія «..» , Дізнаємося инод директорії / use / local

\$ ls -id / usr / local 5120 / usr / local

Як можемо бачити, инод директорії / usr / local - 5120. Тепер подивимося який инод у директорії / usr / local / bin / ..:

\$ ls -id / usr / local / bin / .. 5120 / usr / local / bin / ..

Виходить, що иноді директорій / usr / local і / usr / local / bin / .. збігаються! Це означає, що на инод 5120 посилаються два імені: / usr / local і / usr / local / bin / .. Тобто це два різних імені однієї директорії. Кожен инод вказує на певне місце на диску.

З кожним инодом може бути пов'язано кілька імен об'єктів файлової системи. Кількість 'синонімів' файлу (об'єктів файлової системи, що посилаються на один инод) показує число у другому стовпці виведення команди ' ls -l‘.

\$ ls -dl / usr / local drwxr-xr-x 8 root root 240 Dec 22 20:57 / usr / local

На цьому прикладі видно (другий стовпець), що на директорію / usr / local посилаються 8 різних об'єктів файлової системи. Ось їхні імена:

/ Usr / local / usr / local /. / Usr / local / bin / .. / usr / local / games / .. / usr / local / lib / .. / usr / local / sbin / .. / usr / local / share / .. / usr / local / src / ..

mkdir

Давайте розглянемо команду mkdir. Вона служить для створення нових директорій. У наступному прикладі демонструється створення трьох нових директорій (tic, tac, toe) в директорії / tmp

\$ cd / tmp $ mkdir tic tac toe

За замовчуванням команда mkdir не може створити вкладеної структури директорій. Тому, якщо вам потрібно створити кілька вкладених одна в іншу директорій ( won / der / ful), То вам доведеться три рази по черзі викликати цю команду:

\$ mkdir won / der / ful mkdir: can not create directory "won / der / ful": No such file or directory \\ $ mkdir won \$ mkdir won / der \$ mkdir won / der / ful

Спростити цю операцію можна додавши опцію '-P' до команди mkdir. Ця опція дозволяє створювати вкладену структуру директорій:

\$ mkdir -p easy / as / pie

Щоб дізнатися про можливості цієї утиліти докладніше, прочитайте довідку, яка викликається командою man mkdir. Довідки є практично до всіх команд з цього керівництва (наприклад man ls), Крім cd, Тому що вона вбудована в bash (для таких команд довідка викликається так: help cd)

touch

Перейдемо до вивчення команд cp і mv, Службовців для копіювання, перейменування і переміщення файлів і директорій. Але перед цим створимо порожній файл в директорії / tmp за допомогою команди touch:

\$ cd / tmp \$ touch copyme

команда touch оновлює час останнього доступу до файлу (шоста колонка виведення команди ls -l) Якщо він вже існує або створює новий порожній файл, якщо його ще немає. Після цієї операції у нас повинен з'явитися порожній файл / Tmp / copyme.

echo

Тепер, коли у нас є порожній файл, запишемо в нього текстовий рядок за допомогою команди echo, Яка виводить переданий їй аргумент на стандартний пристрій виводу (текстовий термінал в нашому випадку).

\$ echo "firstfile" firstfile

Щоб записати рядок в наш файл, переспрямуємо в нього висновок команди echo:

\$ echo "firstfile"\u003e copyme

знак > (Більше) вказує командній оболонці що потрібно перенаправити висновок команди стоїть зліва в файл, ім'я якого знаходиться справа. Якщо файлу з такою назвою не існує, він буде створений автоматично. А якщо такий файл вже є, то він буде перезаписаний (весь його вміст буде стерто перед записом нашої рядки). команда 'Ls -l' покаже що розмір нашого файлу тепер дорівнює 10 байтам - дев'ять байт займає слово 'firstfile' і один байт символ перекладу рядка.

\$ ls -l copyme -rw-r - r-- 1 root root 10 Dec 28 14:13 copyme

cat і cp

Для виведення вмісту файлу на термінал використовується команда cat:

\$ cat copyme firstfile

Тепер ми можемо приступити до розбору базової функціональності команди cp. Ця команда приймає два аргументи. Перший - ім'я вже існуючого файлу ( 'copyme'), другий - назва нової копії, яку ми хочемо зробити ( 'copiedme').

\$ cp copyme copiedme

Чи можемо переконатися, що нова копія файлу має інший номер инода (це означає що ми отримали дійсно новий окремий файл, а не просто посилання на старий)

\$ ls -i copyme copiedme 648284 copiedme 650704 copyme

mv

Тепер застосуємо команду mv щоб перейменувати файл ( «copiedme» -\u003e «movedme»). Номер инода після цієї операції не змінюється, а змінюється тільки назва файлу.

\$ mv copiedme movedme \$ ls -i movedme 648284 movedme

Номер инода не змінюється тільки за умови, що перейменований файл залишається в межах тієї файлової системи де знаходився вихідний файл. Ми розглянемо докладніше пристрій файлових систем в одній з наступних частин цієї допомоги.

команда mv дозволяє не тільки перейменовувати файли, але і переміщати їх. Наприклад, щоб перемістити файл /var/tmp/myfile.txt в директорію / Home / user потрібно дати команду:

\$ mv /var/tmp/myfile.txt / home / user

Файл буде переміщений в домашню директорію користувача user навіть якщо вона знаходиться в іншій файлової системи (в цьому випадку файл буде скопійований в нове місце після чого оригінал буде видалено). Як ви могли вже здогадатися, переміщення файлу в іншу файлову систему призводить до зміни його инода. Це відбувається тому, що кожна файлова система має свій окремий набір инодом.

Потрібно зауважити, існує ймовірність, що новий присвоєний номер инода може збігтися зі старим, але вона надзвичайно мала.

Щоб перемістити одночасно кілька файлів в одну директорію потрібно написати:

\$ mv /var/tmp/myfile1.txt /var/tmp/myfile2.txt / home / user \$ mv -t / home / user /var/tmp/myfile1.txt /var/tmp/myfile2.txt

Якщо додати опцію '-V', На екран буде виведений звіт про виконану операції:

\$ mv -vt / home / user /var/tmp/myfile1.txt /var/tmp/myfile2.txt "/Var/tmp/myfile1.txt" -\u003e "/home/user/myfile1.txt" "/var/tmp/myfile2.txt" -\u003e "/home/user/myfile2.txt"

Всі файли в Linux мають певну адресу в файлової системі, за допомогою якого ми можемо отримати до них доступ за допомогою файлового менеджера або консольних утиліт. Це досить проста тема, але у багатьох новачків з цим виникають труднощі.

У сьогоднішній невеликій замітці ми розглянемо що таке шлях до файлу Linux, яким він може бути, як правильно його писати і багато іншого. Якщо раніше у вас виникали з цим труднощі, то після прочитання статті все стане повністю зрозуміло.

Шляхи файлів в Linux

Файлова система Linux дуже сильно відрізняється від Windows. Ми не будемо розглядати її структуру, це було зроблено раніше. Ми зосередимося на роботі з файлами.

Найголовніша відмінність, в тому що адреса файлу починається не з диска, наприклад, C: \\ або D: \\ як це відбувається в Windows, а з кореня, кореневого системного каталогу, до якого підключені всі інші. Його адреса - /. І тут потрібно сказати про адреси. Шляхи файлів linux використовують прямий слеш "/" для поділу каталогів в адресі, і це відрізняється від того, що ви звикли бачити в Windows - \\.

Наприклад, якщо в Windows повний шлях до файлу на робочому столі виглядав C: \\ Users \\ Sergiy \\ Desktop \\ то в шлях файлу в linux буде просто / home / sergiy / desktop /. З цим поки все просто і зрозуміло. Але проблеми виникають далі.

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

  • Повний, абсолютний шлях linux від кореня файлової системи - цей шлях ви вже бачили в прикладі вище, він починається від кореня "/" і описує весь шлях до файлу;
  • Відносний шлях linux - це шлях до файлу щодо поточної папки, такі шляхи часто викликають плутанину.
  • Шлях щодо домашній папки поточного користувача.- шлях в файлової системі, тільки не від кореня, а від папки поточного користувача.

Розглянемо тепер докладніше як виглядають ці шляхи в linux, а також розберемо кілька прикладів, щоб було остаточно зрозуміло. Для демонстрації будемо користуватися утилітою ls, яка призначена для перегляду вмісту каталогів.

Наприклад, у нас є такий каталог в домашній папці з чотирма файлами в ньому:

Ось так буде виглядати повний шлях linux до одного з файлів:

ls / home / sergiy / tmp / file1

Це вже відносний шлях linux, який починається від домашньої папки, вона позначається ~ /. Зауважте, не ~, а саме ~ /. Далі ви вже можете вказувати підпапки, в нашому випадку tmp:

Ну або шлях файлу в linux, щодо поточної папки:

Перше посилання вказує на поточну папку (.), Друга (..) вказує на папку рівнем вище. Це відкриває ще ширші можливості для навігації по каталогам. Наприклад, щоб послатися на файл в цій папці можна використовувати конструкцію:

Це марно при перегляді вмісту файлу. Але дуже важливо при виконанні програми. Оскільки програма буде спочатку шукатися в середовищі PATH, а вже потім в цій папці. А тому, якщо потрібно запустити програму, яка знаходиться в цій папці і вона називається так само як і та що в каталозі / bin, то без явної посилання що файл потрібно шукати в поточній папці нічого не вийде.

Такі конструкції можуть досить часто зустрічатися при компіляції програм. Всі ці символи і шляхи файлів linux ви можете застосовувати не тільки в терміналі, але і в будь-якому файловому менеджері, Що може бути дуже зручно.

Але термінал Linux надає ще ширші можливості. Ви можете використовувати прості символи заміни прямо в адресах файлів або каталогів. Наприклад, можна вивести всі файли, що починаються на f:

Або навіть можна шукати не тільки в папці tmp, а в будь-який підпапці домашньої папки:

І все це буде працювати, можливо, це не завжди потрібно і практично. Але в певних ситуаціях може дуже сильно допомогти. Ці функції реалізуються на рівні оболонки Bash, тому ви можете застосовувати їх в будь-якій команді. Оболонка дивиться скільки файлів було знайдено і для кожного з них викликає команду.

висновки

От і все. Тепер ви знаєте все що необхідно, щоб не тільки правильно написати шлях до файлу linux, але і виконувати більш складні дії, наприклад, пошук файлів або навігація по каталогах за допомогою команди cd. Якщо у вас залишилися питання, питайте в коментарях!

Схожі записи: