atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
ページ検索 メニュー
玄箱PROとかLinuxとか
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
玄箱PROとかLinuxとか
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
玄箱PROとかLinuxとか
ページ検索 メニュー
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • 玄箱PROとかLinuxとか
  • PlayBeep.sh

玄箱PROとかLinuxとか

PlayBeep.sh

最終更新:2008年01月30日 12:38

aerocats

- view
だれでも歓迎! 編集
標準Linuxの/usr/local/bin/内にある。

スクリプト

#!/bin/sh

if [ -f "$1" ] ; then
        TEMPO=`grep "TEMPO=" $1|sed -e "s/TEMPO=//"`
        MELODY=`grep -v "TEMPO=" $1`
        PLAYDATA="${TEMPO} ${MELODY}"
else
        MELODY=`echo $*| sed -e "s/$0//"`
        PLAYDATA=${MELODY}
fi

miconapl -a bz_melody ${PLAYDATA}

スクリプト詳細

一文づつ見てみる。
#!/bin/sh
シェルの指定。shを指定している。
if [ -f "$1" ] ; then
「-f」オプションでこの引数が通常ファイルかどうかを判別している。
第1引数が通常ファイルであれば真となりthen以降の命令文を実行。
TEMPO=`grep "TEMPO=" $1|sed -e "s/TEMPO=//"`
TEMPO='命令文1'
とあり、命令文1での結果をTEMPOという名の変数に代入しろ、という内容だ。
命令文1を見てみる。
grep "TEMPO=" $1|sed -e "s/TEMPO=//"
grepコマンド?と引数、パイプ、sedコマンド?で成り立っている。
まずは
grep "TEMPO=" $1
で、引数の内容から「TEMPO=」を含む行を抽出している。
その結果を
sed -e "s/TEMPO=//"
に渡している。
結論から言えば「TEMPO=」を除去しているわけだが、これで抽出された文字列が命令文1の結果となり
TEMPO=命令文1の結果
となる。
MELODY=`grep -v "TEMPO=" $1`
TEMPO同様に考えれば
MELODY=`命令文2`
ということで、命令文2の結果をMELODYという変数に代入するという意味だ。
命令文2を見てみると
grep -v "TEMPO=" $1
とシンプルだ。
grepコマンド?の-vオプションとは「パターンに一致しない行を抽出」という意味だ。
つまり、ここでは先ほどまでの「TEMPOを含む行の抽出」の真逆の「引数から『TEMPO=』を含まない行を抽出」となっている。
これを「MELODYとしろ」という意味だ。
PLAYDATA="${TEMPO} ${MELODY}"
上記2行の結果をそれぞれ代入したものを「PLAYDATA」という変数に代入している。
else
「引数が通常ファイルではなかったり(たとえばディレクトリ、デバイスなど)引数そのものがなければ実行する」という部分。
MELODY=`echo $*| sed -e "s/$0//"`
今まで通りに
MELODY=`命令文3`
として考える。
命令文3をMELODYに代入しろ、というわけだ。TEMPOはこの場合(引数が妥当でない場合)には設定しないらしい。
命令文3とは
echo $*| sed -e "s/$0//"
となっている。
echo $*
$*とは「全ての引数を空白で区切り、まとめて1つの変数として値とする」という特殊パラメーター。
sed -e "s/$0//"
$0とは「実行されたシェルスクリプトの実行ファイル名」というパラメーター。実行ファイル名を除去した引数すべてがMELODY変数に代入されている。
PLAYDATA=${MELODY}
PLAYDATA変数に先ほどのMELODYを代入している。
fi
引数が通常ファイルかどうかの条件分岐終了。
miconapl -a bz_melody ${PLAYDATA}
miconaplコマンドにPLAYDATAを引数として渡している。
これでPLAYDATAが正しければブザーが鳴る。

タグ:

シェルスクリプト 玄箱PRO固有 一覧
+ タグ編集
  • タグ:
  • シェルスクリプト
  • 玄箱PRO固有
  • 一覧
タグの更新に失敗しました
エラーが発生しました。ページを更新してください。
ページを更新
「PlayBeep.sh」をウィキ内検索
LINE
シェア
Tweet
玄箱PROとかLinuxとか
記事メニュー

ブログ内検索



メニュー

  • トップページ
  • 掲示板


更新履歴

取得中です。

