UNIX演習 情報ネットワーク特論.

Slides:



Advertisements
Similar presentations
1 ログイン ユーザ名: root パスワード: hosei (初期設定). 2 はじめに 対象 学部 1 年生 日時 毎週木曜 6 限 18 : 30 ~ 19:30 ( 初回のみ ~ 20 : 00) 開催場所 W211 各自持参するもの ノート PC LAN ケーブル.
Advertisements

情報処理基礎演習Ⅱ 地球環境学科 伊藤,小黒 TA 川野,馬場. 講義の内容 UNIX 系の OS の使い方( Linux の使い方) (始めのうちは慣れないため扱いづらいか も・・・) 起動・終了 ディレクトリ(フォルダ)の構造 基本的なコマンドの使い方 エディタ( vi ) ファイルの操作,管理.
ICT Foundation 1 Copyright © 2010 、 IT Gatekeeper Project – Ohiwa Lab. All rights reserved. ファイルとディレクトリ の操作.
BBT大学 Ruby on Rails開発環境セットアップマニュアル
実習1:コマンドシェルの使い方.
情報処理概論Ⅰ 2007 第3回 2007/5/2 情報処理概論Ⅰ 第3回.
UNIX利用法.
UNIX利用法 情報ネットワーク特論資料.
JXTA Shell (3) P2P特論 (ソフトウェア特論) 第6回 /
知能機械工学科 担当:長谷川晶一 TA:新・後藤・ナンバ
WebLSDローカルキット2008のインストール1
Macユーザーの方:データ転送 ターミナル使用.
Unix生活 Vol.1
応用理工学情報処理 第1回(2015年10月 5日) 月曜日担当 前島展也 Manaba
スキルチェック Unix編.
実習用サーバの利用開始手順 (Windowsの場合) TeraTerm Proをインストール 公開鍵をメールで送付
第3回 ファイルとフォルダ 伊藤 高廣 計算機リテラシーM 第3回 ファイルとフォルダ 伊藤 高廣
コマンドプロンプトの起動と終了 最初に覚えるコマンド ディレクトリ構造とパス 各種コマンドの練習 Cコンパイルとプログラムの実行
物理学情報処理演習 2. UNIX 補足自習用テキスト.
コンピュータリテラシー 第3回授業の復習 基本的なUNIXコマンド
第1回プログラミング入門 (教科書1~3章).
Linux リテラシ 2006 第2回 基本コマンド2.
基礎ゼミナールⅠ報告書 番号000000  内田一徳 2009年度前期.
シミュレーション物理3 プログラミングの基本 その2
リダイレクト パイプ 標準入出力プログラム コマンド行引数 関数 system()
システムプログラミング 第5回 情報工学科 篠埜 功 ヒアドキュメント レポート課題 main関数の引数 usageメッセージ
プログラミング入門2 第1回 導入 情報工学科 篠埜 功.
OSとコマンド OS:コンピュータを使うための基本プログラム コマンド:OS上で使用できる命令 OS本体であるカーネルの内部コマンド
PuTTYとパスワード変更 文責:亀 彩.
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
xxxxxx . yyy xxxxxx Linuxにおける情報管理 一般的なファイル UNIX における情報管理の単位 ファイルの種類を表す
文字化けの背景を知る.
ネットワーク性能評価.
Cygwin の install.
インターネット技術特論 B:コマンドライン, shell 山口 実靖
鯖管のすヽめ.
公開鍵認証方式の実習 TeraTermの場合
第1回プログラミング入門.
情報工学科 3年生対象 専門科目 システムプログラミング 第5回、第6回 ヒアドキュメント レポート課題 情報工学科 篠埜 功.
計算物理学基礎 第1回 UNIXの基礎 C言語の基本.
ネットワークプログラミング 中村 修.
九州大学キャンパスクラウド 利用法 情報ネットワーク特論 講義資料.
情報処理概論Ⅰ 2007 第4回 2018/11/30 情報処理概論Ⅰ 第4回.
C言語講習 第0章 Hello, world!.
KEK 波戸 、平山 最終変更 テキスト:installation_guide.pdf
リダイレクト パイプ 標準入出力プログラム コマンド行引数 関数 system()
コマンドプロンプトの起動と終了 最初に覚えるコマンド ディレクトリ構造とパス 各種コマンドの練習 Cコンパイルとプログラムの実行
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
デジタル画像とC言語.
公開鍵認証方式の実習 MacOS Xの場合.
JXTA Shell (1) P2P特論 (ソフトウェア特論) 第4回 /
7-0.SWORD Client for WEKO インストールマニュアル Version 2.2
地域情報学 C言語プログラミング 第1回 導入、変数、型変換、printf関数 2016年11月11日
2013年度 プログラミングⅡ ~ はじめてのプログラミング ~.
2017年度 プログラミングⅡ ~ はじめてのプログラミング ~.
JXTA Shell (2) P2P特論 (ソフトウェア特論) 第5回 /
2014年度 プログラミングⅡ ~ はじめてのプログラミング ~.
UNIX演習 情報ネットワーク特論資料.
UNIX演習 情報ネットワーク特論資料.
UNIX演習 情報ネットワーク特論資料.
2013年度 プログラミングⅠ ~ はじめてのプログラミング ~.
情報処理概論Ⅰ 2007 第6回 2019/5/16 情報処理概論Ⅰ 第6回.
第4回 プログラム作成,情報検索 伊藤 高廣 計算機リテラシーM 第4回 プログラム作成,情報検索 伊藤 高廣
ネットワーク・プログラミング Linuxシステムとソフトウェア開発.
C言語講習 第0章 Hello, world!.
アルゴリズムとデータ構造 補足資料6-1 「サンプルプログラムcat1.c」
Cp-1. Microsoft Visual Studio 2019 C++ の使い方 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
プログラミング言語Ⅰ(実習を含む。), 計算機言語Ⅰ・計算機言語演習Ⅰ, 情報処理言語Ⅰ(実習を含む。)
第1章 文字の表示と計算 printfと演算子をやります.
Presentation transcript:

