フィルタとは

Similar documents
_unix_text_command.pptx

ポインタ変数

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

ポインタ変数

多くのコマンドやソフトウェアは 1 なんらかの情報を受け取り 2 処理し 3 結果を出力する ( 前ページの図 ) cat の処理結果は端末ウィンドウに表示されるが これは cat が結果を標準出力に 吐き出した ( 出力した ) からである 通常 標準出力に吐き出された情報は端末ウィンドウ に表示

ソフトウェア基礎 Ⅰ Report#2 提出日 : 2009 年 8 月 11 日 所属 : 工学部情報工学科 学籍番号 : K 氏名 : 當銘孔太

プレポスト【解説】

今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順 ) になるよう 並び替えること

PowerPoint プレゼンテーション

160420c_unix.pptx

PowerPoint Presentation

ネットワークシステム管理 #01

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

JavaScriptで プログラミング

Microsoft Word - no103.docx

基礎プログラミング2015

PowerPoint プレゼンテーション - 物理学情報処理演習

スライド 1

このうち ツールバーが表示されていないときは メニューバーから [ 表示 (V)] [ ツールバー (T)] の [ 標準のボタン (S)] [ アドレスバー (A)] と [ ツールバーを固定する (B)] をクリックしてチェックを付けておくとよい また ツールバーはユーザ ( 利用者 ) が変更

基礎プログラミング2015

ポインタ変数

Microsoft PowerPoint - スハ?コン利用入門_ _UNIX利用の基礎知識.pptx

ポインタ変数

