タグ

shellscriptとlinuxに関するissmのブックマーク (10)

  • init.d スクリプトを書こう

    私が 1997 年頃に Slackware から Debian にやって来たとき、 悩んだことのひとつが起動スクリプトでした。 Slackware では rc.local というファイルに起動コマンド列を べた書きすればよかったのですが、 Debian では start, stop, restart などの引き数をとって、 ひとつのスクリプトで起動・停止・設定変更などを行います。 このため走っているデーモンプロセスを捕まえるために start-stop-daemon という独自コマンドが多用されることになりますが、 これは使い方に多少のコツがあります。 この文書では、これまでに自前の起動スクリプトを書いた経験から、 そのへんのポイントをいくつか書いておこうと思います。 ただまあ、 シャットダウンに気を使わなくていい いざとなったらスーパーユーザ権限でモゲればいい という場合も結構多いと思う

  • シェルスクリプトでコマンドを作るまで - ザリガニが見ていた...。

    最近、俄然、興味が湧いてきたコマンド。もし、欲しい機能に見合うコマンドがなかったら、自分で作るしかない。そのうち作ってみたいという希望もある。調べてみた。 作業環境 MacBook OSX 10.6.2 bash シェルスクリプトは今までも多少なりとも使っていたので、片言だがなんとか使っている。 基 以下のスクリプトを~/Documents/hello.shとして保存した。 #!/bin/sh echo Hello, World! hello.shに実行権限を与える。 $ chmod +x ~/Documents/hello.sh パスを指定して呼び出せば、Hello, World!と表示された。 $ ~/Documents/hello.sh Hello, World! 引数の処理 有用なコマンドは、ほぼ間違いなく引数を伴う。 引数で渡されたデータを処理して、価値のある情報を出力してくれ

    シェルスクリプトでコマンドを作るまで - ザリガニが見ていた...。
  • シェルスクリプトでのコマンドラインオプションの処理(getopt) - redtower's memo

  • getopts - コマンド "getopt", "getopts" の使い方を把握する - spikelet days

    目的 "getopt"は、Cライブラリもコマンド版も、どちらも使い方を覚えにくい。 ここでは、コマンド版 "getopt" と、sh/bash built-in の "getopts" の使い方をまとめる。 結果 sh/bash built-inのgetoptsが使える場合は、そちらを使った方が良い。 外部コマンド getopt 使用時は、クォート処理に気をつける。 速度的には、getoptとgetoptsどっちでも大して差はない。 getopts.sh https://sssvn.jp/svn/spikelet/sh/getopts.sh getopt-o.sh https://sssvn.jp/svn/spikelet/sh/getopt-o.sh 以下、詳細。 getopt を使う(クォート考慮なし) getopt(1)を参考にしつつ、素直に作成。 getopt.sh https:/

    getopts - コマンド "getopt", "getopts" の使い方を把握する - spikelet days
  • bashによるシェルスクリプトの小技(2) - shibainu55日記

    前回(bashによるシェルスクリプトの小技(1))に引き続き、シェルによって自動的に値が設定される特殊な変数について紹介する。特殊な変数を参照することにより、様々な情報を取得することができる(ただし、これらの変数には自分で任意の値を設定することはできない)。 さて、まずは特殊変数を一覧でまとめてみる。お馴染みのものが多いが、最後の2つ(特に最後のPIPESTATUS)についてはきっと今まで知らなかった人もいるんじゃないだろうか。シェルの中でパイプすると途中のコマンドのリターンコード、拾えないとか思っていませんか?今回のポイントとしては、「1. PIPESTATUS変数について」と「2. 特殊変数 $@と$*の違いについて」の2点を主に説明する。 特殊変数一覧表 変数名 自動的に設定される値 $? 直前に実行されたコマンドの終了ステータスが設定される変数。正常終了の場合は「0」、異常終了の場

    bashによるシェルスクリプトの小技(2) - shibainu55日記
  • hansode.org - このウェブサイトは販売用です! - hansode リソースおよび情報

    このウェブサイトは販売用です! hansode.org は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、hansode.orgが全てとなります。あなたがお探しの内容が見つかることを願っています!

  • GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ
  • 初めてシェルスクリプトを書くときに知っておきたいこと - Unix的なアレ

    他の言語をを書き慣れてから、シェルスクリプトを書こうとするとしょうもない部分でハマったりすることがあります。「簡単な処理だからシェルスクリプトで書くか」と思っても無駄に時間がかかってしまっては仕方ないですよね。 今回は初めてシェルスクリプトを書くときに、ハマりそうな点について説明をしたいと思います。 実行権限をつける 単純にファイルを生成しても下記の用に実行しようとしても実行はできません。 # touch test # ./test sh: ./test: Permission denied # touch foo # ./foo sh: ./foo: Permission denied これはファイルに実行権限がついていないため、起きる現象です。 chmodコマンドを使って実行権限をつけてやりましょう。 # chmod +x test # ./test # chmod +x foo #

    初めてシェルスクリプトを書くときに知っておきたいこと - Unix的なアレ
  • シェルスクリプト(bash) - Hirotake Itoh's memo by PukiWiki

    CUIの世界で暮らす場合、シェルの使いこなしで作業効率は桁違いに変わる。シェルは一種類だけではないが、シェルスクリプトの観点からはsh系とcsh系に分けられる。sh系であるbash(zshでもOK?)をメインに使ってみることにする。純粋な /bin/sh を使うと、declareが使えず、exprとなるのが面倒。 link * ステップ・バイ・ステップ・シェルスクリプト bashで始めるシェルスクリプト基礎の基礎 シェルスクリプトの基礎 画像整理における実例 * あえて全部別々に記述してみた。 jpegファイルで、大文字の拡張子を小文字にする(JPG -> jpg) * for filename in *.JPG do mv ${filename} ${filename%JPG}jpg done ダメ写真を削除したなどで、連番が歯抜けとなったjpegファイル群に番号を振りなおす * dec

  • bashで始めるシェルスクリプト基礎の基礎(1/2)

    GUIに対するCUIの優位性の1つとして、作業の自動化が挙げられる。普段行う作業を1つのコマンドにまとめたり、複数のファイルに対して同じ処理を繰り返し行ったりといったことが比較的簡単なのだ。WindowsにもWSH(Windows Script Host)が用意されている。しかし、Linuxのbashスクリプトの方が簡単なのだ。 シェルスクリプトの基はコマンドを並べること コマンドによる作業を自動化するには、その内容を記述したテキストファイルを用意すればいいのです。このテキストファイルを「シェルスクリプト」といいます。 最も簡単な自動化 最も簡単なシェルスクリプトは、コマンドをそのまま並べることです。例えば、tarコマンドでファイルのバックアップを取るとしましょう。単純にルートディレクトリから下を全部バックアップするにしても、/devや/tmpは必要ないですね。すると、

    bashで始めるシェルスクリプト基礎の基礎(1/2)
  • 1