リダイレクトとパイプ 次の書き方もなかなかおもしろい。ファイル$IFACEDIR/$1の内容を1行ごとに変数lineに読み込ませて処理をするという記述になっている。
![定石を知りスキルを上げる](https://cdn-ak-scissors.b.st-hatena.com/image/square/6e84fc6ab06f31b2e64248cbfc92fe06deb5bab5/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fimages%2Flogo%2F1200x630_500x500_ait.gif)
#!/usr/bin/sh GYOU=`ps -ef | grep slapd | grep -v grep | wc -l` LOG=/home/user/slapd-error.log if [ $GYOU -ge 1 ]; then echo "OK" else /usr/local/libexec/slapd echo `date` >> $LOG --- slapd-error echo "NG" fi ※これをcronで5分に一度ぐらい動かしておきます ■■■解説■■■ #!/usr/bin/sh GYOU=`ps -ef | grep slapd | grep -v grep | wc -l` # 次の3つのコマンドをパイプで渡していったものです #ps -ef | grep slapd slapdプロセスを検索 #grep -v grep その検索の中でgrepという文字の
grepは素晴らしいテキスト検索ツールだ。grepを使えば、ファイルに含まれているテキストでも、あるコマンドが出力したテキストでも、テキストであるものはすべて検索することが可能だ。また、grepでは単純な文字列のほかに正規表現を用いた検索もできるほか、利便性を考慮してさまざまな出力形式が用意されている。 たとえば、sshdが動作しているかどうかを調べるには、次のように調べるだろう。 $ ps ax | grep sshd この例では、パイプを用いてps axの出力をgrepの入力に接続しており、文字列sshdに一致する行がすべて出力される。この場合、grepはもちろん自分自身のプロセスも同じように出力してしまう。そこで、grepをもう一度実行し、文字列grepが含まれていないものを出力するようにしよう。 $ ps ax | grep sshd | grep -v grep -vオプションを
(タイトルは釣りです) いい加減、>/dev/null 2>&1と書くのをやめたらどうか - DQNEO起業日記 この記事のタイトルが twitter で流れてきたのを見て、「そうだ!出力を /dev/null に捨てるなんてとんでもないよね!」と思ってよく読んだら /dev/null に間違いなく捨てる方法だったのでつい crontabに > /dev/null 書いたら椅子投げる 2012-06-13 00:01:17 via YoruFukurou とつぶやいてしまったのですが、では出力を捨てないためにはどうすればいいのか。現時点での個人的ベストプラクティスを書き留めておきます。 デフォルト : メールで送る (MAILTO) せっかく cron daemon がログを捨てないためにわざわざメールで送ってくれるのに、それを > /dev/null で踏みにじるとはひどい。 とはいえ、
シェルは「キーボードから入力し,画面に出力する」ようになっている。こうした入力と出力の方法を変更する場合には,リダイレクトを使う。たとえば,入力をファイルから行い,出力は捨ててしまう(画面への表示もファイルへの保存もしない)ということが可能だ。 リダイレクトには出力先を切り替える「>」,出力先のファイルに追加する「>>」,入力元を切り替える「<」,複数行の入力を行える「<<」がある。 出力先や入力先の指定方法には,ファイル・ディスクリプタと呼ぶ数字を用いる。たとえば,特定のファイルへのアクセスをファイル・ディスクリプタの5に割り当てるといった具合だ。 ファイル・ディスクリプタの0,1,2はシェルで予約されている。 「0」は標準入力と呼ばれ,シェルにどのように入力するかを指定できる。通常はキーボードからの入力になっている。 「1」は標準出力と呼ばれ,シェルの結果をどこに出力するかを指定できる
2つの顔を持つソフトウェア:シェル ステップ・バイ・ステップ・シェルスクリプト(1) この連載では、シェルスクリプトで実用的なプログラムを組むことを目標にして、シェルの基本的な知識を説明していきます
GUIに対するCUIの優位性の1つとして、作業の自動化が挙げられる。普段行う作業を1つのコマンドにまとめたり、複数のファイルに対して同じ処理を繰り返し行ったりといったことが比較的簡単なのだ。WindowsにもWSH(Windows Script Host)が用意されている。しかし、Linuxのbashスクリプトの方が簡単なのだ。 シェルスクリプトの基本はコマンドを並べること コマンドによる作業を自動化するには、その内容を記述したテキストファイルを用意すればいいのです。このテキストファイルを「シェルスクリプト」といいます。 最も簡単な自動化 最も簡単なシェルスクリプトは、コマンドをそのまま並べることです。例えば、tarコマンドでファイルのバックアップを取るとしましょう。単純にルートディレクトリから下を全部バックアップするにしても、/devや/tmpは必要ないですね。すると、
現在勉強用に使っているUbuntu7.10には一般的なLinuxの起動プロセスで重要な役割を果たす/etc/inittabが存在しないことが分かった。起動を高速化するためにupstartという新しい仕組みを導入したらしく、各種設定ファイルは/etc/event.dディレクトリに移動している。 2007年12月現在、upstartを採用しているディストリビューションはUbuntu以外には皆無なようでネット上の情報が極端に少ない。 Linux初心者がいきなり特殊な仕組みを少ない情報で理解するのは難しい気がしたので、とりあえず一般的なディストリビューションで採用されている/etc/inittab系の仕組みをまとめることにする。 ■RedHat系とDebian系での/etc以下のディレクトリ構造の違い RedHat系とDebian系では/etc以下のディレクトリ構造が微妙に違っている。 RedHa
最新更新日:2017/03/27 Mayaaとは MayaaはHTMLをベースとしたテンプレートによるプログラマとデザイナの作業分担を強く意識したWEBフロントサービスエンジンです。 (詳しい情報)
ビジネスプロセスの構成単位に合わせて構築・整理されたソフトウェア部品や機能を、ネットワーク上に公開し、これらを相互に連携させることにより、柔軟なエンタープライズ・システム、企業間ビジネスプロセス実行システムを構築しようというシステムアーキテクチャのこと。 ここでいう“サービス”とは、ほかのコンピュータから利用可能となるようにネットワーク上にインターフェイスを公開したソフトウェアという意味とであるのと同時に、「注文受付」「信用照会」「在庫確認」「出庫指示」「請求処理」などといった“ビジネスプロセス上の処理単位”を示している。 すなわちSOAは、標準的なインターフェイスを持った再利用可能なソフトウェア部品の組み合わせによってシステムを構成するという“コンピュータシステムの作り方”であるとともに、独立して運営されるビジネスファンクションの組み合わせによってビジネスプロセスを構成するという“ビジネ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く