После ответа от команды Linux для печати структуры каталогов в виде дерева
Я получил:
ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
Чтобы отобразить каталог дерева.
Вместо того, чтобы просто создать псевдоним, я хочу, чтобы он вел себя как обычная команда и принимал параметры.
У меня есть такая структура каталогов:
|-myhome
|---top
|-----test
|-------folder1
|-------folder2
|-------folder3
, если я хочу это ("сверху"):
|-test
|---folder1
|---folder2
|---folder3
Мне нужно cd top
тогда ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
или, от "myhome": ls -R top | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
Я хочу что-то вроде:
lstree <dir>
в этом случае(сверху):
lstree test
, которые я не получаю из псевдонима
Я смотрю на функции bash:
function ls4less(){ ls -R $1 | less}
, которые затем я могу вызвать из "top"
ls4less
, что дает
test
./test:
folder1
folder2
folder3
./test/folder1:
file11.txt
file12.txt
./test/folder2:
file21.txt
file22.txt
./test/folder3:
file31.txt
file32.txt
file33.txt
(END)
или
ls4less test
с доходностью
folder1
folder2
folder3
test/folder1:
file11.txt
file12.txt
test/folder2:
file21.txt
file22.txt
test/folder3:
file31.txt
file32.txt
file33.txt
(END)