UNIX演習 情報ネットワーク特論

準備(Windowsのみ): TeraTermProのインストール 以下からファイルをダウンロード ダウンロードしたファイルを実行 言語の選択以外は、 基本的に「OK」か「next」をクリック http://sourceforge.jp/projects/ttssh2/downloads/48772/teraterm-4.67.exe

サーバへのログイン ホスト名: psihexa.cc.kyushu-u.ac.jp TeraTermの場合: ホスト名を入力し OK をクリック User name に、講義で渡した ID Passphrase に、講義で伝えたパスワード を入力して OK MacOS X, Linux の場合: ターミナルで以下のコマンドを実行 講義で伝えたパスワードを入力 (入力中は何も表示されないので注意) ssh 講義で渡したID@psihexa.cc.kyushu-u.ac.jp

初期パスワードの変更 必ず最初にパスワードを変更する [a0029@pcc001 a0029]$ yppasswd Changing NIS account information for a0029 on pcc001. Please enter old password: 初期パスワードを入力 Changing NIS password for a0029 on pcc001. Please enter new password: 新しいパスワード Please retype new password: 新しいパスワード(確認) The NIS password has been changed on pcc001. [a0029@pcc001 a0029]$

ファイル操作の準備 実習用のファイルを展開. 展開後は以下のようになる. $ ls $ tar xvf /tmp/unix1.tar ファイルの一覧 実習用のファイルを展開. 展開後は以下のようになる. ホームディレクトリ カレントディレクトリ unix1 hello.c pi.f90 pi.c pi-omp.f90 pi-omp.c mm.f90 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

作業ディレクトリの変更 カレントディレクトリを unix1に変更. $ pwd $ cd unix1 $ ls 現在のディレクトリを確認 ホームディレクトリ カレントディレクトリ unix1 hello.c pi.f90 pi.c pi-omp.f90 pi-omp.c mm.f90 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

ファイルの内容閲覧 $ less lu.f90 次のページへ: SPACE もしくは f 前のページへ: b 1行下へ:    Enter もしくは j 1行上へ:    k 閲覧終了: q ホームディレクトリ unix1 カレントディレクトリ hello.c pi.f90 pi.c pi-omp.f90 pi-omp.c mm.f90 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

ディレクトリの作成とファイルのコピー $ ls $ mkdir test $ cp hello.c test $ cp test.txt test $ ls test testディレクトリ作成 ファイルのコピー testディレクトリの下のファイル一覧 ホームディレクトリ unix1 カレントディレクトリ test hello.c pi.f90 pi.c pi-omp.f90 hello.c test.txt pi-omp.c mm.f90 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

ファイルの削除 $ cd test $ pwd $ ls $ rm hello.c $ rm test.txt 削除 削除 ファイルの削除 ホームディレクトリ unix1 カレントディレクトリ test hello.c pi.f90 pi.c pi-omp.f90 hello.c test.txt pi-omp.c mm.f90 削除 削除 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

複数のファイルの操作 $ cd .. $ pwd $ cp hello.c test.txt test $ ls test $ rm -ri test     全て y と答える $ ls ホームディレクトリ unix1 カレントディレクトリ test hello.c pi.f90 pi.c pi-omp.f90 hello.c test.txt pi-omp.c mm.f90 削除 mm.c mm-omp.f90 mm-omp.c mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-essl.f90 test.txt

