サイズ: 218
コメント:
|
サイズ: 5328
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 2: | 行 2: |
行 3: | 行 4: |
* "hoge" * ""fuga"" |
* nest(MMAのサーバ)に接続できる環境が必要です。 * 不明な点がありましたら、挙手をお願いします。優秀なTAが駆けつけてくれます。 * 講習の内容に間違いがあったら御指摘をお願い致します * コンピュータリテラシーの進度はどれほどでしょうか . 前年度までは * やった: cp,mv等のコマンド * 今やってる||やってない: パイプ、リダイレクトなど |
行 6: | 行 13: |
== UNIXの歴史 == == OSとその構造 == |
* OSの種類の1つ * 現在では、「UNIX」という語は「UNIX標準に準拠するあらゆるオペレーティングシステムの総称」でもある(規格みたいなもの) * UNIXの例 * Mac OS X * Linux * Redhat Enterprise Linux 6.5(sol) == OSの構造 == {{{ オペレーティングシステム(Operating System, OS)は、コンピュータにおいて、ハードウェアを抽象化したインターフェースを利用者またはアプリケーションソフトウェアに提供するソフトウェアである - Wikipedia オペレーティングシステム }}} * コンピューターの五大機能 * 入力機能(キーボード・マウスなど) * 出力機能(ディスプレイ) * 記憶機能(メモリなど) * 制御機能(CPUなど) * 演算機能(同上) * ユーザー(アプリケーション)がこれらのハードウェア部分まで意識するのは面倒で大変 * エディタ1つとっても、キーボードからの入力、記憶装置への書き込み、ディスプレイへの描画、これらを行うCPUの処理などなど * この管理を一括にし、使いやすい形で私たちに提供してくれるのがOS === カーネル === [[attachment:figure1]] * kernel...核 * 直接的にハードウェアを管理している部分 * 文字通り「核」としての重要な役割 === シェル === * shell...殻 * Kernelとユーザの橋渡し的な役割を持つ {{{ echo $SHELL }}} |
行 9: | 行 52: |
= UNIXの構造を眺めてみる = | * 小さなコマンドで大きなことができる * ツール等の蓄積(歴史の話につながる?) == 実際にUNIXの構造を眺めてみる == * nestに接続 {{{ $ cd / $ ls }}} * home * 各人の部屋がある場所 * bin * バイナリ:binary * 基本コマンドのバイナリが置いてある * shellの置場もここである * ちょっとまって!cdが入ってないやん! * cdは独立したファイルではない(らしい) * etc * その他:et cetra * 設定ファイル * deb * device * デバイス(キーボード等)に関するファイル * 先述したKernelとしての役割 * lib * library * 共有ライブラリ * usr * USeRの略だったりそうじゃなかったり * ユーザのバイナリやライブラリ、ヘッダーファイルなどの置き場所 * var * variable(変化しやすい) * ログ等の常に変化のあるファイルを置く場所 * tmp * temporary * 一時ファイル = パーミッション = |
行 11: | 行 92: |
* man * manual * コマンドのマニュアルを閲覧する * オプション等の記載もあるのでとりあえず叩いてみるといいかも * qキーで端末の入力画面に戻る * ls * list * ディレクトリの内容をリスト表示する * 引数を渡すことでそれに合致するファイル名を表示したり、表示するディレクトリを指定できる * cd * change directory * カレントディレクトリを指定のディレクトリに変更 * 指定をしない場合、ホームディレクトリ(~)に移る * pwd * print working directory * 現在の作業ディレクトリの名前を出力 * cat * concatenate(鎖状につなぐ) * ファイルの内容を連結して表示 * chmod * change mode * ファイルのパーミッションを変更 * chown * change owner * mkdir * make directory * ディレクトリを作成 * rm * remove * ファイルやディレクトリの削除を行う * cp * copy * ファイルやディレクトリのコピーを行う * mv * move * ファイルの移動を行う * echo * 1行のテキストを表示 * less * ファイルの内容を一画面ごとに表示 * ページの前後ができる(f,b) * 比較的長いテキストの閲覧に適する * sudo * コマンドを他のユーザーとして実行 * root権限を一時的に行使するときなどに使用 = リダイレクト = * コマンドへの入力、また、コマンドからの出力先を変更する * 出力先変更の例 {{{ $ echo Linux chotto dekiru > Linux chotto dekiru $ echo Linux chotto dekiru > Linus.txt $ ls }}} * 入力の変更の例 {{{ $ echo 500 + 50 + 5 > calc.txt $ bc < calc.txt }}} = パイプ = * あるコマンドによる出力を、別のコマンドの入力として扱う * パイプの利用例 {{{ $ echo 500 - 50 - 5 | bc }}} = 参考 = [[mizunashi_mana/UNIX講習]] [[alstamber/UNIXPresentation]] [[chmod/Hello, UNIX.]] |
はじめに
- nest(MMAのサーバ)に接続できる環境が必要です。
- 不明な点がありましたら、挙手をお願いします。優秀なTAが駆けつけてくれます。
- 講習の内容に間違いがあったら御指摘をお願い致します
- コンピュータリテラシーの進度はどれほどでしょうか
- 前年度までは
- やった: cp,mv等のコマンド
今やってる||やってない: パイプ、リダイレクトなど
UNIXとは?
- OSの種類の1つ
- 現在では、「UNIX」という語は「UNIX標準に準拠するあらゆるオペレーティングシステムの総称」でもある(規格みたいなもの)
- UNIXの例
- Mac OS X
- Linux
- Redhat Enterprise Linux 6.5(sol)
OSの構造
オペレーティングシステム(Operating System, OS)は、コンピュータにおいて、ハードウェアを抽象化したインターフェースを利用者またはアプリケーションソフトウェアに提供するソフトウェアである - Wikipedia オペレーティングシステム
- コンピューターの五大機能
- 入力機能(キーボード・マウスなど)
- 出力機能(ディスプレイ)
- 記憶機能(メモリなど)
- 制御機能(CPUなど)
- 演算機能(同上)
- ユーザー(アプリケーション)がこれらのハードウェア部分まで意識するのは面倒で大変
- エディタ1つとっても、キーボードからの入力、記憶装置への書き込み、ディスプレイへの描画、これらを行うCPUの処理などなど
- この管理を一括にし、使いやすい形で私たちに提供してくれるのがOS
カーネル
- kernel...核
- 直接的にハードウェアを管理している部分
- 文字通り「核」としての重要な役割
シェル
- shell...殻
- Kernelとユーザの橋渡し的な役割を持つ
echo $SHELL
UNIXを使うメリット
- 小さなコマンドで大きなことができる
- ツール等の蓄積(歴史の話につながる?)
実際にUNIXの構造を眺めてみる
- nestに接続
$ cd / $ ls
- home
- 各人の部屋がある場所
- bin
- バイナリ:binary
- 基本コマンドのバイナリが置いてある
- shellの置場もここである
- ちょっとまって!cdが入ってないやん!
- cdは独立したファイルではない(らしい)
- etc
- その他:et cetra
- 設定ファイル
- deb
- device
- デバイス(キーボード等)に関するファイル
- 先述したKernelとしての役割
- lib
- library
- 共有ライブラリ
- usr
- USeRの略だったりそうじゃなかったり
- ユーザのバイナリやライブラリ、ヘッダーファイルなどの置き場所
- var
- variable(変化しやすい)
- ログ等の常に変化のあるファイルを置く場所
- tmp
- temporary
- 一時ファイル
パーミッション
コマンド
- man
- manual
- コマンドのマニュアルを閲覧する
- オプション等の記載もあるのでとりあえず叩いてみるといいかも
- qキーで端末の入力画面に戻る
- ls
- list
- ディレクトリの内容をリスト表示する
- 引数を渡すことでそれに合致するファイル名を表示したり、表示するディレクトリを指定できる
- cd
- change directory
- カレントディレクトリを指定のディレクトリに変更
- 指定をしない場合、ホームディレクトリ(~)に移る
- pwd
- print working directory
- 現在の作業ディレクトリの名前を出力
- cat
- concatenate(鎖状につなぐ)
- ファイルの内容を連結して表示
- chmod
- change mode
- ファイルのパーミッションを変更
- chown
- change owner
- mkdir
- make directory
- ディレクトリを作成
- rm
- remove
- ファイルやディレクトリの削除を行う
- cp
- copy
- ファイルやディレクトリのコピーを行う
- mv
- move
- ファイルの移動を行う
- echo
- 1行のテキストを表示
- less
- ファイルの内容を一画面ごとに表示
- ページの前後ができる(f,b)
- 比較的長いテキストの閲覧に適する
- sudo
- コマンドを他のユーザーとして実行
- root権限を一時的に行使するときなどに使用
リダイレクト
- コマンドへの入力、また、コマンドからの出力先を変更する
- 出力先変更の例
$ echo Linux chotto dekiru > Linux chotto dekiru $ echo Linux chotto dekiru > Linus.txt $ ls
- 入力の変更の例
$ echo 500 + 50 + 5 > calc.txt $ bc < calc.txt
パイプ
- あるコマンドによる出力を、別のコマンドの入力として扱う
- パイプの利用例
$ echo 500 - 50 - 5 | bc