Як рекурсивно перераховувати всі приховані файли та каталоги?


13

Я хочу перерахувати всі приховані файли та каталоги, а потім зберегти результат у файл.

Чи є для цього якась команда?

Відповіді:


13

Якщо ви використовуєте GNU find, ви можете це зробити

find /path -path '*/.*' -ls | tee output-file

Редагувати

Щоб уникнути показу не прихованих елементів, що містяться в прихованих каталогах

find /path -name '.*' >output-file

(як зазначалося, цього teeможна уникнути, якщо не потрібно бачити вихід, а -lsваріант слід використовувати лише за потреби).


2
Або >замість цього | tee, якщо не хочеться бачити весь висновок на терміналі.
rozcietrzewiacz

Ви також не потребуєте -lsцього, це може бути зайвою безладною інформацією для розбору думки.
Калеб

У цьому списку також міститься вміст прихованих каталогів, про що не задається питанням (можливо - це трохи неоднозначно).
Жил 'SO- перестань бути злим'

@Gilles: це дійсно неоднозначно. Відредагував відповідь
enzotib

Зауважте, що перший не стосується GNU. -pathє POSIX з 2008 року. -lsНе є стандартним, але досить поширеним.
Стефан Шазелас

10

Щоб перелічити приховані файли та каталоги в поточному каталозі, включаючи .та ..:

echo .*

Щоб реєструвати приховані файли та каталоги в поточному каталозі та його підкаталогах:

find . -name '.*'

Якщо ви хочете зберегти результати у файл, скористайтеся перенаправленням:

find . -name '.*' >output-file.txt


0

Ви можете фактично поставити один і той же аргумент кілька разів в одному командному рядку:

find /storage/????-????/ -iname '.*' -iname "*" | tee -a file-list-micSD-20190801163729.fli

tee -aКоманда здатна відображати вихідний (або команда в стандартний висновок ) одночасно ІУВХ писати його в файл. Ці -aопції запобігає затирання і не додає інформацію в вихідний файл цільової замість цього.

/storage/????-????/- приклад шляху. Це шлях до картки MicroSD новіших мобільних телефонів Android (є також термінальний додаток для Android, з меншою кількістю команд, але все ще багато і значно збільшений з Android 6.0). Картка MicroSD раніше була /storage/extSdCard. Тепер це серійний номер гучності.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.