未作成ページ

  • routedコマンド
  • loginコマンド
  • gettyコマンド
  • xinetd
  • inetd
  • ランレベル
  • 共有ライブラリ
  • bash
  • syslog
  • fileコマンド
  • mkdirコマンド
  • cpコマンド
  • nvramコマンド
  • 環境変数について
  • wgetコマンド
  • norフラッシュ
  • カーネルとは
  • killallコマンド
  • デバイス
  • パーティション
  • unix
  • vfs
  • システムコール
  • fdiskコマンド
  • sethostname.sh
  • httpd.sh
  • telnet.sh
  • inetd.sh
  • smb.sh
  • clientutil_servd.sh
  • bootcomplete.sh
  • fancontroller.sh
  • boss.sh
  • telnet
  • cpu
  • arm
  • mkswapコマンド
  • samba
  • swat
  • httpd
  • dns
  • hosts
  • resolv.conf
  • nsswitch.conf
  • シンボリックリンク
  • grepコマンド
  • sedコマンド
  • tarコマンド
  • echoコマンド
  • procコマンド

-
記事メニュー2

タグ一覧

標準Linux 概略 Linux全般 シェルスクリプト 一覧 玄箱PRO固有 ディレクトリ エラー /etc RESETボタン コマンド ディストリビューション tftp 外部接続 起動メッセージ U-boot フラッシュメモリ 開発用Linux オプション 終了メッセージ /dev /var /usr miconapl /bin /sbin /proc スペック プログラム

「玄箱PRO」関連ブログ

#technorati
人気記事ランキング
  1. フラッシュメモリとは
もっと見る
最近更新されたページ
  • 4503日前

    玄箱PROとは
  • 6272日前

    BusyBox
  • 6398日前

    NANDフラッシュ
  • 6418日前

    玄箱PROのスペック
  • 6418日前

    (標準Linux)ルート直下のディレクトリツリー一覧
  • 6418日前

    玄箱PROのwiki
  • 6418日前

    (標準Linux)procディレクトリ
  • 6421日前

    (標準Linux)起動メッセージ
  • 6423日前

    (標準Linux)標準Linuxとは
  • 6423日前

    (標準Linux)sbinディレクトリ
もっと見る
「シェルスクリプト」関連ページ
  • kuro_lib
  • shutdown.sh
  • シェルスクリプトとは
  • networking.sh
  • KeventHandller.sh
人気記事ランキング
  1. フラッシュメモリとは
もっと見る
最近更新されたページ
  • 4503日前

    玄箱PROとは
  • 6272日前

    BusyBox
  • 6398日前

    NANDフラッシュ
  • 6418日前

    玄箱PROのスペック
  • 6418日前

    (標準Linux)ルート直下のディレクトリツリー一覧
  • 6418日前

    玄箱PROのwiki
  • 6418日前

    (標準Linux)procディレクトリ
  • 6421日前

    (標準Linux)起動メッセージ
  • 6423日前

    (標準Linux)標準Linuxとは
  • 6423日前

    (標準Linux)sbinディレクトリ
もっと見る
ウィキ募集バナー
急上昇Wikiランキング

急上昇中のWikiランキングです。今注目を集めている話題をチェックしてみよう!

  1. 馬主データベース@Wiki
  2. Dragon Marked For Death攻略Wiki
  3. 固めまとめWiki
  4. SDガンダム Gジェネレーションオーバーワールド 攻略Wiki
  5. GUNDAM WAR Wiki
  6. ファイアーエムブレム用語辞典
  7. 発車メロディーwiki
  8. ときめきメモリアル大辞典
  9. イナズマイレブンGO ギャラクシー ビッグバン/スーパーノヴァ 攻略wiki
  10. 番組スポンサー 詳しく! @ ウィキ
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. 発車メロディーwiki
  6. 検索してはいけない言葉 @ ウィキ
  7. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  8. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  9. オレカバトル アプリ版 @ ウィキ
  10. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
もっと見る
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. まどドラ攻略wiki
  2. MadTown GTA (Beta) まとめウィキ
  3. シュガードール情報まとめウィキ
  4. SurrounDead 攻略 (非公式wiki)
  5. Dark War Survival攻略
  6. R.E.P.O. 日本語解説Wiki
  7. シミュグラ2Wiki(Simulation Of Grand2)GTARP
  8. カツドンチャンネル @ Wiki
  9. AviUtl2のWiki
  10. 漢字でGO 問題集 @wiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 参加者一覧 - ストグラ まとめ @ウィキ
  2. 赤いガンダム - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  3. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  4. 山下 ひろし - ストグラ まとめ @ウィキ
  5. マジカルバケーション - ゲームカタログ@Wiki ~名作からクソゲーまで~
  6. スティルインラブ(ウマ娘 プリティーダービー) - アニヲタWiki(仮)
  7. 稼ぎ - 地球防衛軍6 @ ウィキ
  8. ミッション攻略 - 地球防衛軍6 @ ウィキ
  9. サーヴァント/一覧/クラス別 - Fate/Grand Order @wiki 【FGO】
  10. 無馬 かな - ストグラ まとめ @ウィキ
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.