(Microsoft Word - 01PowerPoint\217\343\213\211C\203p\203^\201[\203\223\222m\216\257\225\\\216\206.doc)

3,, となって欲しいのだが 実際の出力結果を確認すると両方の配列とも 10, 2, 3,, となってしまっている この結果は代入後の配列 a と b は同じものになっていることを示している つまり 代入演算子 = によるの代入は全要素のコピーではなく 先をコピーする ため 代入後の a と b は

プログラミング実習I

PowerPoint Presentation

slide5.pptx

初めてのプログラミング

Word2013基礎 基本操作

問題 1 次の文章は 作業環境について述べたものである を解答群 { } より選び その記号で答えよ にあてはまる適切なもの 設問 1. < 図 1>はルーラーの一部である 1に示されるインデントマーカーを移動することにより を設定することができる < 図 1> { ア. 1 行目のインデントイ.

Linux サーバー構築 LINUX サーバー構築目次... 1 第 1 章 LINUX のインストール... 6 第 1 節 CentOS とは... 6 第 1 項 CentOS とは... 6 第 2 節 CentOS インストールの準備... 6 第 1 項 iso ファイルの入手... 6

練習 4 ディレクトリにあるファイルを直接指定する (cat) cat コマンドを使う (% cat ファイル名 ) と ファイルの内容を表示できた ファイル名のところにパス名を使い ディレクトリ名 / ファイル名 のように指定すると ディレクトリ内にあるファイルを直接指定できる 1 % cat _

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

OS

グーグル検索マクロの使い方

ネットワークシステム管理 #01

<4D F736F F F696E74202D E3F FC96E55F F554E CC8AEE D8EAF2E B8CDD8AB B83685D>

OS

スライド 1

操作マニュアルアテンダント

Taro-cshプログラミングの応用.jt

情報処理Ⅰ

情報処理概論(第二日目)

untitled

文字列 2 前回の授業ではコンピュータ内部での文字の取り扱い 文字型の変数 文字型変数への代入方法などを学習した 今回は 前回に引き続き 文字処理を学習する 内容は 標準入出力 ( キーボード ディスプレイ ) での文字処理 文字のファイル処理 文字を取り扱うライブラリ関数である 標準入出力 Lin

作図コマンド : pscoast -R125/148/30/46 -JM15c -B5g5 -Di -W5 -S235 -X6c -Y4c > test.ps 作図例 : 2 分布図の作成 2.1 点を描く 地点の分布を作図するときは たとえば以下のように行います > pscoast -R125/1

ガイダンス

1/2

Excel2013 マクロ

memo

memo

6 関数 6-1 関数とは少し長いプログラムを作るようになると 同じ処理を何度も行う場面が出てくる そのたびに処 理を書いていたのでは明らかに無駄であるし プログラム全体の見通しも悪くなる そこで登場す るのが 関数 である 関数を使うことを 関数を呼び出す ともいう どのように使うのか 実際に見て

3.Cygwin で日本語を使いたい Cygwin で以下のコマンドを実行すると それ以降 メッセージが日本語になります export LANG=ja_JP.UTF-8 これは 文字コードを日本語の UTF-8 に設定することを意味しています UTF-8 は Cygwin で標準の文字コードで, 多

全体ロードマップ インターネット電話 音の符号化 ( 信号処理 ) 今日 音の録音 再生 ネットワーク ( ソケット ) プログラミング ファイル入出力 インターネットの基礎 C プログラミング基礎

計算機プログラミング

中綴じ3・4級.ren

Microsoft Word - Word1.doc

1 ログインとログアウト 1.1 ログイン ログイン画面で [ password ] 欄にパスワードを入力します (図 1) 図 1 ログイン画面 正しくログインができると Ubuntu のデスクトップ画面 図2 が表示されます 図2 Ubuntu デスクトップ画面 2

Microsoft PowerPoint - InfPro_I6.pptx

170420_unix.pptx

PowerPoint Presentation

gengo1-6

以下のソフトウェアに専用ライセンスを設定することで 変換機能が使えるようになります アプリケーション名バージョン日付 JPGIS-XML ビュー F 7.1.0α 以降 2013/06/27 以降 フリーウェア JPGIS-XML ビュー F のバージョン から XML の 筆 と 図郭

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

Format text with styles

第 3 回情報基礎演習 UNIX / Linux: ファイルシステム シェルを理解しよう! 谷口貴志 Panda に login し 情報基礎演習クラスの VDI から Ubuntu に接続し Linux に login した後, 左 上の Activity 端末のアイオン をクリック 端末 を立ち

X2 使いこなしガイド

Microsoft Word - no15.docx

PowerPoint Presentation

Microsoft Word - no11.docx

C#の基本

プログラミングA

PowerPoint プレゼンテーション

Microsoft Word - ExcelTable.docx

コンピュータグラフィックス基礎              No

Microsoft PowerPoint - prog03.ppt

Microsoft Word - 09isA11_mod.doc

PowerPoint プレゼンテーション

Microsoft Word - 18環設演付録0508.doc

情報処理概論(第二日目)

Microsoft Word - no202.docx

Microsoft PowerPoint - 10Com2.ppt

8. Windows の補足情報 コマンドの使用についての説明です Windows からのファイル直接印刷 Windows でコマンドを使用したファイル直接印刷の方法についての説明です この機能はネットワーク接続をしているときに使用できます この方法で印刷できるファイルは 本機が搭載しているエミュレ


文字入3-2 力3 文字入力について ひらがな 漢字 カタカナ 英数字 記号 絵文字などが入力できます ダイヤルボタンの文字割り当てについて (ZP.17-12) ❶ ❷ ❸ ❶ 入力モード切替操作漢 : 漢字 ひらがな入力モード 1 カナ : カタカナ入力モード英 : 英字入力モード数 : 数字入

V-CUBE One

Microsoft PowerPoint - 第3回目.ppt [互換モード]

プログラミングA

まず,13 行目の HardwareTimer Timer(1); は,HardwareTimer というクラスを利用するという宣言である. この宣言によって Timer というインスタンスが生成される.Timer(1) の 1 は,OpenCM に 4 個用意されているタイマのうち,1 番のタイマ

文字列検索ユーティリティ使用の手引き

スライド 1

プログラミング実習I

Microsoft PowerPoint - T4OOマニュアル_admin管理者_ pptx

Microsoft Word - データベース.doc

情報処理演習 B8クラス

TC5.ids

Microsoft PowerPoint - 09re.ppt [互換モード]

PowerPoint Presentation

Microsoft PowerPoint - 5Chap15.ppt

Transcription:

フィルタコマンドの使い方 フィルタとは? 一般的にはフィルタとは, 与えられたものの特定成分を取り除いたり, 弱めたりする機能を持つものをいう ( コーヒーのフィルタ, レンズのフィルタ, 電気回路のフィルタ, ディジタルフィルタなど ). Unix では, 入力されたデータを加工して出力するプログラム ( コマンド ) をフィルタと呼ぶ. ここでは,Unix の代表的なフィルタコマンドとして次のものを取り上げる. コマンド grep sort head 機能ファイルの中から指定された文字列を探すファイルから読んだ行を並べ換えるファイルの先頭から指定された数の行を出力する tail ファイルの末尾から指定された数の行を出力する ファイルの準備 フィルタを使う前に, まず cat コマンドを使ってファイルを作っておこう. ファイル名は testdata とする.( 注 : 以下において はエンターキーを押すことを表すが, は表示されない.) cat > testdata このように入力したら, 続いてデータを入力する. 入力を間違えると実行結果が違ってくるので, 間違えないようにしよう ( もし間違えたら, 最初から入力し直すこと ). ちなみに, 入力した文字列は代表的なプログラミング言語の名前である. データが入力できたら Ctrl+D( コントロールキーを押しながら D を押す ) で,cat コマンドから抜け出るようにすること. $ cat > testdata Pascal C ALGOL APL COBOL [ エンターキーの後で Ctrl+D] この操作により testdata というファイルが作成される.cat は, 引数 ( ひきすう ) としてファイルを指定しないと, 標準入力であるキーボードから入力した文字列を出力するが, その出力先がリダイレクションにより testdata というファイルになるのである. 次のようにして, 正しく入力されているか確認してみよう. cat testdata

grep コマンド ファイルが準備できたら, 実際に grep コマンドを使ってみよう.grep コマンドは, 指定された文字列の検索を行うフィルタであり, 次のような書式で使用する. grep 文字列ファイル名 Unix のコマンドでは, 文字列は ' ( シングルクォーテーション ) で囲むのが一般的だが, 文字列の間に空白や特殊記号を含まない場合などには省略することができる. 以下では省略することにする. では, 実際に次のように入力してみよう. grep FORT testdata このようにコマンドを入力すると,testdata の中から FORT という文字列を含む行を検索して画面に表示する. $ grep FORT testdata なお, -i オプションを指定しない限り, 文字列の小文字と大文字は区別される. 次の 2 つの場合, どのような出力となるか予想してから, 実際に試してみよう ( -i オプションも試してみよう ). sort コマンド grep a testdata grep A testdata よく利用されるフィルタとして並べ換え ( ソート ) を行う sort コマンドがある. 次のような書式で使用する. sort ファイル名 この sort コマンドを使ってみよう. 次のように入力すると, ファイルから読んだ行を, 辞書の項目と同じ順に並べ換えたものを出力する. sort testdata $ sort testdata ALGOL APL C COBOL Pascal

注意 sort は行を辞書式順序 ( 辞書の項目と同じ順序 ) に並べ換える. 各文字の順番は Unix の内部表現 ( 整数値 ) によって決まる. 上の例で,APL が より先なのは, 大文字 (A-Z) の方が小文字 (a-z) よりも小さい内部表現を持っているからである. 今度は -r オプションを指定して使ってみよう. 次のようにすると,sort コマンドは逆順に並べ換えて出力する. head コマンド sort -r testdata $ sort -r testdata Pascal COBOL C APL ALGOL head コマンドは, ファイルの最初の部分を表示する. head -n 数字ファイル名 とすると, 指定された数の行だけファイルの先頭の行が表示される. head -n 2 testdata $ head -n 2 testdata もし -n 数字 を省略して, head ファイル名 とすると, 適当な数の行だけ出力される ( 行数はシステムの設定による ). また, ファイル名を複数個書くと, それぞれのファイルの先頭の行が指定された行数だけ表示される. tail コマンド tail コマンドは, ファイルの最後の部分を表示する. tail -n 数字ファイル名 とすると, 指定された数の行だけファイルの末尾の行が表示される.

tail -n 2 testdata $ tail -n 2 testdata tail は, 最後の行を表示すること以外は,head とほとんど同じである. - n 数字 を省略した場合も同様である. 標準入力から読む フィルタは, 引数として指定されたファイルからデータを読み込む替わりに, 標準入力からデータを読むことができるように作られている. これまでに説明したフィルタも例外ではない. つまり, ファイルと同じ内容を標準入力 ( キーボード ) から入力しても構わない. ただし,grep は, 指定された文字列がある行を探し出したら, すぐにその行を出力する. 次のように入力して確認してみよう. $ grep FORT この行は grep が出力した [ エンターキーの後で Ctrl+D] また, 標準入力が使用できるということは, リダイレクト記号 < を使って, ファイルの内容を grep に入力することもできるということである. つまり, ファイルを引数とする方法 grep FORT testdata の替わりに, ファイルの内容をリダイレクトで読み込む方法 grep FORT < testdata としても同じ結果になる. $ grep FORT < testdata $ 他のフィルタコマンドも同様で コマンドファイル名 という書式のものは コマンド < ファイル名 としても同じ結果が得られる.sort,head,tail でも試してみよう.

実は, フィルタに限らず,Unix においてファイルを引数とするコマンドは, 標準入力からデータを読めるように作られている. たとえば,cat testdata でも cat < testdata でも出力結果は同じである. フィルタをパイプでつなげる フィルタコマンドは標準入力から読み込むことができ, また, 標準出力に書き出すことができるということは, フィルタはパイプでつなげて使うことができるということを意味する. たとえば, sort testdata head -n 5 というコマンドは,sort testdata の標準出力が head -5 への標準入力となり, その結果が標準出力 ( 画面 ) に出力 ( 表示 ) される. どのような結果になるかは, 実際に試してみよう. もちろん, コマンドの順序が異なれば, 一般的には結果も異なる. head -n 5 testdata sort とすれば, どのような出力となるか予想してから, 実際に試してみよう. また, 当然のことながら, 複数のパイプを使うこともできる. grep -i a testdata sort tail -n 3 とすれば, どのような出力となるか予想してから, 実際に試してみよう. その他のフィルタコマンド Unix には, ここで紹介したフィルタ以外にも,tee, cut, uniq, wc などのような比較的シンプルなコマンドや sed や awk のような高機能なプログラムもある. それらについても,man ページやインターネットで使い方を調べてみよう. 注記 head と tail では - 数字 というオプションも可能である. たとえば, head -2 testdata tail -2 testdata としても, 先と同じ結果が得られる. このオプションは現在では推奨されていないとのことであるが, こうした使用例も見かけることがあるので覚えておくとよいだろう.