Program som visar mappstruktur

Tråden skapades och har fått 4 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Nässjö
  • 2015-05-19 20:33

Finns det något verktyg för OSX Med vilket man kan se hur filerna och mapparna i en överordnad mapp är strukturerade?

Du kan hålla inne option/alt samtidigt som du klickar på en mapps triangel till vänster om mappnamnet i Finder för att expandera hela strukturen. Men du är kanske ute efter något som kan skapa en rapport att lägga in i ett program för vidare bearbetning?

  • Medlem
  • Nässjö
  • 2015-05-19 20:54
Ursprungligen av suddgummi:

Du kan hålla inne option/alt samtidigt som du klickar på en mapps triangel till vänster om mappnamnet i Finder för att expandera hela strukturen. Men du är kanske ute efter något som kan skapa en rapport att lägga in i ett program för vidare bearbetning?

Tack, det underlättade lite.
Jag håller på att göra en webbsida i en Webbutvecklingskurs och en del är att kunna redovisa mappstrukturen.
Jag tänkte att det borde finnas något program som typ kan lägga upp det typ som, ja säg typ, ett släktträd.
Om inte annat slå blev det betydligt enklare att se mapparnas innehåll nu. I vanliga fall kör jag med "symboler" i Finder.

Ursprungligen av Måns97:

Tack, det underlättade lite.
Jag håller på att göra en webbsida i en Webbutvecklingskurs och en del är att kunna redovisa mappstrukturen.
Jag tänkte att det borde finnas något program som typ kan lägga upp det typ som, ja säg typ, ett släktträd.
Om inte annat slå blev det betydligt enklare att se mapparnas innehåll nu. I vanliga fall kör jag med "symboler" i Finder.

I övriga UNIX-världen finns det fenomenala kommandot tree som skapar just en trädstruktur på kommandolinjen. Ett exempel på hur det kan se ut:

