タグ

bashに関するyabu_kyuのブックマーク (9)

  • 原理原則で理解するbashの仕組み - Qiita

    はじめに 以前書いたエントリー、重大な脆弱性(CVE-2017-5932)で少し話題になったbash4.4の補完機能の便利な点で、bash4.4からでないとタブの補完機能のソート処理が制御できないという問題について、ソースコードレベルで調べた結果をまとめていたのですが、bashの実装そのものを深く掘り下げ過ぎてしまい、内容が膨大になったので、何回かに分けて書こうと思います。 今回はbashが起動されてからインタラクティブモードでキーボードの入力を待ち受けるまでのお話です。普段使っているbashがどのような処理を行っているのか一緒に覗いてみませんか? 検証ソースコード Bash version 4.1.0(1) release GNU bashの生誕 bashのプロセスが起動されるのはOSへのログイン時にユーザーのログインシェルがbashに設定されている場合、あるいはログイン後に明示的にba

    原理原則で理解するbashの仕組み - Qiita
  • bashスクリプトではじめての自作Ansibleモジュール - Qiita

    はじめに Ansibleのモジュールはいくつかの簡単なルールさえ知っていれば自分で作って追加することができる。 そのルールに従うように既存のシェルスクリプトに対して多少修正を加えてやれば、それをAnsibleのモジュールにすることもできる。 また、Ansibleのplaybookは文法が許す表現力という点でどうしても書きづらい処理が現れることがある。そのような箇所はモジュールとして外出しにしてやることで簡単に書けることがある。 公式ドキュメントには主にPythonでのモジュールの書き方が書かれているが、ルールに従っていればPythonでなくても良く、ここではbashスクリプトをAnsibleモジュールにする方法を説明する。 Ansibleモジュールのルール Ansibleモジュールとするには次のルールに従うだけで良い。 playbookがあるディレクトリに作ったlibraryという名前のデ

    bashスクリプトではじめての自作Ansibleモジュール - Qiita
  • 【bash】リダイレクトとパイプを理解する(1) - 私は素人サーバ管理者

    次回:【bash】リダイレクトとパイプを理解する(2) 普段なにげなくリダイレクトやパイプを使っていますが、勉強を兼ねてまとめてみます。 ※長くなりそうなので適当に複数回に分けます。 標準入出力 標準入出力とはコマンドに与えられた、データストリーム入出力に関するインターフェースのことです。 標準入出力には以下の3つがあります。 名前デフォルトファイルディスクリプタ(FD) 標準入力キーボード0 標準出力画面1 標準エラー出力画面2 標準入力はコマンドへの入力ストリームで、キーボードからの入力です。 標準出力はコマンドからの出力ストリームで、エラー関係以外のメッセージを端末画面に出力します。 標準エラー出力は標準出力と同様にコマンドからの出力ストリームですが、 エラー関係のメッセージを端末画面に出力する点が異なります。 ファイルディスクリプタ(FD) FDはコマンドが外部リソースと通信するた

    【bash】リダイレクトとパイプを理解する(1) - 私は素人サーバ管理者
  • コマンドの実行結果とかをvimで閲覧する - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    コマンドの実行結果とかをvimで閲覧する - Qiita
  • 超簡単!shoptでbashの”秘められた真のチカラ”を開放する 【サンプルあり】

    shoptとは? bashのオプションを設定するための、bash組み込みコマンド。 bashの秘められた力を開放することができる。 shopt でオプション一覧を表示・確認することができる。 shopt -s {オプション名} set。指定したオプションをONにできる。 shopt -u {オプション名} unset。指定したオプションをOFFにできる。 bashのオプションは数多くあるが、 デフォルトでONにされていて普段意識する必要がないものや、 普段使いでは気にしなくていいものもある。 今回は、bashの全オプションの中から、 これらをおさえておけば9割オッケーなイケメンオプションを紹介しようと思う。 autocd ディレクトリ名のみを入力したとき、 cdの引数に指定されたものとして扱う。 対話的シェルのみで有効。 autocd: OFF $ shopt -u autocd # ディ

    超簡単!shoptでbashの”秘められた真のチカラ”を開放する 【サンプルあり】
    yabu_kyu
    yabu_kyu 2014/09/03
    “超簡単!shoptでbashの”秘められた真のチカラ”を開放する 【サンプルあり】 | techiela”
  • ググってすぐに出てきそうな bash cheat sheet に載ってないけど使うと便利そうだと思ったもの - Qiita

    bash のデフォルトのショートカットキーを憶えようと,「bash チートシート」とかでググって出てきたもの(これ みたいな感じの内容のもの)を自然に使う習慣が付くように,しばらく使ってみていたのですが,物足りなさを感じてきたのもあって,少し調べてみた。 基的なカスタマイズしないでデフォルトで設定されているものだけを使う方針ですので、emacs mode での話です。 なので、Emacsen の中では当たり前のことなんですかね?? character-search <C-]> : 前方のマッチした文字まで移動 <M-C-]> : 後方のマッチした文字まで移動 vim のノーマルモードの f みたいな感じですね。 これが知りたくて調べ始めました。 forward/backward word <M-f> : 単語単位で前方に移動 <M-b> : 単語単位で後方に移動 undo <C-x><C

    ググってすぐに出てきそうな bash cheat sheet に載ってないけど使うと便利そうだと思ったもの - Qiita
  • シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog

    はじめに つい最近知った便利なデバッグ方法 (長年シェルスクリプトを書いているのに知らなかった。これが常識だったら恥ずかしい…) シェルスクリプトのデバッグでは echo で変数の中身を見るという原始的な方法をよく使うかと思います。 いわゆる プリントデバッグ というやつですね。 もう少し詳しいデバッグが必要な場合は、 set -x と set +x でデバッグしたい部分を囲むという方法もあります。 今回は プリントデバッグ で使う echo の代わりに typeset or declare を使うと良いというお話です。 プリントデバッグは typeset or declare を使おう typeset or declare は変数宣言などでよく使うコマンドですが、変数の中身を見るのにも使えます。 echo と比べて何が良いのかというと、変数の中身はもちろん変数名や変数の型も表示してくれ、

    シェルスクリプトのデバッグは typeset または declare を使うと良いかも - よんちゅBlog
  • 引数存在確認 - 間違いだらけの備忘録

    IP=192.168.2.6 if [ -n "$1" ]; then IP=$1; fihttp://www.linux.or.jp/JM/html/GNU_sh-utils/man1/test.1.html -n string string の長さが 0 より大きければ真。

    引数存在確認 - 間違いだらけの備忘録
  • Bashショートカット

    bash はいくつかあるシェルの内の1つで Bourne シェルを拡張したものです。 シェルとはカーネルと人間の通訳的存在であり、シェルのプロンプトでコマンドを実行するとコマンドはシェルにより 通訳されカーネルに渡されます。カーネルのメッセージもシェルにより通訳され人間に表示します。 また、シェルとカーネルは独立して存在しており、カーネルを包み込んでいるという意味で shell(貝殻)と名づけられました。 bash は csh や ksh の優れた機能を取り入れ、いくつもの便利な機能が追加されています。

  • 1