タグ

bashに関するs-shinのブックマーク (7)

  • Bash Prompt HOWTO: ANSI エスケープシーケンス: 色とカーソル操作

    次のページ 前のページ 目次へ 5. ANSI エスケープシーケンス: 色とカーソル操作 5.1 色 すでに述べたように表示されないエスケープシーケンスは、\[\033[ と \] で囲んでやる必要があります。色のエスケープシーケンスの場合は 後ろに m\] をつけてやる必要があります。 もしこれから説明するプロンプトを試してみて、指定した色がうまく表示され ないなら、 /.Xdefaults ファイル(あるいはそれと同等のファイル)に "XTerm*Foreground: BlanchedAlmond" のような行がないか調べてください。 この前に!マークをつけることによって、コメントアウトすることができます。 これは、あなたがどのような端末エミュレータを使っているかにも依存します。 あなたの端末の色が上書きされる可能性のもっとも高いのがこのファイルです。 プロンプトにブルーのテキストを

  • Bashでコマンドの存在チェックはwhichよりhashの方が良いかも→いやtypeが最強→command -vも - Qiita

    コマンドのパスを知りたいんじゃなく、コマンドの存在をチェックしたいだけならwhichよりhashを使ったほうが良いかもっていう話。→追記: typeが最強っぽい。 追記: command -vも良い。プログラムの存在チェックorパスを探したいだけなら互換性を考えると一番良いかも。 比較してみる whichよりhashよりtype=command -vが高速→typeまたはcommand -vの勝ち whichは実ファイルという実体があるプログラムです。hashとtypeはbashの組み込みコマンドです。なので当然ですがプログラムの起動コストがない分hashやtypeの方が速いです。 $ time bash -c 'for((i=0;i<10000;i++));do which perl; done >/dev/null' real 0m7.739s user 0m2.928s sys 0m

    Bashでコマンドの存在チェックはwhichよりhashの方が良いかも→いやtypeが最強→command -vも - Qiita
  • Maruta

    It seems we can’t find what you’re looking for. Perhaps searching can help. Search…

    s-shin
    s-shin 2014/11/26
  • シェルスクリプトでの正規表現マッチ - Qiita

    シェルスクリプトで正規表現でのマッチングを使いたい場合,少しぐぐってみると case 文を使えという内容のものがよくヒットするようですが,expr コマンドでも正規表現が使えます. #!/bin/sh if expr "aaabbc" : "b+c$" > /dev/null; then echo "hoge" fi # => hoge 正規表現を用いた場合,expr はマッチした位置や()でグループ化した結果を出力するので,要らない場合は /dev/null に捨てます. ちなみに, zsh では [[ ]] を用いて自然に正規表現が書けます.

    シェルスクリプトでの正規表現マッチ - Qiita
  • ヒアドキュメントを使いこなそう

    MySQLとヒアドキュメントをうまく使いこなされば、さくっとSQLをファイルを作ることができます。はじめは戸惑いますが慣れれば簡単です。数百回はやったかも(^^;) ヒアドキュメントを使って、SQLファイルを作成する例 今回の例で、EOT の名前にしましたが、別に、QIITAでも良いし、とにかくEOT ~ EOTの間が文中でかぶらないものであれば問題ないです。 SQL ファイルを生成し、それを、MySQLで実行する MySQLでコマンドからSQLを直接実行するときは、 -e というオプションをつければいいのですが、長いSQLの場合一行にだらって書くのってめんどくさいですよね。だからSQLファイルをヒアドキュメントで事前に作ってMySQLでそのSQLファイルを読み込ませるって方法がスマート! SQLファイルを生成して、MySQLで実行 cat << EOT > /tmp/sample.sql

    ヒアドキュメントを使いこなそう
    s-shin
    s-shin 2014/10/20
    ヒアドキュメントをリダイレクトするにはcatなのか。echoにしてハマった…
  • bash/zshでsourceされたスクリプト内で、ファイル自身の絶対パスをとるシンプルな記法 - Qiita

    追記: コメント欄にて、若干変なパスが含まれている場合の対処方法について、補足いただきました。 ご指摘ありがとございますm(_ _)m bash / zshなどでシェルスクリプトを書いていると、環境変数の設定を外部ファイルにまとめてsource して使う、というのはよくある。 そのような場合にsourceされたファイル内での絶対パスがイマイチうまく取れない、という問題に突き当たる事がある。 bashの話: うまくいかない方法と理由 通常、シェルスクリプト内で自分自身の絶対パスをとるときによくやるのが下記の手法だとおもう。 が、単体で呼び出した場合にはちゃんと動くのだが、bashからsourceで呼び出した場合にはうまく動かない。 なぜかというと、sourceされたファイルの実行が、呼び出し元のシェルプロセス内になるから。 bashでは$0は実行コンテキストに依らず、実行ファイル名が入ってい

    bash/zshでsourceされたスクリプト内で、ファイル自身の絶対パスをとるシンプルな記法 - Qiita
    s-shin
    s-shin 2014/07/09
  • bash によるオプション解析 - Qiita

    すこし記事が長いため、簡単なアウトラインを書いておきます。要点だけ掴みたい場合は、最終項の「まとめ」を読むのがいいかもしれません。 コマンドライン引数の一般的な解析手法 それぞれの特徴 〜 getopt と getopts の違い getopts(メリット・デメリット) getopt(メリット・デメリット) 自前で解析しちゃう(唯一のデメリット) まとめ ============================= コマンドライン引数を処理する一般的な手法として、 getopts getopt shift などで自力で解析 といった具合に、上から順に考えつくかと思います。getopt(3) は UNIX において、コマンドの引数を処理する一般的な C 言語のライブラリ関数です。それを用いて実装されたコマンドが getopt(1) です。Bourne シェル系だと内部関数になりますが、同系統の

    bash によるオプション解析 - Qiita
  • 1