Linux Tips

ファイル名からディレクトリや拡張子を取り除くには

北浦訓行
2003/5/1

 シェルスクリプトを作成しているときなどに、絶対パスからファイル名だけを取得したり、ファイル名から拡張子を取り除いて抽出したい場合がある。そのようなときは、basenameコマンドを使う。例えば、ホームディレクトリにあるfile1.txtというファイルの場合、以下のようになる。

$ basename /home/nori/file1.txt ←絶対パスからファイル名だけを取り出す
file1.txt

 また、以下のようにすれば拡張子を取り除くこともできる。

$ basename /home/nori/file1.txt .txt ←取り除く拡張子を末尾で指定
file1

 これは、あくまでも末尾の文字列を指定して、一致したものを取り除くので、以下のようなケースもある。

$ basename /home/nori/file1.txt 1.txt
file ←1.txtが一致したため取り除かれた
$ basename /home/nori/file1.txt 2.txt
file1.txt ←一致しなかったので取り除かれない

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間