basename
表示
basename(ベースネーム)は パス名 を与えると、最後のスラッシュ ('/') までの部分を削除した文字列を返すUNIX のプログラムである。
使用法
[編集]Single UNIX Specification における basename の仕様は以下のようになっている。
basename string [suffix]
- string
- suffix
- 指定されたとき、basename は suffix も削除する。
例
[編集]$ basename /usr/home/jsmith/basename.wiki ki basename.wi
効率
[編集]basename が受け取れるパス名の数は一つに限られているので、シェルスクリプトの内部ループ内で使用するには効率が悪い。
while read file; do
basename "$file"
done < ''some-input''
上記のスクリプトでは入力の各行毎に別のプロセスを起動することになる。このため、典型的には sed が代わりに用いられる。
sed 's/.*\///' < ''some-input''
関連項目
[編集]外部リンク
[編集]- return non-directory portion of a pathname
- Manpage of BASENAME GNU 版。JM Project
- basename(1) man page(SunOS リファレンスマニュアル)
- basename(1) man page(HP-UX リファレンス)