タグ

bashに関するxiangzeのブックマーク (6)

  • bashスクリプティング研修の資料を公開します - エムスリーテックブログ

    こんにちは、エンジニアリングGの中村です。 以前にこのブログにてエムスリーでの社内研修について紹介しました。今回は、この中でのbashスクリプティング講座の資料を公開します。 www.m3tech.blog 弊社の中でもいろいろな用途でbashが使われていますが、bashは簡単に利用できるもののプログラミング言語としてはバグを生みやすい、辛い言語だと思います。 ここで紹介しているのはいわゆるコーディング規則というよりも、バグ防止と可読性向上のためのルールをTips集的にまとめたものです。 bashにおいてまだまだ注意するところはありそうですが、多少なりともわかりにくいスクリプトの削減になればと期待しています。 [追記: 2018-08-22] はてブにて以下のコメントをいただきました。 bashスクリプティング研修の資料を公開します - エムスリーテックブログ bashで50行以上になった

    bashスクリプティング研修の資料を公開します - エムスリーテックブログ
    xiangze
    xiangze 2018/08/23
  • 【簡単】バイナリファイルをコマンド一発で生成|echo コマンド

    ファームウェア開発をしていると、ちょっとしたバイナリファイルを作りたいときがありますよね。よくある方法は、バイナリエディタで作ったり、ちょっと頑張る人ならC言語でプログラム組んだりしますね。 ただ、ちょっとしたバイナリファイルを作成するだけなら、MSYS2@WindowsLinux、OS Xなら簡単にできますよー。 あの echo コマンドを使うだけです。オプション -en を使えばOKです! (DOS の echo ではできません、念のため) echo を使って簡単にバイナリファイルを作成する 例えば、全てのbitが1の 4Byte のファイルを作る場合は下記のようにすればOKです。 ちなみに xxd -g1 は1Byteづつ表示するコマンドです。ついでにおぼえておくと便利ですよ。 $ echo -en "\xff\xff\xff\xff" > hoge.bin $ xxd -g1 h

    【簡単】バイナリファイルをコマンド一発で生成|echo コマンド
    xiangze
    xiangze 2017/08/29
  • これだけ覚えておけばOK!シェルスクリプトで冪等性を担保するためのTips集 - Qiita

    「シェルスクリプトって冪等性ないじゃないですか」 そんなことをよく耳にします。しかし、if文を入れるだけで簡単に冪等性を担保したシェルスクリプトを書くことができます。 今回は、私が使う条件式を紹介します。基的な形式なものなので、組み合わせると幅が広がりますよっ! ファイル/フォルダ関係 ファイルの存在確認 -e 'ファイル名'で「ファイル名」が存在しているかチェックします。 if [ -e 'ファイル名' ]; then # ファイル/フォルダが存在していれば、ファイル/フォルダを削除するなど rm ファイル名 fi

    これだけ覚えておけばOK!シェルスクリプトで冪等性を担保するためのTips集 - Qiita
  • “`〜`”と“$(〜)”の挙動の違いまとめ - Qiita

    “`〜`”と“$(〜)”は、単純には置き換えられない! “`〜`”と“$(〜)”は、どちらも中の文字列をコマンドとして解釈し、その実行結果を返す文法であるが、必ずしも素直に置き換えることはできない。 その例をまとめることにした。 “$(〜)”は素直に入れ子にできるが、“`〜`”は酷く複雑になる 例えば、“$(〜)”の中に“$(〜)”を用いて、次のようなコマンドを書いても正しく動作するが、

    “`〜`”と“$(〜)”の挙動の違いまとめ - Qiita
    xiangze
    xiangze 2016/06/26
  • ずんWiki - bash

    表示と入力 † .inputrc に以下のように書いておけば日語の直接入力と表示が出来る。 set convert-meta off set meta-flag on set output-meta on ↑ LANGと違う文字コードで grep する † こんなのを .bashrc とかで定義しとけば便利。 grepSJIS () { WORD="$1"; shift; LANG=ja_JP.SJIS grep "`echo $WORD|lv -Os`" "$@"; } grepUTF8 () { WORD="$1"; shift; LANG=ja_JP.UTF-8 grep "`echo $WORD|lv -Ou8`" "$@"; } grepEUC () { WORD="$1"; shift; LANG=ja_JP.ujis grep "`echo $WORD|lv -Oej`"

    xiangze
    xiangze 2009/08/07
  • bash の履歴入力で前方一致検索を有効にする

    bash で履歴を利用するときに、遡って探すのが面倒くさいときがあります。このときに先頭数文字だけ入力してから Ctrl + P、Ctrl + N を押すと、それまでタイプした文字から始まる履歴だけを検索してくれる技です。 ホームディレクトリの .inputrc というファイルに "\C-n":history-search-forward "\C-p":history-search-backward のように書いて、再度ログインし直すと、この機能が有効になります。サイログインせずに反映させたい場合は bash のプロンプト上で Ctrl-X Ctrl-Rと入力します。 たとえば vi と打ってから Ctrl + P を押せば、過去に使ったコマンド履歴の中から、vi を使った履歴だけが出てくるので便利です。 カーソルキーの↑,↓ でも有効にしたい場合は、さらに "\e[A":history-

    xiangze
    xiangze 2009/08/06
  • 1