タグ

パイプに関するakaneharaのブックマーク (5)

  • vimをパイプにする - 余白の書きなぐり

    この記事は Vim Advent Calendar 2016 (その2) の3日目の記事です。 ノーマルモード以外をパイプとして使う際の情報を追記しました (2016/12/04) UNIXのテキスト処理 UNIXでテキストを自動整形する際、パイプ機能は欠かせない。 $ cat a.txt 1 hoge 2 piyo 3 fuga $ cat a.txt |sed 's/piyo/foo/' |grep '2' 2 foo シェル上で | というパイプ記号を使ってコマンドを次々繋げることで、複雑なテキスト処理をこなすわけだ。 パイプは便利だが、テキストエディタをパイプとして使う人はあまり見かけない。 テキストエディタ=対話的 という常識があるため、パイプのような自動処理とは相性が悪いと思われているのだろう。 しかし今日はあえて、シェルスクリプトやワンライナーの中にvimを埋め込み、パイプと

    vimをパイプにする - 余白の書きなぐり
  • パイプ出力を現在のシェル上のwhileに喰わせる上手いやり方 - Qiita

    これはコマンドの標準出力を1行ずつ f という変数に読み込んで何らかの処理を行うってやつです。 whileの中でやることがファイル操作などの一般的なことならこれで全然問題ないんですが、実行中のシェル環境に対する処理(具体的には変数の設定など)を行おうとすると期待通りにいってくれなくなります。例えばこんな感じ↓ # findで見つけたファイル名をfilesという配列変数に詰め込みたい files=() find -type f | while read -r f; do files+=("$f") done echo "${files[@]}" # 確かにfilesに値を入れた筈なのに空が出力される?? これはパイプで繋げると後ろのwhileがサブシェルで実行されてしまうために起こる現象です。噛み砕いて説明すると… 現在findを実行中のbashとは別に、パイプの後ろでもう一つのbashが起

    パイプ出力を現在のシェル上のwhileに喰わせる上手いやり方 - Qiita
  • システムコールの特性を知る pipe(2)編


    mmap(2)pipe(2)  UNIXOS| 使pipe(2)pipe(2)write(2)read(2) mmap(2)使read(2)/write(2)使OS
    システムコールの特性を知る pipe(2)編
  • perlopentut - Perl でいろんなものを開くためのチュートリアル - perldoc.jp


    Perl has two simple, built-in ways to open files: the shell way for convenience, and the C way for precision. The shell way also has 2- and 3-argument forms, which have different semantics for handling the filename. The choice is yours. Perl 2: 便C 23    Perl's open functio
  • パイプでつなぐ - PukiWiki

    はじめに † Amazonの協調フィルタリングで話題になった「集合知(collective intelligence)」ですが、 そこにはこれが正解というものはなく、仮説と検証のサイクルを何度も繰り返しながら新たな方式が 日々研究開発されています。 仮説と検証のサイクルでは、生のデータから分析可能なデータに加工する作業が幾度となく繰り返され その処理内容は様々です。このため、データ加工では短期間に適切なデータを作成するというハードな 業務です。 そんな時に役にたつのが、これからご紹介します UNIXのコマンドをパイプでつないで、データを加工する方法(パイプライン処理) シェルスクリプトを使って、パイプライン処理によりきめ細かな処理を追加する方法 です。 シェルには、sh, ksh, bash, csh, tcsh等いろいろな種類がありますが、ここではshを使って説明します。 *1 ↑ パイ

  • 1