💻 Linuxコマンドでファイルの「絶対パス」を一発表示!findとtreeの活用術

絶対パスを表記するコマンド

1. find コマンドを使用する

find コマンドは、指定したディレクトリ以下のファイルやディレクトリを検索し、その結果をフルパスで表示します。

コマンド

Bash

find "$(pwd)"

解説

  • pwd (Print Working Directory): まず、このコマンドを実行している現在のディレクトリの絶対パスを取得します。
  • "$(pwd)": これを $() で囲むことで、find コマンドの検索開始ディレクトリとして現在のディレクトリの絶対パスを指定しています。
  • find の動作: find は、指定された開始ディレクトリから検索を開始し、結果を絶対パス(または、指定したパスからの相対パス)で表示します。開始ディレクトリに絶対パスを指定することで、結果も絶対パスで得られます。

2. tree コマンドのオプションを使用する

もし、質問で提供されたようなツリー構造の形式を保ちつつ絶対パスで表示したい場合は、tree コマンド自体に絶対パスで表示するためのオプション -f (full path) と -a (all files) を組み合わせるのが最適です。

コマンド

Bash

tree -fa

解説

  • tree: ディレクトリ構造をツリー形式で表示するコマンド。
  • -f (Full path): 各ファイル名をツリーのルートディレクトリからの相対パスではなく、**フルパス(絶対パス)**で表示するように指定します。
  • -a (All files): 通常、tree はドットファイル(.で始まる隠しファイル)を無視しますが、このオプションを付けることでそれらも含めて表示します(必須ではありませんが、完全な一覧には役立ちます)。

実行結果のイメージ

todasan@todasan:~ $ tree -f
/home/todasan
|-- /home/todasan/clothes
|   |-- /home/todasan/clothes/hats
... (以下、すべてのパスが /home/todasan/ から始まる絶対パスで表示される)

この tree -f の方法が、元の tree の出力形式を活かしつつ絶対パスを得るのに最も適しています。

ブログ

BLOG

PAGE TOP