計算機演習のファイル操作・ディレクトリ操作に関する資料

復習: 簡単なファイル操作
$ ls
‒ ファイルの一覧を表示(LiSt)
計算機演習
$ ls -l
‒ ファイルの一覧を詳細に表示(Long format)
$ cp ファイル1 ファイル2
第15回
‒ ファイル1をファイル2に複写(CoPy)
$ mv ファイル1 ファイル1a
2016年7月25日
‒ ファイル1をファイル1aに改名(MoVe)
$ rm ファイル1 … ファイルn
消去したファ
イルは復活で
きない!!
‒ ファイル1 ... ファイルnを消去(ReMove)
ディレクトリ
• ファイルの数が多くなると、収拾がつかなくな
る→何らかの基準で分類・整理する必要
• 例えば…
‒ 一時的なファイルと恒久的なファイルを分離
‒ レポートを授業ごとに分ける
‒ 公的なものと私的なものを分ける
• ディレクトリ…ファイルのまとまりを表すもの
‒ ディレクトリにも名前をつける
‒ ファイルは必ずどこかのディレクトリに属している
カレントディレクトリ
• 現在の作業ディレクトリ
• コマンドの実行において、特にディレクトリを
指定しないときは、カレントディレクトリ(の
ファイル)が操作対象となる
$ ls
•カレントディレクトリに属するファイルの一覧を
表示
$ emacs fib.p &
•カレントディレクトリに属するfib.pを編集する
ホームディレクトリ
• ログインしたときにカレントディレクトリとなる
ディレクトリ
‒ 通常はユーザごとに異なる
‒ ユーザは各自のホームディレクトリ以下において、
ファイルやディレクトリの作成・削除が可能
‒ 「 」で表す
$ mkdir ディレクトリ
‒ 新しいディレクトリを作成(MaKe DIRectory)
$ cd ディレクトリ
‒ 指定したディレクトリに移る(Change Directory)
‒ カレントディレクトリの変更
$ cd
(ホームディレクトリ)
arith.p
簡単なディレクトリ操作
fib.p
‒ ホームディレクトリに移る
簡単なディレクトリ操作
(続き)
階層ファイル構造
• 各段階でlsを実行しながら追ってみよ(赤い枠が
カレントディレクトリ)
• 計算機内のファイルは、全体として以下の図の
ような階層構造をなしている
ホームディレクトリ
/
bin
arith.p
dir1
$
$
$
$
$
$
file1
dir2
fib.p
cat
ls
mkdir dir1
cd dir1
touch file1
mkdir dir2
cd dir2
cd
home1
bin
e
t
aoki
kato
RMAIL
my.doc
game
chess
絶対パス名の例
• ディレクトリやファイルの位置を指定するため
に用いる名前
• 絶対パス名(フルパス名)
– ルートディレクトリを基準にして、 ったディレク
トリを順に「/」で区切って並べる
‒ 「/」で始める
– カレントディレクトリを基準にして、
クトリを順に「/」で区切って並べる
‒ 「/ 」では始まらない
usr
emacs
パス名(pathname)
• 相対パス名
ルートディレクトリ
ったディレ
• /home1/t/kato/game/chess
/
bin
cat
ls
home1
usr
home1
bin
emacs
e
t
aoki
RMAIL
t
kato
kato
my.doc
game
game
chess
chess
相対パス名の例
パス名(続き)
• パス名中の「.」と「..」
• カレントディレクトリ: /home1/t/kato
• game/chess
ls
‒ 「..」は注目しているディレクトリの親ディレクトリ
を表す
/
bin
cat
‒ 「.」は注目しているディレクトリ自身、
usr
bin
emacs
• カレントディレクトリが/home1/t/katoのとき以下
は全て同じファイルを指すパス名
home1
e
t
aoki
RMAIL
kato
my.doc
game
game
chess
chess
– game/chess
– /home1/t/kato/game/chess
– ./game/chess
– /home1/t/kato/./game/chess
– ../kato/game/chess
– /home1/t/kato/../kato/game/chess
「.」を用いた例
「..」を用いた例
• カレントディレクトリ: /home1/t/kato
• カレントディレクトリ: /home1/t/kato
• ./game/chess
• ../kato/game/chess
/
bin
cat
ls
usr
home1
bin
emacs
e
bin
t
aoki
.
kato
RMAIL
game
game
chess
my.doc
cat
ls
/
usr
home1
bin
e
emacs
t
aoki
RMAIL
kato
my.doc
chess
パス名(続き)
$ pwd
– カレントディレクトリの絶対パス名を表示 (Print
Working Directory)
$ cd
$ pwd
$ cd dir1/dir2
$ pwd
$ mkdir ../dir3
$ cd ../dir3
$ pwd
$ cd
$ pwd
(ホームディレクトリ)
dir1
dir2
(dir3はどこにできるか?)
ファイル・ディレクトリ操作
$ mv ファイル1 ... ファイルn ディレクトリ
‒ ファイル1...nを指定したディレクトリに移動
$ cp ファイル1 ... ファイルn ディレクトリ
‒ ファイル1...nを指定したディレクトリに複写(同じ名
前のファイルが作成される)
‒ 問題4のサンプルプログラム・サンプルデータのコ
ピーでは、コピー先のディレクトリとして「.」(すな
わちカレントディレクトリ)を指定した
kato
game
game
chess
chess
パス名を利用した
ファイル操作
• パス名で操作対象のファイルを指定する
$ cat /usr/share/dict/words
•ディレクトリ/usr/share/dictにあるファイル
wordsの内容を画面に表示
$ cp /usr/share/dict/words words
•ディレクトリ/usr/share/dictにあるファイル
wordsを、カレントディレクトリのwordsという
名前のファイルに複写
ファイル・ディレクトリ操作
$ rmdir ディレクトリ
‒ (空の)ディレクトリを消去(ReMove DIRectory)
$ rm -r ディレクトリ
‒ 指定したディレクトリ以下のファイルを全て消去
$ ls ディレクトリ
‒ 指定したディレクトリのファイルの一覧を表示
$ ls -l ディレクトリ
..
‒ 指定したディレクトリのファイルの一覧を詳細に表
示