タグ

シェルスクリプトに関するoooooo4150のブックマーク (8)

  • シェルスクリプトでSQL(mysql)を実行する - Qiita

    mysqlコマンドを実行 色々と解決してこの形に落ち着きました。 関数2つです。 1. DDL実行関数 2. 値一つだけSELECTして取得する関数 ソース #!/bin/bash # ################################################################################ # MySQL # ################################################################################ # test MYSQL_ID='root' MYSQL_PWD='root' MYSQL_HOST='localhost' MYSQL_SCHEMA='mysql' # staging # MYSQL_ID='scott' # MYSQL_PWD='tiger' #

    シェルスクリプトでSQL(mysql)を実行する - Qiita
  • Bash で変数内の文字列を置換するショートメモ - ようへいの日々精進XP

    ども、初老丸です。 tl;dl シェルスクリプトで変数内の文字列を置換したり、変数に代入したファイルパスからファイル名だけを取り出したいと考える際に真っ先に sed でゴニョゴニョを思いつくが、Bash だと Bash 内で完結出来ることを以下の記事でしったので実際に試してみた。 d.hatena.ne.jp www.gnu.org 有難うございました。 ショートメモ サンプルスクリプト $ cat test.sh # # - . を _ に置換する # echo "### . を _ に置換する" TEXT="www.hoge.com" echo ${TEXT} # www.hoge.com echo ${TEXT/./_} # www_hoge.com echo ${TEXT//./_} # www_hoge_com echo "" # # - ファイルパスから / を削除する # e

    Bash で変数内の文字列を置換するショートメモ - ようへいの日々精進XP
  • shとbashでの変数内の文字列置換など - ろば電子が詰まつてゐる

    シェルスクリプトで文字列を置換したい際、sedを使う手法が紹介されることが多い。が、実はsedなどの外部コマンドを使わなくても、以下のように変数展開をすることでシェル内部で文字列置換をすることができる。 ${変数名#パターン} → 前方一致でのマッチ部分削除(最短マッチ) ${変数名##パターン} → 前方一致でのマッチ部分削除(最長マッチ) ${変数名%パターン} → 後方一致でのマッチ部分削除(最短マッチ) ${変数名%%パターン} → 後方一致でのマッチ部分削除(最長マッチ) ${変数名/置換前文字列/置換後文字列} → 文字列置換(最初にマッチしたもののみ) ${変数名//置換前文字列/置換後文字列} → 文字列置換(マッチしたものすべて)この機能は記号で書かれるため非常にググりにくいことと、素のshでできること・bashでしかできないことが混在して書かれた記述も多いため、あまりネ

    shとbashでの変数内の文字列置換など - ろば電子が詰まつてゐる
  • bashコーディング規約 - Qiita

    モチベーション 一定の品質を保ちたい 書くたびに書き方が変わるのは好ましくない シェバング(shebang)は#!/bin/shではなく#!/bin/bashにする シバン、シェバンとも言われる #!/bin/shは実行環境によって様々なシェルにシンボリックリンクになっているので、bashなら#!/bin/bashと明示しよう インデントは半角スペース2つ 1行が横に長くなり折り返されないように 処理内容および使い方をスクリプト内に記載する(usage()) 何をしてくれるスクリプトか、どのように使うのかusage()関数を用意しよう ヘッダコメントでもいいけど function usage() { cat <<_EOT_ Usage: $0 [-a] [-b] [-f filename] arg1 ... Description: hogehogehoge Options: -a aaa

    bashコーディング規約 - Qiita
  • Bashの便利な構文だがよく忘れてしまうものの備忘録

    Bashでスクリプトを書く場合のポイントをまとめた Bashなどで書くシェルスクリプトは文法がシンプルで覚えると便利。他のプログラム言語だと何行もかかなければならないファイル操作や中身のデータ処理を、ちょちょいと数行レベルで書けとても強力だ。コマンドとの親和性が高い恩恵だろう1。 旧来バッチ処理で領を発揮するシェルスクリプトだったが、昨今はDockerDockerfileや起動スクリプトなど)で活用される機会も多いだろう。 しかしながら他のプログラム言語ではみられない記法があったり、逆に似た書き方もあったりと、混乱しがちなのもシェルスクリプトの特徴かもしれない。 いちいちGoogle先生に確認するのもめんどうなので、このページに整理した2。 主な参照先(よくお世話になっているページ): UNIXの部屋(68user's page) - http://x68000.q-e-d.net/~

    Bashの便利な構文だがよく忘れてしまうものの備忘録
  • Web系の自分が想像と障害で学んだバッチ処理・設計の基本 - コンポツさん

    バッチ処理というのはそれ単体で勉強しようとするとなかなか何を勉強したらいいのかわからないことが多い。 特に経験がWeb系ばっかりだと、いざバッチ処理を実装しようとした時に基的なノウハウを知らないままに書いてしまうことが多い。 バッチ処理というのは実態を整理すると「何らかのトリガーを期に起動し、データをロード・加工・変換・集計してから、出力する」という事になる。 まぁ、INがあって処理してOUTがあるという点では関数だと考えてもいいだろう。 システムの利用者(人に限らない)のアクションとは直接関係ない処理であったり、利用者のアクションをトリガーとしていても、即時にレスポンスがいらないor返せない場合に バッチ処理を選択する事が多い。 実現方式はシェルスクリプト、LL言語、実行可能バイナリだったりするし、デーモンとして立ち上げる場合もある。 利用者の操作に対して対話的・同期的な処理はオンライ

    Web系の自分が想像と障害で学んだバッチ処理・設計の基本 - コンポツさん
  • 何もしない組み込みコマンド ":" (コロン)の使い道

    Bash でシェルスクリプトを勉強していくと出会うのが : (コロン)という名前の組み込みコマンド。このコマンドは何もしないコマンドです。 こんなコマンドの存在は不思議だなと思う反面、C言語にも void という型があったり(関数のような形で存在するのは JavaScript とかですね)、LaTeX にも \relax があったり、何もしない命令というものは機械語の NOP からある普通のものです。 この Bash の : の使い道についてまとめてみました。 何か書かなければならないところに仮置きする 例えば「ここに制御構造を置くんだけど、この節に入るものは後で書くんだけどな〜」といった場合、制御構造の節の中に何も書かないと Bash は構文エラーとなります。 #!/bin/bash arg="$1" if [ -z "$arg" ] ; then echo "デフォルトモード開始" e

    何もしない組み込みコマンド ":" (コロン)の使い道
  • シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting

    B! 26 0 0 0 trashコマンドを拡張 している時に、選択画面で上下するときにVimみたくCtrl-F で1画面進む、みたいなことしたいな、と思って Controlキーを含んだ入力をreadで読み取って扱う方法を取り入れたのでそのメモ。 入力キー1つを受け取る Controlと同時押しのキーを受け取る Tips 8進数または16進数で書くときの注意 Ctrl-Cを使いたい場合 水平タブ(Ctrl-I)等を使いたい場合 使えない文字 ESCを判断する まとめ 入力キー1つを受け取る 入力キーを1つ受け取るにはBashでは read -s -n 1 c Zshでは read -s -k 1 c とします。 スクリプトがこの時点まで進んだ時に入力待ちになって、 何か1つでもキーを押すと、そのキーがcに入ります。 必要なら直前に echo -n "input: " とでも出しておけばわか

    シェルスクリプトのreadでControl-a等を読み取る: ANSI C quoting
  • 1