\documentstyle{jarticle}
\title{UNIX 基礎知識と UNIX 基本コマンド}
\author{森田 亙昭}
\date{\today}

\begin{document}
\maketitle
\section{シェル}
UNIX計算機とユーザの間で操作と結果表示を行なうためのインタフェースを実現するた
めのプログラムのこと。\\
シェルの機能
\begin{itemize}
 \item コマンド名を入力すると、そのコマンドのファイルを適当なディレクト
       リから読み込んでくれる。\\
       (適当なディレクトリとは環境変数でPATHとして設定されたディレクトリ:
       /usr/bin /usr/local/bin など)
 \item リダイレクトやパイプライン(後述)によって、コマンドの実行結果をファイルに保存したり、別のコマンドの入力として使用することができる。

 \item '＊'、'？'、'[]'によってファイル名のパターンマッチングをしてく
       れる。ちなみに、\\
       '*' : 0文字以上の任意の文字\\
       '?' : 任意の1文字\\
       '[]' : []で囲まれた文字のいずれか1文字に相当する文字\\

 \item プログラムのファイル名を入力するとそのプログラムを実行してくれる。
       例えば、/u/morita/works/にあるexecuteというファイルを実行したけれ
       ば、worksディレクトリに移動して./executeと入力することで実行できます。
       .は、自分がいるディレクトリを指すので./executeとは、今いるディレ
       クトリにあるexecuteというファイルを実行する、ということになります。
%%
\end{itemize}
\section{UNIX 基本コマンド〜ディレクトリとファイルの操作〜}
\begin{itemize}
 \item	mv
	\begin{itemize}
	 \item mv name1 name2\\
		ファイル，ディレクトリの移動およびファイルの名前の変更。
	\end{itemize}
 \item  cp
        \begin{itemize}
	 \item cp name1 name2 or directory\_name\\
		ファイルのコピー。directoryへのコピーか別名のファイルにコピー。
		ディレクトリのコピーには、オプション -r をつけて実行。
	\end{itemize}
 \item  rm
	\begin{itemize}
	 \item rm file\_name\\
		ファイルの削除。オプション -r をつけるとディレクトリを指定
		できて、そのディレクトリをまるごと削除できる。%
	\end{itemize}
 \item	mkdir
	\begin{itemize}
	 \item mkdir directory\_name\\
		ディレクトリの作成。
	\end{itemize}
 \item  rmdir 
	\begin{itemize}
	 \item rmdir\\
		ディレクトリの削除。%
	\end{itemize}

 \item  ls\\
	ディレクトリ内にあるファイル名およびサブディレクトリ名などの一覧の表示
	とファイル情報（ファイルのサイズ、アクセス権限）の表示。%%
	\begin{itemize}
	 \item ls -l\\
		アクセス権限、ファイルサイズ、タイムスタンプ（日付）なども表示
		してくれる。
	 \item ls -a\\
		通常の ls では表示してくれないファイル名の先頭が'.'のファイルも
		表示してくれる。
	 \item ls -l \~/*.html\\
		ディレクトリ~/の中にある .htmlのファイルをすべて表示してくれる
		.通常 \~/ は、ユーザのホームディレクトリを指します.
	\end{itemize}

 \item  cd\\
	ディレクトリの移動。
	\begin{itemize}
	 \item cd directory\_name
	 \item cd ..\\
		現在いるディレクトリの一つ上のディレクトリへ移動.
	 \item cd /\\
		ファイルシステムの一番上のディレクトリから指定したディレクトリ
		への移動.絶対パスによる指定.
	\end{itemize}
 \item ps\\
	プロセスの表示
	\begin{itemize}
	 \item 例:ps -aux $|$ grep sshd
	\end{itemize}


 \item  chmod\\
 	アクセス権限の変更.アクセス権限の指定には、オーナー、グループ、その他
	の利用者に対してそれぞれr(read),w(write),x(execute)があります.%
	       rwxは2進数の桁数と見なし，1であれば許可，0は拒否を示しま%
	       す．すなわち，3は011となり読み込み権限のみないことになり%
	       ます．ディレクトリに対し実行権限がないときはディレクトリ
	内のファイルをls等で見れないことになります.
	\begin{itemize}
	 \item 例：chmod 666 file\_name
		file\_nameのファイルの書き込み、読み込み、実行の権限をオーナー、
		ユーザの属するグループ、その他の利用者のすべてに許可する.

	\end{itemize}

\item chown\\
	ファイル，ディレクトリのオーナーを変える．
	\begin{itemize}
	\item 例：chown morita:wheel file\_name
	ファイルの所有者をmorita、グループをwheelに変える．ただし，root権
	      限で使用．グループは指定しなくても良い.
      \end{itemize}
 \item tar\\
	ファイルの格納と展開。もともとある複数のファイルを一つのファイルに格納
	する。
	\begin{itemize}
	 \item tar オプション ファイル１ ファイル2 .....\\
		オプションには、格納するとき（書庫を生成する＝creat）c、展開す
		る（取り出す＝extract）時には x を指定します。\\
	 \item 使用例\\
		tar -cf program.tar \~/Prog/* \\
		tar -xf program.tar \\
	       展開時にファイル名を指定すればそのファイルのみを展開す
	       ることが可能.\\
	       tar -xf program.tar file \\
	\end{itemize}
 \item gzipとgunzip\\
	ファイルの圧縮、解凍.\\
	\begin{itemize}
	 \item gzip   オプション ファイル1 ファイル2 ...\\
		ファイル1、ファイル2、...は圧縮されるファイルの列。
	       オプションdを使用すれば解凍も可能.
	 \item gunzip オプション ファイル1 ファイル2 ...\\ 
	 \item 実行例\\
		\% gunzip -l memo.tar.gz \\
		compressed  uncompr. ratio uncompressed\_name\\
		      275     10240  97.5\% memo.tar\\
	\end{itemize}
\end{itemize}

\section{パイプとリダイレクト}
 コマンドの標準出力の行き先
	\begin{itemize}
	 \item 画面に表示\\
		通常、標準出力は画面に表示されます。\\
	 \item ファイルへの保存（リダイレクト）\\
		使用例：\%ls $>$ file\_name\\
		コマンドlsの出力をファイルfile\_nameに保存。\\
	       stderrをリダイレクトするには\\
	       \%make $>\&$ file\_name
	 \item 他のコマンドの標準入力への接続（パイプ）\\
		使用例：\%ls -l $|$ less\\
		lessは、file\_nameを指定してその内容を読み込んで表示することも
		あります。
	\end{itemize}
\section{ファイルの表示}
ファイルの中身をみるコマンドには、less、more、catなどがあります。ここでは、lessの簡単な使い方について説明しておきます。
	\begin{itemize}
	 \item space：1ページ先に進む。
	 \item b    ：1ページ後に戻る。
	 \item /    ：/以降に書かれる文字列の検索。順方向。
	 \item ?    ：?以降に書かれる文字列の検索。逆方向。 	
	 \item v    ：エディタとして指定されているもの(vi等)を起動してファイルを編集することができます。
	 \item q    ：lessで表示するのを止めます。%
	\end{itemize}

\section{実習課題}
今日覚えたコマンドを使っての実習を行います\\
コマンドについては4回に本が沢山あるので\\
しっかり呼んで覚えておきましょう
\\ \\
課題\\
/u/morita/にkadai.tar.gzというファイルがありますので\\
それを自分のホームにコピーしてきて、以下の作業を行ってください\\ \\
1、ファイルの解凍 \\
2、解凍して出来たディレクトリへの移動 \\
3、ファイル executeに実行権限を付加 \\
4、ファイル executeを実行 \\

4まで終了すると、実行結果としてある質問が出てきます \\
その解答を森田(morita@db.is.kyushu-u.ac.jp)まで送ってください。 \
\end{document}




