У меня есть каталог html . Я хотел бы вывести файлы каталога, включая путь, в файл.
Вы можете сделать что-то подобное с помощью команды:
ls -R scripts/html > out.txt
Но результаты выглядят так:
scripts/html
1.html
2.html
...
Я хотел бы получить результат как:
scripts/html/1.html
scripts/html/2.html
...
Используйте find
вместо ls
. Это даст вам относительный путь, основанный на том, что вы пройдете. Я использую tail
для отсечения первой строки, которая обычно показывает базовый каталог.
find scripts/html | tail -n+2 > out.txt
в каталоге, в котором вы хотите показать содержимое:
для всех (папок и файлов)
ls -d1 $PWD/**/*
для просто папок
ls -d1 $PWD/**
для всего файлы
ls -d1 $PWD/*.*
Вы сможете использовать это только для печати файлов:
find scripts/html '!' -type d
Все, что не является каталогом, будет напечатано.