[suddgummi@remoteserver]$ tree /usr/share/git
/usr/share/git
|-- README
|-- buildsystems
|   |-- Generators
|   |   |-- QMake.pm
|   |   `-- Vcproj.pm
|   |-- Generators.pm
|   |-- engine.pl
|   |-- generate
|   `-- parse.pl
|-- completion
|   |-- git-completion.bash
|   |-- git-completion.tcsh
|   |-- git-completion.zsh
|   `-- git-prompt.sh
|-- contacts
|   |-- Makefile
|   |-- git-contacts
|   `-- git-contacts.txt
|-- convert-grafts-to-replace-refs.sh
|-- convert-objects
|   |-- convert-objects.c
|   `-- git-convert-objects.txt
|-- credential
|   |-- gnome-keyring
|   |   |-- Makefile
|   |   `-- git-credential-gnome-keyring.c
|   |-- netrc
|   |   |-- Makefile
|   |   |-- git-credential-netrc
|   |   |-- test.netrc
|   |   `-- test.pl
|   |-- osxkeychain
|   |   |-- Makefile
|   |   `-- git-credential-osxkeychain.c
|   `-- wincred
|       |-- Makefile
|       `-- git-credential-wincred.c
|-- diff-highlight
|   |-- README
|   `-- diff-highlight
|-- emacs
|   |-- Makefile
|   |-- README
|   |-- git-blame.el
|   |-- git-blame.elc
|   |-- git.el
|   `-- git.elc
|-- examples
|   |-- README
|   |-- builtin-fetch--tool.c
|   |-- git-checkout.sh
|   |-- git-clean.sh
|   |-- git-clone.sh
|   |-- git-commit.sh
|   |-- git-fetch.sh
|   |-- git-gc.sh
|   |-- git-log.sh
|   |-- git-ls-remote.sh
|   |-- git-merge-ours.sh
|   |-- git-merge.sh
|   |-- git-notes.sh
|   |-- git-remote.perl
|   |-- git-repack.sh
|   |-- git-rerere.perl
|   |-- git-reset.sh
|   |-- git-resolve.sh
|   |-- git-revert.sh
|   |-- git-svnimport.perl
|   |-- git-svnimport.txt
|   |-- git-tag.sh
|   |-- git-verify-tag.sh
|   `-- git-whatchanged.sh
|-- fast-import
|   |-- git-import.perl
|   |-- git-import.sh
|   |-- git-p4.README
|   |-- import-directories.perl
|   |-- import-tars.perl
|   `-- import-zips.py
|-- git-jump
|   |-- README
|   `-- git-jump
|-- git-prompt.sh
|-- git-resurrect.sh
|-- git-shell-commands
|   |-- README
|   |-- help
|   `-- list
|-- gitview
|   |-- gitview
|   `-- gitview.txt
|-- hg-to-git
|   |-- hg-to-git.py
|   `-- hg-to-git.txt
|-- hooks
|   |-- multimail
|   |   |-- CHANGES
|   |   |-- README
|   |   |-- README.Git
|   |   |-- README.migrate-from-post-receive-email
|   |   |-- git_multimail.py
|   |   |-- migrate-mailhook-config
|   |   `-- post-receive
|   |-- post-receive-email
|   |-- pre-auto-gc-battery
|   |-- setgitperms.perl
|   `-- update-paranoid
|-- mw-to-git
|   |-- Git
|   |   `-- Mediawiki.pm
|   |-- Makefile
|   |-- bin-wrapper
|   |   `-- git
|   |-- git-mw.perl
|   |-- git-remote-mediawiki.perl
|   |-- git-remote-mediawiki.txt
|   `-- t
|       |-- Makefile
|       |-- README
|       |-- install-wiki
|       |   |-- LocalSettings.php
|       |   `-- db_install.php
|       |-- install-wiki.sh
|       |-- push-pull-tests.sh
|       |-- t9360-mw-to-git-clone.sh
|       |-- t9361-mw-to-git-push-pull.sh
|       |-- t9362-mw-to-git-utf8.sh
|       |-- t9363-mw-to-git-export-import.sh
|       |-- t9364-pull-by-rev.sh
|       |-- t9365-continuing-queries.sh
|       |-- test-gitmw-lib.sh
|       |-- test-gitmw.pl
|       `-- test.config
|-- persistent-https
|   |-- LICENSE
|   |-- Makefile
|   |-- README
|   |-- client.go
|   |-- main.go
|   |-- proxy.go
|   `-- socket.go
|-- remote-helpers
|   |-- README
|   |-- git-remote-bzr
|   `-- git-remote-hg
|-- remotes2config.sh
|-- rerere-train.sh
|-- stats
|   |-- git-common-hash
|   |-- mailmap.pl
|   `-- packinfo.pl
|-- subtree
|   |-- COPYING
|   |-- INSTALL
|   |-- Makefile
|   |-- README
|   |-- git-subtree
|   |-- git-subtree.1
|   |-- git-subtree.html
|   |-- git-subtree.sh
|   |-- git-subtree.txt
|   |-- git-subtree.xml
|   |-- t
|   |   |-- Makefile
|   |   `-- t7900-subtree.sh
|   `-- todo
|-- svn-fe
|   |-- Makefile
|   |-- svn-fe.c
|   |-- svn-fe.txt
|   `-- svnrdump_sim.py
|-- thunderbird-patch-inline
|   |-- README
|   `-- appp.sh
`-- workdir
    `-- git-new-workdir

33 directories, 143 files

Vilket man då lätt kan klistra in i valfritt ordbehandlingsprogram (jag har pipeat källkodsstrukturer till rapporter i Latex t.ex.).
Sen kan man lägga till lite annat lull-lull, typ storlek på fil/katalog, andra grafiska tecken för strukturen (-A, gick inte att klistra in här) eller som XML som kanske hade passat som handen i handsken med tanke på kursen (-X). Samma struktur ser ut så här i XML-format:

