Linux. Робота з каталогами. Посилання
Якщо ви спробуєте використовувати команду rm (без всяких опцій) для видалення каталогу, то буде видане повідомлення, що це каталог, і видалення не відбудеться. Для видалення каталогу треба видалити в ньому усі файли, після чого видалити сам каталог за допомогою команди rmdir. Однак можна видалити і непорожній каталог із усіма вхідними в нього підкаталогами і файлами, якщо використовувати команду rm з опцією -r.
Якщо ви дасте команду rm *, то видалите усі файли в поточному каталозі. Підкаталоги при цьому не видаляться. Для видалення як файлів, так і підкаталогів поточного каталогу треба теж скористатися опцією -r. Однак завжди помнете, що в Linux немає команди відновлення файлів після їхнього видалення (навіть якщо ви спохватилися відразу ж після помилкового видалення чи файлу каталогу)! Так що двічі подумайте до видалення чого-небудь і не зневажайте опцією -i.
Команди more і less
Команда cat дозволяє вивести на стандартний висновок (на екран) уміст будь-якого файлу, однак вона використовується для цих цілей дуже рідко, хіба що для висновку дуже невеликих по обсязі файлів. Справа в тому, що вміст великого файлу миттєво проскакує на екрані, і користувач бачить тільки останні рядки файлу. Тому cat використовується в основному по її прямому призначенню — для конкатенації файлів, а для перегляду змісту файлів (звичайно, текстових) використовуються команди more і less (чи текстові редактори).
Команда-фільтр more виводить зміст файлу на екран окремими сторінками, розміром саме в цілий екран. Для того, щоб побачити наступну сторінку, треба натиснути на клавішу пробілу. Натискання на клавішу , тому що якщо ви цього не знаєте, те вам доведеться довго і нудно натискати пробіл, поки ви не доберетеся до кінця довгого файлу. Про всі опції команди more ви можете прочитати в інтерактивному керівництві man чи info.
Утиліта less, розроблена в рамках проекту GNU, містить усі функції і команди керування висновком, що маються в програмі more, і деякі додаткові, наприклад, дозволяє використовувати клавіші керування курсором (<Стрілка нагору>, <Стрільця вниз>,
Команди more і less дозволяють робити пошук підрядків у файлі, що переглядається, причому команда less дозволяє робити пошук як у прямому, так і в зворотному напрямку. Для організації пошуку рядка символів string треба набрати в командному рядку програми в нижній частині екрана (там, де двокрапка) /string. Якщо шуканий рядок буде знайдена, буде відображений відповідний шматок тексту, причому знайдений рядок буде знаходитися в самому верху екрана.
Команда find і символи шаблонів для імен файлів
Ще однією часто використовуваною командою для роботи з файлами в Linux є команда пошуку потрібного файлу find. Команда find може шукати файли по імені, розміру, даті чи створення модифікації і деяким іншим критеріям.
Загальний синтаксис команди find має наступний вигляд:
find [список_каталогів] критерій_пошуку
Параметр "список_каталогів" визначає, де шукати потрібний файл. Найпростіше задати як початковий каталог пошуку кореневий каталог /, однак, у такому випадку пошук може затягтися дуже надовго, тому що буде проглядатися вся структура каталогів, включаючи змонтовані файлові системи (у тому числі мережні, якщо такі є). Можна скоротити обсяг пошуку, якщо задати замість одного кореневого каталогу список з декількох каталогів (природно, тих, у яких може знаходитися шуканий файл):
[user]$ find /usr/share/doc /usr/doc /usr/locale/doc -name instr.txt
Початком "критерію_пошуку", що визначає, що саме повинна шукати програма find, вважається перший аргумент, що починається на "-", "(", ")"', "," чи "!". Всі аргументи, що передують "критерію_пошуку", трактуються як імена каталогів, у яких треба робити пошук. Якщо не зазначено жодного шляху, пошук виробляється тільки в поточному каталозі і його підкаталогах.Найчастіше пошук проводиться по іменах файлів, як це показано в попередньому прикладі, тобто "критерій_пошуку" задається як "-name ім'я_файлу". Замість опції -name можна використовувати опцію -path, тоді команда буде шукати збігу в повному імені файлу, із указівкою шляху. Наприклад, команда