Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
実行したシェルスクリプトのおいてあるディレクトリを取得する 実行したシェルスクリプトと同じディレクトリの下に、テンポラリのファイルを置いたりディレクトリを置いたりしたくなる事があると思うのだけど、そういったときにはそのシェルスクリプトを実行した時のカレントディレクトリに注意しなくてはいけない。 #!/bin/sh touch "./hoge" こんな風なシェルスクリプト(仮に hogehoge.sh とする)にすると、/tmp に居る状態で~/hogehoge.sh を実行すると /tmp 配下に hoge ファイルが作られてしまう。 どうするかというと シェルスクリプトのディレクトリを取得して、そのディレクトリをベースとしてやれば良い。 その為に、 dirname コマンドを使う。 #!/bin/sh touch `dirname ${0}`/hoge このようにするとシェルスクリプトが
「新しいシェルプログラミングの教科書」というシェルスクリプトの入門書を執筆しました。 2017年11月21日発売です。 新しいシェルプログラミングの教科書 作者: 三宅英明出版社/メーカー: SBクリエイティブ発売日: 2017/11/21メディア: 単行本この商品を含むブログを見る 目次 シェルってなんだろう シェルスクリプトとは何か シェルスクリプトの基本 変数 クォーティング 制御構造 リダイレクトとパイプ 関数 組み込みコマンド 正規表現と文字列 シェルスクリプトの実行方法 シェルスクリプトのサンプルで学ぼう シェルスクリプトの実用例 テストとデバッグ 読みやすいシェルスクリプト 内容 bashのシェルスクリプトを書く方法について解説した本です。 変数、制御構造(if文など)、関数などbashの基本的な文法から始まって、実際に役に立つシェルスクリプトを作成して、そのテストとデバッグ
はじめに bashには次の2つの理由によって、組み込みコマンド(builtin command)というものが存在します。 スクリプトの高速化のため。組み込みコマンドであれば通常のコマンドを実行する場合に比べてプロセスの生成コスト(fork()/exec())が削減できる bash自身の状態を変更させるため。例えばcdコマンドを/bin/cdとして用意してbashから当該コマンドを実行しても、当該コマンドのpwdが変更されるだけで、bashのそれは変更されないため、意味がない 今回は前者に焦点を合わせて、その効果と、組み込みコマンドの自作方法について述べます。 予備知識: 組込みコマンドによるスクリプト高速化の効果 組込みコマンドそのものの存在、及びその存在意義について既にご存知のかたは、この節を飛ばしてもらって構いません。 例えば皆さんがbashスクリプトからechoコマンドを実行した場合
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く