[suddgummi@remoteserver]$ tree -X /usr/share/git
<?xml version="1.0"?>
<tree>
  <directory name="/usr/share/git">
    <file name="README"></file>
    <directory name="buildsystems">
      <directory name="Generators">
        <file name="QMake.pm"></file>
        <file name="Vcproj.pm"></file>
      </directory>
      <file name="Generators.pm"></file>
      <file name="engine.pl"></file>
      <file name="generate"></file>
      <file name="parse.pl"></file>
    </directory>
    <directory name="completion">
      <file name="git-completion.bash"></file>
      <file name="git-completion.tcsh"></file>
      <file name="git-completion.zsh"></file>
      <file name="git-prompt.sh"></file>
    </directory>
    <directory name="contacts">
      <file name="Makefile"></file>
      <file name="git-contacts"></file>
      <file name="git-contacts.txt"></file>
    </directory>
    <file name="convert-grafts-to-replace-refs.sh"></file>
    <directory name="convert-objects">
      <file name="convert-objects.c"></file>
      <file name="git-convert-objects.txt"></file>
    </directory>
    <directory name="credential">
      <directory name="gnome-keyring">
        <file name="Makefile"></file>
        <file name="git-credential-gnome-keyring.c"></file>
      </directory>
      <directory name="netrc">
        <file name="Makefile"></file>
        <file name="git-credential-netrc"></file>
        <file name="test.netrc"></file>
        <file name="test.pl"></file>
      </directory>
      <directory name="osxkeychain">
        <file name="Makefile"></file>
        <file name="git-credential-osxkeychain.c"></file>
      </directory>
      <directory name="wincred">
        <file name="Makefile"></file>
        <file name="git-credential-wincred.c"></file>
      </directory>
    </directory>
    <directory name="diff-highlight">
      <file name="README"></file>
      <file name="diff-highlight"></file>
    </directory>
    <directory name="emacs">
      <file name="Makefile"></file>
      <file name="README"></file>
      <file name="git-blame.el"></file>
      <file name="git-blame.elc"></file>
      <file name="git.el"></file>
      <file name="git.elc"></file>
    </directory>
    <directory name="examples">
      <file name="README"></file>
      <file name="builtin-fetch--tool.c"></file>
      <file name="git-checkout.sh"></file>
      <file name="git-clean.sh"></file>
      <file name="git-clone.sh"></file>
      <file name="git-commit.sh"></file>
      <file name="git-fetch.sh"></file>
      <file name="git-gc.sh"></file>
      <file name="git-log.sh"></file>
      <file name="git-ls-remote.sh"></file>
      <file name="git-merge-ours.sh"></file>
      <file name="git-merge.sh"></file>
      <file name="git-notes.sh"></file>
      <file name="git-remote.perl"></file>
      <file name="git-repack.sh"></file>
      <file name="git-rerere.perl"></file>
      <file name="git-reset.sh"></file>
      <file name="git-resolve.sh"></file>
      <file name="git-revert.sh"></file>
      <file name="git-svnimport.perl"></file>
      <file name="git-svnimport.txt"></file>
      <file name="git-tag.sh"></file>
      <file name="git-verify-tag.sh"></file>
      <file name="git-whatchanged.sh"></file>
    </directory>
    <directory name="fast-import">
      <file name="git-import.perl"></file>
      <file name="git-import.sh"></file>
      <file name="git-p4.README"></file>
      <file name="import-directories.perl"></file>
      <file name="import-tars.perl"></file>
      <file name="import-zips.py"></file>
    </directory>
    <directory name="git-jump">
      <file name="README"></file>
      <file name="git-jump"></file>
    </directory>
    <file name="git-prompt.sh"></file>
    <file name="git-resurrect.sh"></file>
    <directory name="git-shell-commands">
      <file name="README"></file>
      <file name="help"></file>
      <file name="list"></file>
    </directory>
    <directory name="gitview">
      <file name="gitview"></file>
      <file name="gitview.txt"></file>
    </directory>
    <directory name="hg-to-git">
      <file name="hg-to-git.py"></file>
      <file name="hg-to-git.txt"></file>
    </directory>
    <directory name="hooks">
      <directory name="multimail">
        <file name="CHANGES"></file>
        <file name="README"></file>
        <file name="README.Git"></file>
        <file name="README.migrate-from-post-receive-email"></file>
        <file name="git_multimail.py"></file>
        <file name="migrate-mailhook-config"></file>
        <file name="post-receive"></file>
      </directory>
      <file name="post-receive-email"></file>
      <file name="pre-auto-gc-battery"></file>
      <file name="setgitperms.perl"></file>
      <file name="update-paranoid"></file>
    </directory>
    <directory name="mw-to-git">
      <directory name="Git">
        <file name="Mediawiki.pm"></file>
      </directory>
      <file name="Makefile"></file>
      <directory name="bin-wrapper">
        <file name="git"></file>
      </directory>
      <file name="git-mw.perl"></file>
      <file name="git-remote-mediawiki.perl"></file>
      <file name="git-remote-mediawiki.txt"></file>
      <directory name="t">
        <file name="Makefile"></file>
        <file name="README"></file>
        <directory name="install-wiki">
          <file name="LocalSettings.php"></file>
          <file name="db_install.php"></file>
        </directory>
        <file name="install-wiki.sh"></file>
        <file name="push-pull-tests.sh"></file>
        <file name="t9360-mw-to-git-clone.sh"></file>
        <file name="t9361-mw-to-git-push-pull.sh"></file>
        <file name="t9362-mw-to-git-utf8.sh"></file>
        <file name="t9363-mw-to-git-export-import.sh"></file>
        <file name="t9364-pull-by-rev.sh"></file>
        <file name="t9365-continuing-queries.sh"></file>
        <file name="test-gitmw-lib.sh"></file>
        <file name="test-gitmw.pl"></file>
        <file name="test.config"></file>
      </directory>
    </directory>
    <directory name="persistent-https">
      <file name="LICENSE"></file>
      <file name="Makefile"></file>
      <file name="README"></file>
      <file name="client.go"></file>
      <file name="main.go"></file>
      <file name="proxy.go"></file>
      <file name="socket.go"></file>
    </directory>
    <directory name="remote-helpers">
      <file name="README"></file>
      <file name="git-remote-bzr"></file>
      <file name="git-remote-hg"></file>
    </directory>
    <file name="remotes2config.sh"></file>
    <file name="rerere-train.sh"></file>
    <directory name="stats">
      <file name="git-common-hash"></file>
      <file name="mailmap.pl"></file>
      <file name="packinfo.pl"></file>
    </directory>
    <directory name="subtree">
      <file name="COPYING"></file>
      <file name="INSTALL"></file>
      <file name="Makefile"></file>
      <file name="README"></file>
      <file name="git-subtree"></file>
      <file name="git-subtree.1"></file>
      <file name="git-subtree.html"></file>
      <file name="git-subtree.sh"></file>
      <file name="git-subtree.txt"></file>
      <file name="git-subtree.xml"></file>
      <directory name="t">
        <file name="Makefile"></file>
        <file name="t7900-subtree.sh"></file>
      </directory>
      <file name="todo"></file>
    </directory>
    <directory name="svn-fe">
      <file name="Makefile"></file>
      <file name="svn-fe.c"></file>
      <file name="svn-fe.txt"></file>
      <file name="svnrdump_sim.py"></file>
    </directory>
    <directory name="thunderbird-patch-inline">
      <file name="README"></file>
      <file name="appp.sh"></file>
    </directory>
    <directory name="workdir">
      <file name="git-new-workdir"></file>
    </directory>
  </directory>
  <report>
    <directories>33</directories>
    <files>143</files>
  </report>
</tree>

tree går att få i OS X också, t.ex. genom Homebrew

Tyvärr känner jag inte till något annat på rak arm som är grafiskt.

  • Medlem
  • Nässjö
  • 2015-05-24 11:15
Ursprungligen av suddgummi:

I övriga UNIX-världen finns det fenomenala kommandot tree som skapar just en trädstruktur på kommandolinjen. Ett exempel på hur det kan se ut:
[code]
[suddgummi@remoteserver]$ tree /usr/share/git

tree går att få i OS X också, t.ex. genom Homebrew

Det där blir perfekt. Det råkar vara så att jag har lagt webbsajten på min Raspberry Pi (med Raspbian), så det var bara att installera Tree och köra SSH via Terminalen. (Y)

1
Bevaka tråden