シェルスクリプトは長くなると処理の境界が不鮮明になりがち。 コメントで処理の境界を表現する工夫はよく見かけるが、もっと良い方法はないか考えてみた。 :コマンド、&&演算子、複合コマンド()や{}を組み合わせて書くと、処理の境界線がはっきりする。
SSHごしに、マルチ画面でtailやコマンドの実行を行えるツール『multitail』というものがあると知ったので試してみることにした。 マルチ画面でtailをかけられるということは、監視などでいくつもTeratermのウィンドウを開かなくてもいいということか…ちょっと便利そう。 1.インストール まずはインストールから。 以下のコマンドを実行しインストールを行う。 Debian/Ubuntu sudo apt-get install multitail RHEL系Linux yum install multitail ※RHEL系の場合、RPMforgeを有効にする必要がある。 2.コマンド実行 実際にコマンドを実行してみる。 以下のコマンドを実行し「/var/log/syslog」「/var/log/apt/history.log」「/var/log/auth.log」を同時にtail
シェルスクリプトを作成する際、事前に定めた変数名をスクリプト内で他の変数に代入し、それを展開・利用したいシチュエーションもあるだろう。 そんな時は、evalコマンドを用いて変数を2重展開することで対応可能だ。 例えば、以下のようなスクリプトを作成したとする。 #!/bin/sh # 変数 VALに値が入力されている VAL="test" # 変数 EVAL_VALに、変数名である「VAL」という文字列を入力 EVAL_VAL="VAL" # 変数 EVAL_VALを呼び出す echo $EVAL_VAL これをそのまま実行した場合、当然ながら出力される値は「VAL」となる。 $ cat test_eval_1.sh #!/bin/sh # 変数 VALに値が入力されている VAL="test" # 変数 EVAL_VALに、変数名である「VAL」という文字列を入力 EVAL_VAL="VA
シェルスクリプト入門として, 基本的な書き方をまとめました. 長いですが, 1ページにまとめてみました. 良かったら目次も参考にしてご覧になって下さい. 目次 シェルスクリプトとは 作り方, 実行の仕方 コメント ユーザーからのキーボード入力を受け付ける 変数 通常の変数 特別な変数 演算子 数値計算演算子 比較演算子 コマンドを繋げる演算子 条件文に使える比較演算子 条件文 制御構文(分岐) if文 case文 制御構文(ループ) for文 while文 until文 select文 文字列処理 文字列置換 削除 複数行のテキストの出力(ヒアドキュメント) 関数 シェルスクリプトとは シェルスクリプトとは, シェルの動作をまとめて記述したスクリプトのことです. 決められた文法にしたがって処理を記述することによって, シェルでの処理をまとめて行ったり, 作業を自動化できたりします(例 複数
1. 変数に格納された文字列を加工する。 1.1. 文字列の末尾から指定した文字列に一致する部分を取り除く 例では test.tar.gz の末尾から tar.gz を取り除く。
私はシェルスクリプトの大ファンで、他人のスクリプトから面白い方法を学ぶのが大好きだ。最近、SSHサーバの2要素認証を簡単にするためのauthy-sshスクリプトに出会った。このスクリプト群を見まわしていて、みんなと共有したいたくさんのクールなことを見つけた。 出力に色付けする 出力文字列を、成功した時は緑に、失敗した時は赤に、警告は黄色に色づけしたいと思うことはたくさんあるだろう。 NORMAL=$(tput sgr0) GREEN=$(tput setaf 2; tput bold) YELLOW=$(tput setaf 3) RED=$(tput setaf 1) function red() { echo -e "$RED$*$NORMAL" } function green() { echo -e "$GREEN$*$NORMAL" } function yellow() { e
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く