タグ

bashに関するm4iのブックマーク (14)

  • bashのそれって実はこういう書き方できるよ一覧 - Qiita


    bash ->man  `command` -> Command Substitution () Command Substitution
    bashのそれって実はこういう書き方できるよ一覧 - Qiita
    m4i
    m4i 2017/03/15
  • 初心者向け、「上手い」シェルスクリプトの書き方メモ - Qiita

    ここ最近、沢山シェルスクリプトを書くようになりました。 元々あまりシェルスクリプトを書いたこと無かったので、色々と勉強しつつ書いてるのですが、 他のプログラミング言語とはちょっと違って独特なクセというか、発見の度におぉー!ってなることが沢山あって楽しいです。 そんなわけで、最近学んだり参考にした中で特に感動したシェルの上手い書き方をまとめてみます。 きっとまだ知らないこととかもっと上手くやる方法なんかが沢山見つかりそうなので、 もっといいやり方あるよ!って方はコメントください 何もしない : (コロン)コマンド シェルを書いていた時に非常に欲しかったコマンドがこれ!何もしない! : というコマンド(?)を利用すると、何もせずに終了ステータス0(つまり正常終了)を返します。 これが様々な事に使える万能コマンドで、これによって面倒なエラー処理を簡潔にできたり、 入力や出力のリダイレクト元/先と

    初心者向け、「上手い」シェルスクリプトの書き方メモ - Qiita
    m4i
    m4i 2015/02/11
  • Bashの配列でjoinやsplitする - Qiita

    ※ここに書いた僕のコードはBashの基ルールを確認しながら構築した手法って感じですが、コメントでは別の良いやり方が紹介されてるのでそちらも要チェックです! ※この記事の手法は、区切り文字が1文字のみが対象です。2文字以上の区切り文字でjoin/splitをしたい場合はこの記事の手法は使えないので他の方法を頑張ってください。

    Bashの配列でjoinやsplitする - Qiita
    m4i
    m4i 2013/11/04
  • 私が他人のシェルスクリプトから学んだこと | Yakst

    私はシェルスクリプトの大ファンで、他人のスクリプトから面白い方法を学ぶのが大好きだ。最近、SSHサーバの2要素認証を簡単にするためのauthy-sshスクリプトに出会った。このスクリプト群を見まわしていて、みんなと共有したいたくさんのクールなことを見つけた。 出力に色付けする 出力文字列を、成功した時は緑に、失敗した時は赤に、警告は黄色に色づけしたいと思うことはたくさんあるだろう。 NORMAL=$(tput sgr0) GREEN=$(tput setaf 2; tput bold) YELLOW=$(tput setaf 3) RED=$(tput setaf 1) function red() { echo -e "$RED$*$NORMAL" } function green() { echo -e "$GREEN$*$NORMAL" } function yellow() { e

    私が他人のシェルスクリプトから学んだこと | Yakst
    m4i
    m4i 2013/08/22
  • bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する - 双六工場日誌

    @hirose31 さんが「シェルスクリプトでハマった件→【募】ステキな回避方法」でお題を出されていて、それに回答してみました。 その内容はリンク先を見てもらうとして、回答の中で使ったbashのプロセス置換について書かれた記事をあまり見ないので、回答で使ったプロセス置換のことをエントリにしてみたいと思います。 最初に注意点ですが、プロセス置換の機能は、bashやzsh*1の機能でPOSIX互換の機能ではありません。そのため、使用時には、対応していないシェルでは使えませんし、bashで使う場合も /bin/sh ではなく /bin/bash を明示的に指定する必要があります。たとえば、プロセス置換を使ったスクリプト「script.sh」に対して"$ bash script.sh" というコマンドは成功しますが、"$ sh script.sh" というコマンドは失敗します。この辺りの違いは「/

    bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する - 双六工場日誌
    m4i
    m4i 2013/08/17
  • .bashrc や .zshrc の変更を、開いている全ターミナルへ一発で適用する方法 - わからん


    .bashrc source-bashrc-all  source ~/.bashrc reddit  # http://www.reddit.com/r/commandline/comments/12g76v/how_to_automatically_source_zshrc_in_all_open/ trap "source ~/.bashrc" USR1 alias source-bashrc-all="pkill -usr1 bash"
    m4i
    m4i 2012/11/07
  • Advanced Bash-Scripting Guide

    This tutorial assumes no previous knowledge of scripting or programming, yet progresses rapidly toward an intermediate/advanced level of instruction . . . all the while sneaking in little nuggets of UNIX® wisdom and lore. It serves as a textbook, a manual for self-study, and as a reference and source of knowledge on shell scripting techniques. The exercises and heavily-commented examples invite ac

    m4i
    m4i 2012/08/21
  • Stray Penguin - Linux Memo (BASH)


    exp 1 ?([a-f])  `|' 使 ?(bash@(ref))  Bash(2) ([[ =~ ]])  `[[' 使 `=~' 使 BASH_REMATCH  VAR=$(LANG=C date +'%c') # VAR='Wed Dec 22 22:51:41 2010' DAYOFWEEK=Wed PATTERN='^'$DAYOFWEEK' ([[:alpha:]]{3}) [[:digit:]]{2} ([0-9:]+)' [[ $VA
    m4i
    m4i 2012/08/19
  • bash 超プログラム術

    bash の解説なんて、ネット上には結構あったりするのだが、これをわざわざ公開しようというのは、次の理由による。 某ソフトハウスでのUNIX講座用に書いてしまったから。 ネット上にある bash 解説だと、表面的な構文解説程度であり、きっちりスクリプト言語として使い倒すレベルの解説はあまりない。まあ、プログラミング言語として凝ったサンプルもやってみようじゃないの、というノリで割とディープに解説する。 アクセスを増やすための人気取り(苦笑)。 まあ、そんな不純な目的による bash 解説である。とはいえ、日常的に使い慣れている bash であっても、「え、こんな使い方があったの!?」という発見もあることであろう。苦笑しながらでも読んでくれたまえ。だから、初歩的なリダイレクションなんかは解説しないからそのつもりで。 ちなみに参考書としたのはオライリー・ジャパン刊「入門 bash 第2版」である

    m4i
    m4i 2012/01/26
  • Bash変態文法最速マスター

    注意このドキュメントは、すでにshまたはbashでそれなりにスクリプトを書いている人向けに書かれています。自分が対象読者でないと思ったら、すっぱりと読むのをあきらめてください。時間の無駄です。 このドキュメントではBash version 3.x 系(3.1以降) 4.x 系を対象にしています。2.x 系だと微妙に文法が違うところがあるので注意してください。ちなみに 4.x 系だと、変態なことをしなくても同じことができたり(連想配列が使えるようになったはず)、逆にもっと変態なことができたりします。(2013/09/11 追記) 書きかけで放置している間にメイン環境が 4.x になりました。3.x と 4.x でどこが違うかもう覚えてないし調べるのも面倒なので 4.x 系前提でいきます。 このドキュメントは、主にPOSIXなshにはないBashの機能を使い倒すことを目的としています。ここにあ

    m4i
    m4i 2012/01/26
  • bash-completionで独自の補完関数を作成する方法(gistyのサブコマンドを補完するやつ書いてみた) - 今日もスミマセン。

    歳のせいか最近記憶力が落ちてるので補完に頼ってみることにした。 以下を行なうにはbash-completionパッケージが必要です。 macportsだと sudo port install bash-completionでインストールされるはず。 バージョン1 とりあえず、サブコマンドを全部登録してみました版 _gisty() { COMPREPLY=(list post private_post sync sync_delete pull_all about help) } complete -F _gisty gisty上記を/opt/local/etc/bash_completion.d/の配下にgistyという名前で保存 以下のように設定ファイルを読み込み $ . /opt/local/etc/bash_completion"gisty "と打ってtabを押すと about li

    bash-completionで独自の補完関数を作成する方法(gistyのサブコマンドを補完するやつ書いてみた) - 今日もスミマセン。
    m4i
    m4i 2012/01/22
  • Bash基礎文法最速マスター - いろいろ解析日記


    BashBashBash 1. echo echo echo "Hello world"   #    #  declare str #  declare -i num #  declare -a array   bash script.sh 使 bash script.sh > file.txt  
    Bash基礎文法最速マスター - いろいろ解析日記
    m4i
    m4i 2010/01/31
  • ウノウラボ Unoh Labs: シェル(bash)スクリプトを書くときのTips

    尾藤正人(a.k.a BTO)です UNIXを使う時にはシェルスクリプトをよく使います。 ちょっとしたコマンドを実行するには、シェルスクリプトは非常に便利です。 今回はシェルスクリプトを書くときに覚えておいた方が便利なTipsを紹介します。 非互換性 ここで紹介するものは基的にbashで動作するものになります。 伝統的なBourne Shellでは動作しないことが多くあると思います。 しかしながら最近はbashがメインで使われることが多いので、"だいだいの環境で動くからおk"ぐらいのノリで使ってもらえればと思います。 $(...) コマンドを"$(", ")"で囲むと実行結果をコマンドラインに代入してくれます。 一見これは"`"(バッククオート)と同じに見えますが、"$()"にはネストができるという利点があります。 例えばシェルスクリプト自身の絶対パスを取得するのは次のようにで

    m4i
    m4i 2008/09/03
  • bashにて複数端末間でコマンド履歴(history)を共有する方法 (iandeth.)


    Tera Term screenfind... ... ... zsh'SHARE_HISTORY' (*1) bash 調 (*1) zshITmedia ""  ) bash 1.  便 2.
  • 1