Может ли PowerShell (или скрипт) в Windows / Mac / Ubuntu легко составлять список файлов / структуру каталогов? - PullRequest
0 голосов
/ 27 июня 2010

Может ли PowerShell под Windows самостоятельно или с помощью простого сценария оболочки, выводить список файлов и каталогов следующим образом: (или с помощью Mac OS X или сценария оболочки Ubuntu)

audio
  mp3
    song1.mp3
    some other song.mp3
  audio books
    7 habits.mp3
video
  samples
    up.mov
    cars.mov

Unix's ls -R или ls -lR, к сожалению, не может перечислить его в древовидной структуре.

Ответы [ 5 ]

5 голосов
/ 27 июня 2010

Вы можете использовать tree.com для перечисления с отступом, как показано выше.Обратите внимание, что tree.com работает только с файловой системой.Если вам когда-либо понадобится отобразить структуру для других поставщиков, таких как WSMan или RegEdit, вы можете использовать функцию Show-Tree, которая поставляется с PowerShell Community Extensions .

1 голос
/ 11 августа 2010

В Windows есть древовидная команда:

C:\folder>tree . /F
Folder PATH listing for volume sys
Volume serial number is F275-CBCA
C:\FOLDER.
│   file01.txt
│
├───Sub folder
│       chart-0001.png
│       chart-0002.png
└───────chart-0004.png

Параметр / F указывает, что нужно показывать файлы.Вы можете выполнить это из Powershell

1 голос
/ 27 июня 2010

вы можете использовать команду дерева Unix или, если вы используете Windows, дерево окон GNU .

1 голос
/ 27 июня 2010

В Linux вы можете использовать:

ls -R directory | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'

или для текущего каталога:

ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/   /' -e 's/-/|/'

Вы можете поместить эту «маленькую» команду в скрипт: посмотрите здесь

0 голосов
/ 27 июня 2010

Это, вероятно, то, что вы ищете:

ls -R | tree

Он не установлен по умолчанию в Ubuntu.Итак, чтобы установить его:

sudo apt-get install tree
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...