ファイルの移動と名前の変更 $ mkdir test $ ls $ mv hello.c test.txt test $ ls test $ mv lu.f90 lu-serial.f90 ファイルの移動 ファイル名の変更 ホームディレクトリ 移動 unix1 カレントディレクトリ test hello.c pi.f90 pi.c pi-omp.f90 hello.c test.txt pi-omp.c mm.f90 mm.c mm-omp.f90 mm-omp.c 移動 mm-essl.f90 mm-essl.c lu.f90 lu-omp.f90 lu-serial.f90 ファイル名変更 lu-essl.f90 test.txt

*の利用(1) $ mkdir lu $ ls $ mv lu-* lu $ ls lu 移動 名前の先頭が lu- であるファイルを移動 ホームディレクトリ unix1 カレントディレクトリ test lu pi.f90 pi.c pi-omp.f90 hello.c lu-serial.f90 pi-omp.c test.txt mm.f90 lu-omp.f90 mm.c lu-essl.f90 mm-omp.f90 mm-omp.c mm-essl.f90 移動 mm-essl.c lu-serial.f90 lu-omp.f90 lu-essl.f90

*の利用(2) $ ls $ mkdir mm $ mv mm.* mm-* mm $ ls mm 移動 名前の先頭が mm. であるファイルと mm- であるファイルを移動  (mm* とすると mmディレクトリまで   含まれてしまう) ホームディレクトリ unix1 カレントディレクトリ test lu mm hello.c lu-serial.f90 test.txt lu-omp.f90 pi.f90 lu-essl.f90 pi.c mm.f90 pi-omp.f90 mm.c pi-omp.c mm-omp.f90 mm.f90 mm-omp.c mm.c mm-essl.f90 mm-omp.f90 mm-essl.c mm-omp.c 移動 mm-essl.f90 mm-essl.c

*の利用(3) $ cd mm $ ls $ mkdir f c $ mv *.f90 f $ mv *.c c $ ls * 移動 ホームディレクトリ unix1 カレントディレクトリ test mm lu hello.c lu-serial.f90 test.txt c f lu-omp.f90 pi.f90 mm.f90 lu-essl.f90 pi.c mm.c pi-omp.f90 mm.c mm.f90 pi-omp.c mm-omp.f90 mm-omp.c mm-omp.f90 mm-omp.c mm-essl.c mm-essl.f90 mm-essl.f90 mm-essl.c 移動

ディレクトリのコピー $ cd ~/unix1 $ ls $ ls -R $ cp -r mm mm-copy 移動 ホームディレクトリ カレントディレクトリ test mm mm-copy lu hello.c lu-serial.f90 test.txt c f lu-omp.f90 c f pi.f90 lu-essl.f90 pi.c mm.c mm.f90 pi-omp.f90 mm.c mm.f90 mm-omp.c mm-omp.f90 pi-omp.c mm-omp.c mm-omp.f90 mm-essl.c mm-essl.f90 mm-essl.c mm-essl.f90 移動

ディレクトリの移動 $ mkdir programs $ mv mm lu programs $ ls $ ls -R ホームディレクトリ unix1 カレントディレクトリ programs mm-copy test hello.c lu c f test.txt mm mm.f90 mm.c mm-omp.f90 c f mm-omp.c pi.f90 lu-serial.f90 mm-essl.f90 mm-essl.c pi.c lu-omp.f90 pi-omp.f90 mm.c mm.f90 lu-essl.f90 pi-omp.c mm-omp.c mm-omp.f90 mm-essl.c mm-essl.f90

プログラムの入力(1) 作業ディレクトリに移動 $ cd ~/unix1/test ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c lu-serial.f90 test.txt lu-omp.f90 pi.f90 mm.c mm.f90 lu-essl.f90 pi.c pi-omp.f90 mm-omp.c mm-omp.f90 pi-omp.c mm-essl.c mm-essl.f90

プログラムの入力(2) Emacsを起動し,次ページのプログラムを入力 #include <stdio.h> $ emacs -nw test.c 以下のプログラムを入力し,保存後終了.       保存コマンド: C-x C-s 終了コマンド: C-x C-c #include <stdio.h> int main() { printf("Hello World\n"); return(0); }

コンパイルと実行(1) /tmp/sample.c をコピー (まず予め入力してあったものを試す) $ cp /tmp/sample.c . $ ls ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c lu-serial.f90 test.txt lu-omp.f90 pi.f90 mm.f90 test.c mm.c lu-essl.f90 pi.c pi-omp.f90 mm-omp.f90 sample.c mm-omp.c pi-omp.c mm-essl.c mm-essl.f90

