Каков был бы лучший/самый легкий путь к нетехнику как я, чтобы заставить мой бездисплейный медиасервер Ubuntu генерировать файл, содержащий список X-уровней файлов, глубоких из определенной папки и создавать резервную копию того списка, на самом деле не создавая резервную копию самих файлов? Идеально (но ни в коем случае не требуемый) это была бы приятно отформатированная страница HTML..., но только если существует некоторый существующий инструмент, который делает такую вещь. Я не ожидаю, что отвечающая сторона напишет обширный код для меня.
Мне установили Crashplan, но я не хочу использовать пропускную способность движущиеся терабайты некритических файлов к Облаку. Но в редком случае что-то происходит, я хочу, по крайней мере, видеть список того, что было там, таким образом, я вижу то, что было потеряно, и я могу привередничать, что заменить.
Я надеюсь, что ответ завершен, поскольку я ни в коем случае не гуру командной строки..., и это действительно должна быть командная строка, потому что это является бездисплейным.
Вы можете использовать tree
. Возможно, он не был предварительно установлен, поэтому получите его, используя
sudo apt-get install tree
. Затем вы можете получить список ваших файлов и их структуру каталогов, просто запустив
$ tree test/
test/
├── dir1
│ ├── file1
│ ├── file2
│ └── file3
├── dir2
│ ├── file1
│ ├── file2
│ └── file3
└── dir3
├── file1
├── file2
└── file3
. Вы перенаправите вывод в Файл, подобный этому:
tree test/ > directory-list.txt
Вы можете ограничить глубину рекурсии, используя опцию -L
, например tree -L 3 test/
.
Если вы хотите создать красивую HTML-страницу с FTP-ссылками на каждый файл, у tree
есть встроенная!
tree -H /ftp-root test/ > directory-list.html
Вам нужно указать базовую ссылку, которая будет контролировать, где все гиперссылки файла указать, как описано в man-странице (man tree
):
-H baseHREF
Turn on HTML output, including HTTP references. Useful for ftp
sites. baseHREF gives the base ftp location when using HTML
output. That is, the local directory may be `/local/ftp/pub',
but it must be referenced as `ftp://hostname.organiza‐
tion.domain/pub' (baseHREF should be `ftp://hostname.organiza‐
tion.domain'). Hint: don't use ANSI lines with this option, and
don't give more than one directory in the directory list. If you
wish to use colors via CCS style-sheet, use the -C option in
addition to this option to force color output.
Полученный файл, открытый в веб-браузере, выглядит следующим образом:
find
Ваш друг здесь.
Принятие Вас хотят скопировать все имена файлов, до 4 уровней глубоко, запускающийся от /foo/bar
каталог, в файл backup_filenames.txt
:
find /foo/bar -maxdepth 4 -type f >backup_filename.txt
Для рассмотрения только имен файлов определенного расширения, например, .txt
используйте -name
:
find /foo/bar -maxdepth 4 -type f -name '*.txt' >backup_filename.txt
Нечувствительно к регистру (-iname
):
find /foo/bar -maxdepth 4 -type f -iname '*.txt' >backup_filename.txt
Изменяют параметры для удовлетворения потребностей. Также проверьте man find
.