Linuxでディレクトリとファイルの配置を階層構造(木構造)で表示する!(tree)

Linuxでディレクトリとファイルの配置を階層構造(木構造)で表示します。

Linuxでディレクトリとファイルの配置を階層構造(木構造)で表示する!(tree)

treeコマンドを使用すると、ディレクトリとファイルの配置を視覚的に表示することができます。たとえば、Systemdの設定ファイルのディレクトリを確認してみます。

$ sudo tree /etc/systemd
/etc/systemd
├── coredump.conf
├── journald.conf
├── logind.conf
├── resolved.conf
├── system
│   ├── basic.target.wants
│   │   └── microcode.service -> /usr/lib/systemd/system/microcode.service
│   ├── bluetooth.target.wants
│   │   └── bluetooth.service -> /usr/lib/systemd/system/bluetooth.service
│   ├── dbus-org.bluez.service -> /usr/lib/systemd/system/bluetooth.service
│   ├── dbus-org.fedoraproject.FirewallD1.service -> /usr/lib/systemd/system/firewalld.service
│   ├── dbus-org.freedesktop.Avahi.service -> /usr/lib/systemd/system/avahi-daemon.service
│   ├── dbus-org.freedesktop.ModemManager1.service -> /usr/lib/systemd/system/ModemManager.service
│   ├── dbus-org.freedesktop.nm-dispatcher.service -> /usr/lib/systemd/system/NetworkManager-dispatcher.service
│   ├── dbus-org.freedesktop.timedate1.service -> /usr/lib/systemd/system/timedatex.service
│   ├── default.target -> /usr/lib/systemd/system/graphical.target
│   ├── default.target.wants
│   │   └── nvmefc-boot-connections.service -> /usr/lib/systemd/system/nvmefc-boot-connections.service
│   ├── dev-virtio\x2dports-org.qemu.guest_agent.0.device.wants
│   │   └── qemu-guest-agent.service -> /usr/lib/systemd/system/qemu-guest-agent.service
│   ├── display-manager.service -> /usr/lib/systemd/system/gdm.service
│   ├── getty.target.wants
│   │   └── getty@tty1.service -> /usr/lib/systemd/system/getty@.service
│   ├── graphical.target.wants
│   │   ├── accounts-daemon.service -> /usr/lib/systemd/system/accounts-daemon.service
│   │   ├── rtkit-daemon.service -> /usr/lib/systemd/system/rtkit-daemon.service
│   │   └── udisks2.service -> /usr/lib/systemd/system/udisks2.service
│   ├── local-fs.target.wants
│   │   └── ostree-remount.service -> /usr/lib/systemd/system/ostree-remount.service
│   ├── multi-user.target.wants
│   │   ├── atd.service -> /usr/lib/systemd/system/atd.service
│   │   ├── auditd.service -> /usr/lib/systemd/system/auditd.service
│   │   ├── avahi-daemon.service -> /usr/lib/systemd/system/avahi-daemon.service
│   │   ├── crond.service -> /usr/lib/systemd/system/crond.service
│   │   ├── cups.path -> /usr/lib/systemd/system/cups.path
│   │   ├── cups.service -> /usr/lib/systemd/system/cups.service
│   │   ├── firewalld.service -> /usr/lib/systemd/system/firewalld.service
│   │   ├── irqbalance.service -> /usr/lib/systemd/system/irqbalance.service
│   │   ├── kdump.service -> /usr/lib/systemd/system/kdump.service
│   │   ├── ksm.service -> /usr/lib/systemd/system/ksm.service
│   │   ├── ksmtuned.service -> /usr/lib/systemd/system/ksmtuned.service
│   │   ├── libstoragemgmt.service -> /usr/lib/systemd/system/libstoragemgmt.service
│   │   ├── libvirtd.service -> /usr/lib/systemd/system/libvirtd.service
│   │   ├── mcelog.service -> /usr/lib/systemd/system/mcelog.service
│   │   ├── mdmonitor.service -> /usr/lib/systemd/system/mdmonitor.service
│   │   ├── ModemManager.service -> /usr/lib/systemd/system/ModemManager.service
│   │   ├── NetworkManager.service -> /usr/lib/systemd/system/NetworkManager.service
│   │   ├── nfs-client.target -> /usr/lib/systemd/system/nfs-client.target
│   │   ├── remote-fs.target -> /usr/lib/systemd/system/remote-fs.target
│   │   ├── rhsmcertd.service -> /usr/lib/systemd/system/rhsmcertd.service
│   │   ├── rpcbind.service -> /usr/lib/systemd/system/rpcbind.service
│   │   ├── rsyslog.service -> /usr/lib/systemd/system/rsyslog.service
│   │   ├── smartd.service -> /usr/lib/systemd/system/smartd.service
│   │   ├── sshd.service -> /usr/lib/systemd/system/sshd.service
│   │   ├── sssd.service -> /usr/lib/systemd/system/sssd.service
│   │   ├── sysstat.service -> /usr/lib/systemd/system/sysstat.service
│   │   ├── tuned.service -> /usr/lib/systemd/system/tuned.service
│   │   ├── vdo.service -> /usr/lib/systemd/system/vdo.service
│   │   └── vmtoolsd.service -> /usr/lib/systemd/system/vmtoolsd.service
│   ├── network-online.target.wants
│   │   └── NetworkManager-wait-online.service -> /usr/lib/systemd/system/NetworkManager-wait-online.service
│   ├── printer.target.wants
│   │   └── cups.service -> /usr/lib/systemd/system/cups.service
│   ├── remote-fs.target.wants
│   │   ├── iscsi.service -> /usr/lib/systemd/system/iscsi.service
│   │   └── nfs-client.target -> /usr/lib/systemd/system/nfs-client.target
│   ├── sockets.target.wants
│   │   ├── avahi-daemon.socket -> /usr/lib/systemd/system/avahi-daemon.socket
│   │   ├── cups.socket -> /usr/lib/systemd/system/cups.socket
│   │   ├── dm-event.socket -> /usr/lib/systemd/system/dm-event.socket
│   │   ├── iscsid.socket -> /usr/lib/systemd/system/iscsid.socket
│   │   ├── iscsiuio.socket -> /usr/lib/systemd/system/iscsiuio.socket
│   │   ├── libvirtd-ro.socket -> /usr/lib/systemd/system/libvirtd-ro.socket
│   │   ├── libvirtd.socket -> /usr/lib/systemd/system/libvirtd.socket
│   │   ├── multipathd.socket -> /usr/lib/systemd/system/multipathd.socket
│   │   ├── rpcbind.socket -> /usr/lib/systemd/system/rpcbind.socket
│   │   ├── sssd-kcm.socket -> /usr/lib/systemd/system/sssd-kcm.socket
│   │   ├── virtlockd.socket -> /usr/lib/systemd/system/virtlockd.socket
│   │   └── virtlogd.socket -> /usr/lib/systemd/system/virtlogd.socket
│   ├── sysinit.target.wants
│   │   ├── import-state.service -> /usr/lib/systemd/system/import-state.service
│   │   ├── iscsi-onboot.service -> /usr/lib/systemd/system/iscsi-onboot.service
│   │   ├── loadmodules.service -> /usr/lib/systemd/system/loadmodules.service
│   │   ├── lvm2-lvmpolld.socket -> /usr/lib/systemd/system/lvm2-lvmpolld.socket
│   │   ├── lvm2-monitor.service -> /usr/lib/systemd/system/lvm2-monitor.service
│   │   ├── multipathd.service -> /usr/lib/systemd/system/multipathd.service
│   │   ├── nis-domainname.service -> /usr/lib/systemd/system/nis-domainname.service
│   │   └── selinux-autorelabel-mark.service -> /usr/lib/systemd/system/selinux-autorelabel-mark.service
│   ├── syslog.service -> /usr/lib/systemd/system/rsyslog.service
│   ├── sysstat.service.wants
│   │   ├── sysstat-collect.timer -> /usr/lib/systemd/system/sysstat-collect.timer
│   │   └── sysstat-summary.timer -> /usr/lib/systemd/system/sysstat-summary.timer
│   ├── systemd-timedated.service -> /dev/null
│   ├── timers.target.wants
│   │   ├── dnf-makecache.timer -> /usr/lib/systemd/system/dnf-makecache.timer
│   │   ├── mlocate-updatedb.timer -> /usr/lib/systemd/system/mlocate-updatedb.timer
│   │   └── unbound-anchor.timer -> /usr/lib/systemd/system/unbound-anchor.timer
│   └── vmtoolsd.service.requires
│       └── vgauthd.service -> /usr/lib/systemd/system/vgauthd.service
├── system.conf
├── user
│   ├── dbus-org.bluez.obex.service -> /usr/lib/systemd/user/obex.service
│   ├── default.target.wants
│   │   └── pulseaudio.service -> /usr/lib/systemd/user/pulseaudio.service
│   └── sockets.target.wants
│       └── pulseaudio.socket -> /usr/lib/systemd/user/pulseaudio.socket
└── user.conf

20 directories, 87 files

おわりに

ディレクトリやファイルの配置の構造を確認する場合は、treeコマンドを使用すると便利です。

関連記事

関連書籍(Amazon)