コンパイルと実行(2) sample.c をコンパイル C言語プログラムのコンパイル: cc コマンド $ cc sample.c –o sample $ ls ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c lu-serial.f90 test.txt lu-omp.f90 pi.f90 test.c mm.c mm.f90 lu-essl.f90 pi.c pi-omp.f90 sample.c mm-omp.c mm-omp.f90 pi-omp.c mm-essl.c mm-essl.f90 sample

コンパイルと実行(3) sample の実行 ./ を忘れない $ ./sample Welcome to the UNIX world! ./ を忘れない $ ./sample Welcome to the UNIX world! ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c lu-serial.f90 test.txt lu-omp.f90 pi.f90 mm.c mm.f90 test.c lu-essl.f90 pi.c pi-omp.f90 sample.c mm-omp.c mm-omp.f90 pi-omp.c sample mm-essl.c mm-essl.f90

コンパイルと実行(4) 自分で入力したプログラムのコンパイル エラーが出たら再編集 再編集 エラーメッセージが表示された? $ cc test.c –o test 再編集 $ emacs –nw test.c エラーメッセージが表示された? No Yes $ ./test 表示が正しくない? Yes No Congratulations!

コンパイルと実行(5) プログラムの再編集(表示内容の変更) 終わったら再度コンパイル・実行 $ emacs –nw test.c 以下のように編集し、保存後終了 #include <stdio.h> int main(void) { printf("Yesterday, \n"); printf("All my trouble seemed so\n"); printf("Far away.\n"); return(0); } Emacs の行コピー機能を利用すると便利 $ ls $ cc test.c –o test $ ./test

リダイレクションの利用(1) 準備: /tmp/sum.c のコピー $ cp /tmp/sum.c . $ ls ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c test.txt lu-serial.f90 lu-omp.f90 test.c pi.f90 mm.c mm.f90 pi.c lu-essl.f90 test pi-omp.f90 mm-omp.c mm-omp.f90 sample.c pi-omp.c mm-essl.c mm-essl.f90 sample sum.c

リダイレクションの利用(2) sum.cのコンパイル $ cc sum.c –o sum $ ls ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c test.txt lu-serial.f90 lu-omp.f90 test.c pi.f90 mm.c mm.f90 test pi.c lu-essl.f90 pi-omp.f90 mm-omp.c mm-omp.f90 sample.c pi-omp.c mm-essl.c mm-essl.f90 sample sum.c sum

リダイレクションの利用(3) 実行: まずキーボードから入力 $ ./sum A = ? 10 B = ? 20 実行: まずキーボードから入力 $ ./sum A = ? 10 B = ? 20 A = 10, B = 20, A + B = 30 キーボードから入力 キーボードから入力

リダイレクションの利用(4) 実行: ファイルから入力 (リダイレクト) $ less /tmp/data 中身を確認したら q で終了 実行: ファイルから入力 (リダイレクト) $ less /tmp/data 中身を確認したら q で終了 $ ./sum < /tmp/data A = ? B = ? A = 100, B = 200, A + B = 300

リダイレクションの利用(5) 実行: ファイルから入力し,ファイルへ出力 (リダイレクト) 実行: ファイルから入力し,ファイルへ出力      (リダイレクト) $ ./sum < /tmp/data > out $ less out ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c test.txt lu-serial.f90 lu-omp.f90 test.c pi.f90 mm.c mm.f90 test pi.c lu-essl.f90 pi-omp.f90 mm-omp.c mm-omp.f90 out sample.c pi-omp.c mm-essl.c mm-essl.f90 sample sum.c sum

リダイレクションとパイプラインの利用 実行: 出力を次のコマンドの入力とする (パイプライン) 実行: 出力を次のコマンドの入力とする      (パイプライン) $ ./sum < /tmp/data | tail –1 $ ./sum < /tmp/data | tail –1 > out $ less out tail コマンド: ファイルの末尾から指定した行数分を表示する.            tail –行数 ファイル名 ホームディレクトリ unix1 カレントディレクトリ programs test pi mm lu c f c f hello.c test.txt lu-serial.f90 lu-omp.f90 test.c pi.f90 mm.c mm.f90 test pi.c lu-essl.f90 pi-omp.f90 mm-omp.c mm-omp.f90 out sample.c pi-omp.c mm-essl.c mm-essl.f90 sample sum.c sum

パイプラインの利用 1画面に表示しきれない出力をページ毎に表示 $ ls -lR | less カレントディレクトリ ホームディレクトリ unix1 programs test pi mm lu c f c f hello.c test.txt lu-serial.f90 lu-omp.f90 test.c pi.f90 mm.c mm.f90 test pi.c lu-essl.f90 pi-omp.f90 mm-omp.c mm-omp.f90 out sample.c pi-omp.c mm-essl.c mm-essl.f90 sample sum.c sum

ログアウト 必ず以下を実行してログアウトする $ exit