• 検索結果がありません。

情報の分析 1. Linux ツールの活用

N/A
N/A
Protected

Academic year: 2021

シェア "情報の分析 1. Linux ツールの活用"

Copied!
39
0
0

読み込み中.... (全文を見る)

全文

(1)

情報の分析

1. Linux

ツールの活用

Chris Plaintail

(2)

目次

1 Cygwin の紹介 Cygwin とは ダウンロードとインストール 2 コマンドとシェルの基本 コマンドの入力 3 リダイレクトとパイプライン 標準入出力 リダイレクトとヒアドキュメント パイプライン パイプライン 4 Cygwin のファイルシステム 階層構造とパス

(3)

Uinux

ツールの活用

Unix は 豊富なプログラミング環境や様々なツール を提供する OS である.この優れた環境を Micorsoft Windows上に実現するフリーソフトウェアが Cygwin で ある.Cygwin を使って,簡単なプログラミングを学習し よう. まずは,環境の準備,そして コマンドラインからの 入力の実習である.

(4)
(5)

Cygwin

とは

...is it?

a large collection of GNU and Open Source tools which provide functionality similar to a Linux distribution on Windows.

a DLL (cygwin1.dll) which provides substantail POSIX API functionality.

... isn’t it?

a way to run native Linux apps on Windows. You must rebuild your application from source if you want it to run on Windows.

a way to magically make native Windows apps aware of UNIX⃝functionalty like signals, ptys, etc. Again, you needR

to build your apps form source if you want to take advantage of Cygwin functionality.

(6)

ダウンロードとインストール

Cygwinのサイトから setup-86.exe (setup-86 64.exe) を実行 ダウンロード方法選択 インストール先(フォルダ)選択 パッケージファイルの保存先(フォルダ)選択 インターネットの接続方法選択 サーバの選択 ツールの選択

(7)

起動とショートカット

[スタート]-[すべてのプログラム (P)]-[プログラム] -[Cygwin]-[Cygwin Bash Shell]

配色・フォント設定

(設定保存のためショートカットを複製) 環境変数 HOME で設定されている場所に, 設定ファイル .bash_profile.

(8)
(9)

入力書式

□ コマンド ・ オプション ・ 引数 [...]$ コマンド オプション 引数 半角英数文字 コマンド・引数・オプションの間は半角スペース [...]$ pwd [...]$ date -u [...]$ date --help [...]$ date -d"2011-09-21 9:52:00" +%s [...]$ echo Hello [...]$ echo -n Hello

(10)

コマンド入力例

□スクリーンクリア  [....]$ clear   □ユーザー名表示  [....]$ whoami  

(11)

マニュアルページ

□マニュアルページ [....]$ man コマンド名 j または [return] 1 行進む k 1 行戻る f または [space] 1 ページ進む b 1 ページ戻る p 先頭に戻る q 終了

(12)

キー入力を助ける機能

ヒストリー機能 (CTRL-p) (CTRL-n) コマンドライン編集機能 (CTRL-b) (CTRL-f) Del (CTRL-d) コマンド名・ファイル名の補完機能 TAB TAB

(13)

☆ここで登場した主なコマンド

pwd カレントディレクトリの表示 date 日時の表示(および設定) echo テキストの表示 man マニュアルページの表示 clear スクリーンのクリア whoami ユーザー名表示

(14)
(15)

標準入出力

標準入力 −→ コマンド −→ 標準出力

(キーボード) (ディスプレー)

cat

(16)

リダイレクト

□出力リダイレクト(上書き) date > ファイル名 □出力リダイレクト(追記) date >> ファイル名 □入力リダイレクト cat < ファイル名 cat ファイル名

(17)

ヒアドキュメント

cat <<終了文字列

文字列EOF が入力されるまで

標準入力からのデータが

ファイルfilename.txt に書き込まれる. cat <<EOF > filename.txt

(18)

パイプライン

コマンドの標準出力を別のコマンドの標準入力へ引き渡す printenv | wc -l

printenv | less printenv | head -5

printenv | grep HOME

printenv | grep -v HOME

(19)

パイプライン

つぎの入力は互いに同じ結果をもたらす printenv | less printenv > filename.txt less < filename.txt パイプラインは何段でも接続して利用することができる. 処理 A | 処理 B | 処理 C ...

(20)

パイプライン

【問 1】 次のコマンド入力を考えよ.

1 printenvの出力の 10 - 15 行目だけを抽出して表示する.

2 printenvの出力の行数をカウントして出力する.

3 printenvの出力から HOME と daito を含む行を抽出して表

示する.また,その行数を出力する.

4 printenvの出力から HOME を含むが daito を含まない行の

みを抽出して表示する.また,その行数を出力する.

5 printenvの出力から HOME を含まず daito を含む行のみを

(21)

☆ここで登場した主なコマンド

cat ファイル内容の出力 head 先頭の出力 tail 末尾の出力 less 逐次表示 wc 文字数・行数の表示 grep 文字列検索 printenv 環境変数の表示

(22)
(23)

階層構造

ルート (/):cygwin のインストール場所 C:\cygwin (C:\daito\apps\cygwin) ホーム (~): C:\cygwin\home\ユーザ名 (Z:\) ドライブ:/cygdrive C:→ /cygdrive/c Z:→ /cygdrive/z

(24)

主要なフォルダ

(cygwin)

C: cygwin (/) etc home ユーザ名 cygdrive c z

(25)

パス

カレントの確認と移動 pwd cd 移動先 cd 相対指定(カレントが基準) 名前 .. 絶対指定(ルートが基準) /

(26)

ディレクトリ閲覧(ファイル名のリスト)

lsコマンド ls [オプション] [パス] ls -l ls -a ls -d ls /

(27)

ディレクトリ閲覧(ファイル名のリスト)

ls -l /etc

total 1344

-r--r--- 1 root wheel 237 2 17 19:53 RsLicense drwxr-xr-x 3 root wheel 102 10 31 2004 X11

-rw-r--r-- 1 root wheel 515 10 26 2013 afpovertcp.cfg

lrwxr-xr-x 1 root wheel 15 10 26 2013 aliases -> postfix/aliases -rw-r--- 1 root wheel 16384 10 26 2013 aliases.db

drwxr-xr-x 11 root wheel 374 3 29 01:05 apache2 drwxr-xr-x 18 root wheel 612 5 16 20:40 asl -rw-r--r-- 1 root wheel 975 10 26 2013 asl.conf

-rw-r--r-- 1 root wheel 377737 9 21 2013 authorization.deprecated -rw-r--r-- 1 root wheel 1935 10 26 2013 autofs.conf

-r--r--r-- 1 root wheel 745 10 26 2013 bashrc -rw-r--r-- 1 root wheel 189 10 26 2013 csh.cshrc -rw-r--r-- 1 root wheel 121 10 26 2013 csh.login -rw-r--r-- 1 root wheel 39 10 26 2013 csh.logout drwxr-xr-x 3 root wheel 102 9 11 2013 defaults

(28)

ディレクトリ閲覧(ファイル名のリスト)

-r--r--- 1 root wheel 237 2 17 19:53 RsLicense drwxr-xr-x 3 root wheel 102 10 31 2004 X11

-rw-r--r-- 1 root wheel 515 10 26 2013 afpovertcp.cfg

lrwxr-xr-x 1 root wheel 15 10 26 2013 aliases -> postfix/aliases -rw-r--- 1 root wheel 16384 10 26 2013 aliases.db

drwxr-xr-x 11 root wheel 374 3 29 01:05 apache2 -rw-r--r-- 1 root wheel 975 10 26 2013 asl.conf -r--r--r-- 1 root wheel 745 10 26 2013 bashrc

1文字目

d : ディレクトリ(フォルダ)

l : シンボリックリンク

(29)

ファイル・ディレクトリ操作

ファイルのコピー・移動・削除 cp コピー元 コピー先 mv 移動元 移動先 rm ファイル名 ディレクトリ作成・削除 mkdir ディレクトリ rmdir ディレクトリ テキストファイルの検査・部分表示 wc ファイル名 head ファイル名 tail ファイル名 less ファイル名 コマンドファイルのパス検索 コマンド 29 / 39

(30)

ワイルドカード

? 任意の 1 文字 * 0文字以上の任意文字列 [...] [...] 内の任意の 1 文字 ls /e?? ls -l /e??/[ah]* ls -l -d /e??/[ah]* 【問 2】 次の各コマンドによって何が起こるか. 1 cp /etc/hosts* ./

(31)

☆ここで登場した主なコマンド

pwd カレントディレクトリの表示 cd カレントディレクトリの移動 ls ファイル・ディレクトリのリスト cp ファイル・ディレクトリのコピー mkdir ディレクトリの作成 mv ファイルの移動 rm ファイルの削除 wc ファイルに含まれる行数・単語数・文字数の表示 which コマンドファイルのパス表示

(32)
(33)

初期設定ファイル

システム設定 /etc/bashrc ユーザ設定 ~/.bashrc または ~/.bash_profile (例)bash 起動直後のカレントフォルダを HOME 以外にする:

.bash profile

cd /cygdrive/z/CS-A

(34)

環境変数

代表的環境変数 PS1:プロンプト文字列 HOME:ホームフォルダ PATH:コマンドサーチパス . . . 環境変数の設定とグローバル化 環境変数名=値

(35)

環境変数の参照

すべての環境変数 printenv HOME=/home/... LANG=ja_JP.UTF-8 PATH=/bin:/usr/bin:... SHELL=/usr/bin/bash ... 個別参照 echo $PS1 echo $PATH

(36)

プロンプト文字列

PS1

変数設定 PS1="[\u@\h]$ " \u : ユーザ名 \h : ホスト名 \d : 日付 \t : 時刻 \w : ワークフォルダ \! : ヒストリ番号 \# : コマンド番号 \n : 改行 グローバル化 export export PS1

(37)

コマンドサーチパス

PATH

パスの追加

PATH=/cygdrive/z/CS-A:$PATH グローバル化 export

export PATH

次のようにも書ける;

(38)

初期設定ファイルの例

ホームフォルダに .bash profile

.bash profile

cd /cygdrive/z/CS-A

PATH=/cygdrive/z/CS-A:$PATH export PATH

export PS1="[\u@\h]$ " ...

(39)

☆ここで登場した主なコマンド

export 変数のグローバル化

printenv 環境変数の一覧表示

参照

関連したドキュメント

画像の参照時に ACDSee Pro によってファイルがカタログ化され、ファイル プロパティと メタデータが自動的に ACDSee

①アプリをアンインストール スタート > 設定 > アプリ > アプリと機能 > Docan Browser5. ②関連ファイル削除(1)

ダウンロードしたファイルを 解凍して自動作成ツール (StartPro2018.exe) を起動します。.

【原因】 自装置の手動鍵送信用 IPsec 情報のセキュリティプロトコルと相手装置の手動鍵受信用 IPsec

記録表 ワークシート 作品 活動の観察

大気と海の間の熱の

ご使用になるアプリケーションに応じて、お客様の専門技術者において十分検証されるようお願い致します。ON

改良機を⾃⾛で移動 し事前に作成した墨 とロッドの中⼼を合 わせ,ロッドを垂直 にセットする。. 改良機のロッド先端