情報活用演習 06 第七回 ~~Linux コマンドとグラフツール入門 ~~ 担当 : 水野恒史居室 : 理学部物理科学科高エネルギー宇宙研究室 ( 理学部 B210 号室 ) 電子メール :tsune@hiroshima-u.ac.jp ホームページ :http://home.hiroshima-u.ac.jp/tsune/ 1
今後の予定 12 月末に出張が入りましたので 今後の予定は以下のようになります 11/14: Linux コマンドとグラフツール入門 1( 第 7 回 ) 11/21: グラフ作成入門 2( 第 8 回 ) 11/28: グラフ作成入門 3( 第 9 回 ) 12/5: プログラミング入門 1( 第 10 回 ) 12/12: プログラミング入門 2( 第 11 回 ) 12/19: 出張のため休講 1/9: プログラミング入門 3( 第 12 回 ) 1/16: 応用問題 ( 第 13 回 ) 1/23: レポート課題説明 質問 ( 第 14 回 ) 1/30: 予備 gnuplot および C の入門 物理の代表的な問題の可視化 ( グラフ化 ) を行い 理解を深める 2
前回の復習 Linux や Windows とは OS( オペレーティングシステム ) の一種である OS とは入出力装置 ( キーボード マウス モニタ ) や記憶装置 アプリケーションを管理する仕組みのこと Windows は GUI( グラフィカルインターフェース ) を多用し使いやすさに優れる一方 Linux は CUI( コマンドインターフェース ) が本来のインターフェースであり 安定性 柔軟性に優れる CUI ではコマンド入力により 様々なアプリケーションを自由に起動できる コマンドを覚えなければならないが ファイルやディスクの管理などを柔軟かつ高速に処理できる コマンドを使うには 端末 とよばれるウィンドウを開かなければならない これは文字表示システムしかなかった頃の仕組みを模擬したもの またコマンドは最後に Enter キーを押すことで入力が完了する 代表的なコマンド :cd, ls, less コマンドからアプリケーションを起動できる たとえば皆さんの Web ページを編集したければ ディレクトリを移動した上で gedit index.html と打つ 今日はさまざまな便利なコマンドに慣れ親しんでもらうとともに グラフ作成ツール gnuplot の入門を行ないます 3
漢字コードの指定 less コマンドでファイルの中身が文字化けした人がいましたが これは 使われている文字コード ( 計算機内部での漢字の表現方法 ) を端末が理解できないから このようなときはエディタでファイルを開き ファイル -> 別名で保存 であらわに文字コードを EUC-JP にしてやればよい 単に 保存 ボタンだと文字コードは変わらないので あらわに文字コードを EUC-JP にする 4
ファイル ディレクトリの管理 (0) ワープロ グラフツールで作成した文書や図はファイルとして保存する またファイルをディレクトリ ( フォルダ ) ごとに保存することで 整理できる ファイルとディレクトリの管理は 計算機を使いこなす鍵である 今日はその練習をします まずはファイル ディレクトリの概念の復習から public_html や Mailboxes など みなさんのホーム cd public_html で移動 cd.. で一つ上に戻る cd で各自のホームに戻る Index.html など 復習 cd コマンドで public_html まで移動 less コマンドで index.html を表示し q で抜ける cd コマンドで各自のホームに戻る 5
ファイル ディレクトリの管理 (1) 本計算機システムでは各自が使えるディスク容量は 400MB に制限されている 使用容量を調べるのは quota コマンドである グラフィカルに同等の情報を得ることも可能 GUI quota コマンドによる表示 メニューバーから アプリケーション -> アクセサリ -> ディスク使用量 でも同様の情報が得られる 表示は kb( キロバイト ) 単位 よって 106880 とは およそ 100MB 消費していることを示す CUI 6
ファイル ディレクトリの管理 (2) ディスク容量の空きが少なくなってきたら 不要なファイルを消さなくてはいけない どのディレクトリの下に大量のファイルがあるのかを調べるのが du コマンドである -k オプションをつけたときは 表示は kb 単位 つまり下の例では Windows と public_html がおのおの 25MB/48MB ほど消費していることがわかる ファイルの削除は rm ファイルの名前 である もちろん マウスでゴミ箱に移してもよい ( ゴミ箱を空にするのを忘れないように ) ちなみに ディレクトリを消すのは rmdir ディレクトリ名 となる 7
ファイル ディスクの管理 (3a) ファイルが増えてきたら 関連するファイルを同じディレクトリに保存するなどして整理するとよい ( たとえば レポート課題 プログラム デジカメ写真 など ) ディレクトリを作成するコマンドは mkdir またファイルを移動させるのは mv である 1) たくさんの画像ファイルがある 2) ディレクトリを作成 3) ファイルをディレクトリに移動 mv Screenshot* Figs と打つことで Screenshot で始まるファイル全て という意味になる ( この * のことをワイルドカードという ) 上の例は mv file 名 directory 名 という書式 一方 mv file 名 1 file 名前 2 とすると ファイルの名前が file1 から file2 に変わる 8
ファイル ディスクの管理 (3b) ファイル移動後が以下の状態である このように 大量のファイル操作を極めて簡単かつ高速に行えるのが コマンドで操作する利点といえる ホームの下のファイルがなくなる Fig ディレクトリの下に 確かにファイルが移動していることを確認 スクリーンショットやエディタを用いて 大量の (10 個程度 ) 邪魔なファイルを作成 mkdir コマンドで適当なディレクトリを作成し そこにファイルを移動 ( ファイルの整理 ) cd コマンドと rm コマンドを使い 今移動したファイルを消去 ( 不要なファイルの消去 ) cd コマンドと rmdir コマンドを使い 作ったディレクトリを消去 ( 不要なディレクトリの消去 ) 9
便利なコマンド集 ここまでで紹介したコマンドのリストをあげておく pwd, cd, ls, mkdir, cp, rm, rmdir, mv, du 使い方は Google などを用い Web で調べるのがよい また http://homepage2.nifty.com/cs/linux_command/command/ は 例も載っておりわかりやすい 各自で以下の例題にチャレンジして コマンドに慣れ親しんでください 計算機の情報を得るコマンド top who whoami uname date cal を試してみよう 各々の意味は何であるか オンラインで調べてみよう 実用的なファイル操作の練習として 以下を試みよう メールを出すとき 末尾につく署名 ( シグネチャ ) は 各自のホームの下の Mailboxes の下の config_linux の下の signature.txt です このファイルを コマンドでエディタを起動させ ( gedit singnature.txt とする ) 編集し 自分にメールをだして確認してみよう 練習のため ディレクトリの移動 ファイルの編集は すべてコマンドで行う /home/user4/tsune/public_html の下に 本演習用の資料がすべて収められている どのようなファイルがあるか確認してみよう index.html と資料の pdf ファイルの対応などが見てとれるはずである ( 注 : 普通各自のディレクトリは 他人からは見えません ) たくさんファイルを保持している人は これを機会に整理してみよう 10
gnuplot とは Thomas Williams, Colin Kelly などにより 1986 年に開発された 2 次元および 3 次元のグラフを作成するツール 関数やデータなどをプロットでき 表示方法 ( 色 タイトル等 ) をユーザーが自由に指定できる 学生実験などでもよく使います Unix(Linux) のほか Windows や Machintosh でも利用可能なフリー ( 無償 ) のソフトウェア 名前が似ているが Unix におけるフリーソフトウェア開発プロジェクトの GNU とは無関係です 本家ホームページは http://www.gnuplot.info その他 日本語の解説 Web ページとして 以下のものがあげられる ( 他にもあります ) http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/gnuplot-intro/ http://auemath.aichi-edu.ac.jp/~khotta/ghost/gnuplot.html 本演習では gnuplot を使って物理でよく使う関数や各種データのプロットを自ら作成し 初歩的な使い方を習得してもらいます 最終的には 物理 数学の講義やテキストで学んだ関数やデータを自分でプロットして 理解を深めるのに役立てて下さい 関数やデータをグラフにする ( 可視化 ) は理解に非常に役に立つ 11
起動および終了 (1) まずはやってみよう gnuplot はコマンドで操作するアプリケーションであるので 端末を開く必要がある 右クリック -> 端末を開く ないしは メニューバーから アプリケーション -> システムツール -> GNOME 端末 で 端末が開く まず作業用のディレクトリを作って移動しよう その上で gnuplot と打てば起動する 作成した図を保存したりするので ホームで作業しないほうがよい ( ファイルがごちゃごちゃになる ) 作業用のディレクトリを作成してそこに移動するのを忘れないように 12
起動および終了 (2) 無事起動されると 以下のような画面が出てきます gnuplot> と表示されてるのは gnuplot のプロンプト ( 入力を促す ) という意味 ここで様々なコマンドを打ち グラフを作成する 終了するのはこのプロンプトで exit ないしは quit と打つ 13
簡単な関数の表示 y=f(x) の形の 2 次元関数の表示は gnuplot の内部で plot 関数の式 とすればよい 以下は 一次式の例 正しくコマンドを打つと グラフと式が表示される 2x+10 は gnuplot では 2*x+10 と書く 掛け算は * で表す ということ これは C などのプログラミング言語でも同じなので覚えておいてください 14
様々な関数 物理や数学でよく使う関数を表示させてみよう 独特な書き方をするものがあるのに注意 2 y = x 放物線 ( 物の運動など ) y = sin x y = cos x y y = ln x y = log x y = tan x = x e 三角関数 ( 振り子運動や波 ) 自然対数 対数関数 指数関数 ( 放射性物質の崩壊 ) plot sqrt(x) も試してください y = x のことです 変数は必ず () で囲むこと また 単に log(x) は自然対数の意味であり 10 を底にした対数は log10(x) となる こうした約束事は 他のプログラム言語でもほぼ共通 上向きの矢印キーを押すと 直前のコマンドが出てくるので 一部を書き換えればよい 15
関数の練習 残りの時間は 思いつく関数を描く練習にあててください 物理や数学の講義で出てきた関数を試すのもよい 以下は例題です y y y y y y = = = = x sin 2x 2x 2x 2 x + 1 xe e 3 x = cos = 2 x 0.2x 2 16