UNIX のコマンド:dirnameコマンド
技術ドキュメント目次 -> UNIX のコマンド -> dirnameコマンド本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
◆ dirnameコマンドとは
dirname コマンドを使用すると、引数で与えたファイルの設置してあるディレクトリ名が出力されます。
◆ dirnameコマンド実行例
例えば、/bin/ls に対して dirnameコマンドを実行すると次のようになり、常に、/bin/ ディレクトリを示す文字列が出力されます。
$ dirname /bin/ls /bin $ cd /bin/ $ dirname ./ls . $ dirname ls . $ dirname ../bin/ls ../bin $ |
これだけを見ると「ふ~ん、それで???」といったような感じですが、
シェルスクリプトの中において、実行ディレクトリをそろえたいときに
これが結構便利です。
たとえば、
/usr/local/somedir/bin/test.sh というシェルスクリプトを作成したとして、
その中の先頭の方の行で、cd `/usr/bin/dirname $0` というコマンドを実行
すると、/usr/local/somedir/bin/test.shをどのようなディレクトリから実行
したとしても、必ずそのワークディレクトリが/usr/local/somedir/bin に
なるようになります。
(cd ~/; /usr/local/somedir/bin/test.sh としても、
cd /usr/local/; ./somedir/bin/test.sh としても、
cd /usr/local/somedir/; ./bin/test.sh としたとしても、
全ての場合において必ずワークディレクトリが /usr/local/somedir/bin になります)
#!/bin/sh ## ワークディレクトリを /usr/local/somedir/bin にする cd `/usr/bin/dirname $0` ..... (メインロジック) |
■ UNIX のコマンド についての他のドキュメント
- cdコマンド
- cutコマンド
- dirnameコマンド
- ftpコマンドのバッチ処理
- loggerコマンド
- netstatコマンド
- nkfコマンド
- sortコマンド
- topコマンド
- tracerouteコマンド
- unameコマンド
- wcコマンド
- wget コマンドでミラーを取る
- whoisコマンド
- writeコマンド
- xargsコマンド(複数ファイルの一括検索で超便利)
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS