Linuxコマンド入門してみるメモ #1 1.2


# #1 目次
コマンド
ls ディレクトリの中身一覧を表示する
cd 他のディレクトリに移動する
pwd 現在自分がいるディレクトリを表示する
more,less ファイルの中身を表示する
cp コピーする
find 検索する
rm ファイルの削除
mkdir ディレクトリの作成
rmdir ディレクトリの削除
mv 1.名前の変更 2.ファイルの移動
grep 文字列の検索
tar ファイルを書庫化・展開する
vi テキストを編集する
標準出力 >
ファイルの作成　
パイプ
正規表現
Linuxについて








#コマンド
コマンドの実体はプログラムである。
which コマンド名 でパスを取得できる。




. はカレントディレクトリを意味する。
.. は親ディレクトリを意味する。
~  はホームディレクトリ（ユーザごとのホーム）を意味する。
/  はルートディレクトリ（最上位階層）を意味する。




#ls (List)
ディレクトリの中身一覧を表示する。




```
$ ls
```




##ls -la
ディレクトリの中身一覧を詳しい情報つきで表示する。
##ls -t
ディレクトリの中身の一覧を日付順に表示する。




ls *XXX ワイルドカードで絞り込み表示が出来る。
ls ???.pdf ?を使うと文字数を絞れる。




ls -la で詳細情報を表示
ドットで始まるファイルは隠しファイル。
システム設定が書かれているファイルなどで主に使われる。








#cd (Change Directory)
他のディレクトリに移動する。
cd ディレクトリ名　と書く。




```
$ cd desktop
```




## cd
単に $ cd でホームディレクトリに移動する。




## cd ..
一つ上の階層に移動する。




#pwd
現在自分がいるディレクトリを表示する。




```
$ pwd
```




#cat,more,less
ファイルの中身を表示する。
moreやlessはページャと呼ばれるページごとの表示の機能を持つ。








```
less test.txt
```




qで終了できる。




-n 行番号を追加




#cp (CoPy)
コピーする。




```
$ cp test1.txt test2.txt 
```




test1.txtを test2.txtという名前でコピーする。
コピー先は現在いるディレクトリになる。




cp [オプション] コピー元　コピー先
コピー先が存在しないなら、その名前でファイルが保存される。
コピー先がディレクトリ名なら、その下にコピーが同じ名前で作成される。




cp -r でディレクトリごとのコピーが可能。
-r はrecursive（再帰）の意味。








#find
$ find パス -name ファイル名
でファイルを検索できる。
ワイルドカードも使用出来る。

ホームディレクトリから、名前"filename"を検索する例

```
$ find ~/ -name 'filename'
$ find ~/ -name 'filename*'
```





#rm (ReMove)
削除する。




```
$ rm test.txt
```




##rm -r
ディレクトリを中身ごと削除する。




#mkdir (MaKe DIRectory)
ディレクトリを作成する。




```
mkdir docs
```




docsというディレクトリを作成する。




$ mkdir dir1/dir2
$ mkdir dir1/dir2/dir3
ディレクトリを指定すれば、その下にディレクトリも作れる。




-p オプションを使えば上位ディレクトリを事前に作らずとも一気に作れる。
$ mkdir -p dir1/dir2/dir3








#rmdir (ReMove DIRectory)
ディレクトリを削除する。ただしディレクトリの中が空の時に限る。




```
$ rmdir test
```




中身ごと削除するには、rm -r を用いる。




#mv (MoVe)
2つの用法がある。
存在しないファイルかディレクトリを指定した場合、その名前に変わる。




##1.ファイル、ディレクトリの名前の変更 




```
$ mv test1.txt test2.txt
```




test1.txt と言うファイルの名前を test2.txt という名前に変える例です。 
ただし、test2.txt というファイルが既に存在するときは
test2.txt は上書きされるので注意が必要です。




##2.ファイルを他のディレクトリへ移動




```
$ mv test1.txt docs
```




テキストファイル test1.txt を、 ディレクトリ docs に移動する例。




#grep
一致する行を表示




```
grep パターン test1.txt
```




パターンを含む行を表示する。




#tar
ファイルを書庫化・展開する。




##tar cf
書庫化する




```
$ tar cf syoko.tar ファイル・ディレクトリ名
```




syoko.tar という名前でファイル、ディレクトリを書庫化する。




##tar xf




```
$ tar xf syoko.tar
```




syoko.tarという名前のファイルを展開する。








#vi
テキストファイルを編集する。




```
$ vi ファイル名
```




【 vi 】 テキスト・ファイルを編集する
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/230985/?ST=oss




#標準出力

Linux のプログラムには、「1 つの入り口と 2 つの出口」がある
標準入力と標準出力と標準エラー出力だ。

リダイレクトを使ってファイルに書き込むことが出来る。
lsの内容をls-outputという名前のファイルに標準出力する例
リダイレクトは > で行う。

```
$ ls > ls-output
```




追記したい場合は >>（アペンド）を用いる。


#cat > を用いたファイルの作成




catコマンドとリダイレクト > を用いてファイルを作成する。
Ctrl+D は EOF(End Of File) を示す




```
$ cat > cat-output
This is cat redirect.
//(「Ctrl」 D を押して終了する。) 
$
```




で、cat cat-output すれば




```
$ cat cat-output
This is cat redirect.
```




と、中に入っている。




#パイプ |
コマンドとコマンドを「|(パイプ)」 でつなげることで
パイプの前のコマンドを、後ろのコマンドの標準入力とすることができる。




```
ls | less
```




つまりこれで、lsをlessする。




#正規表現




```
^ 行頭を表す
$ 行末を表す
. 任意の一字を意味する
* 直前文字の 0 回以上の繰り返しを意味する
[...] .. の中の任意の一字を意味する
[^...] .. の文字が含まれないことを意味する。
Y￼ 正規表現の記号をエスケープする。
```





#Linuxについて
ソフトウェア
　基本ソフトウェア　OS
　応用ソフトウェア　Word等




UNIX=AT&Tと契約
UNIX互換OSの一つがLinux




基本ソフトウェア
　カーネル　ハードウェアと直接のやりとり等を行う。
　ユーザランド　シェルなどのカーネル以外をいう。




##CentOSのDL
Linuxディストリビューション、CentOSを用いる場合。
CentOS-6.x-i386-bin-DVD1.iso をDL
￼　http://ftp.riken.jp/Linux/centos/6/isos/i386/




VirtualBoxVMで作るならRedhat。
macなら左コマンドでキャプチャ切り替え。




#参照元
Linuxコマンド、ちょーーー入門
http://www.tuat.ac.jp/~sanoken/tech/unix/command.html
Linux標準教科書
http://www.lpi.or.jp/linuxtext/text.shtml
Linuxコマンド集 INDEX
http://itpro.nikkeibp.co.jp/article/COLUMN/20060224/230573/?ST=oss

#つづきます