広告スペース(バナー)
🖥️Linux/シェルコマンド レッスン
ターミナルの基本操作6
ファイル操作の基礎6
権限とファイル検索6
プロセスとディスク管理6
履歴とテキスト処理6
環境変数とネットワーク基本6
接続と比較・日時操作6
テキスト整形と情報取得6
仕上げのコマンド12
レッスン 47 / 61

dirname でパスからフォルダ部分だけ取り出そう

「長いファイルパスからフォルダ部分だけを取り出したい」というときに使うのがdirnameです。dirnameは指定したパスから、末尾のファイル名を除いたフォルダ部分だけを取り出して表示します。

dirname パスという書式で使います。basenameとちょうど対になるコマンドで、パスを「フォルダ部分」と「ファイル名部分」に分割する際にセットで使われます。

dirname /home/user/project/notes.txtを実行すると、ファイル名を除いた/home/user/projectというフォルダ部分だけが取り出されて表示されます。

よくあるつまずきは、末尾にスラッシュが付いたパスを渡したとき、想定と違う結果になることです。パスの末尾の形式には注意が必要です。

実務ではシェルスクリプトの中で、渡されたファイルパスの「置き場所」だけを取り出して別の処理に渡す際によく使われます。

Linux/シェルコマンド
試してみよう(疑似ターミナルへの入力例)
dirname /home/user/project/notes.txt

🧑‍💻 このコマンドは Linux/シェルコマンドの疑似ターミナル に実際に入力して試せます(このページ自体には操作可能なターミナルはありません)。

🎯
ここまでできればゴール達成!
長いパスから、フォルダ部分だけを取り出せるようになります。
広告スペース(バナー)
広告スペース(記事内)