- 追加された行はこの色です。
- 削除された行はこの色です。
この授業では、Cプログラムのコンパイルと実行をLinuxサーバー上で行います。
そこで、Linuxについて復習しておきましょう。
以下の例において、luna% はコマンド・プロンプトを表していて、入力しません。
コマンドの結果は、自分で確認してください。
*ディレクトリー [#m135a1eb]
コンピューターの中で、ファイルを整理するために作るグループのことをディレクトリーといいます。
Windows, OS X, iOS, Androidなどでは、フォルダーと呼ばれます。
ディレクトリーの区切りを / で表します。
**作業ディレクトリー(カレント・ディレクトリー) [#uc3bfc86]
Linuxにログインして作業を行うときに、現在作業を行っているディレクトリーのことを作業ディレクトリーあるいはカレント・ディレクトリーといいます。
作業ディレクトリーはドット . で表します。
**親ディレクトリー [#h070eb5d]
親ディレクトリーは、ディレクトリーの階層構造において、作業ディレクトリーの一つ上のディレクトリーです。
親ディレクトリーはドット2つ .. で表します。
**ホーム・ディレクトリー [#x4757af4]
Linuxにログインしたときのディレクトリーをホーム・ディレクトリーといいます。
ホーム・ディレクトリーはチルダ ~ で表し、ユーザーごとに異なります。
**ルート・ディレクトリー [#cb7ba520]
ルート・ディレクトリーは、ディレクトリーの階層構造における最上位のディレクトリー、つまり、すべてのファイルやディレクトリーを含むディレクトリーです。
ルート・ディレクトリーはスラッシュ / で表します。
*パス [#y2d282d9]
ファイルまたはディレクトリーを指定するものをパスといい、絶対パスと相対パスの2種類があります。
**絶対パス [#pd593349]
絶対パスは、ルート・ディレクトリーを基準としてファイルまたはディレクトリーを指定するものです。
対象のファイルまたはディレクトリーが同じであれば、作業ディレクトリに関わらず絶対パスは同じになります。
ルート・ディレクトリーを表すスラッシュ / で始まっているパスは絶対パスです。
**相対パス [#s1283a3c]
相対パスは、作業ディレクトリーを基準としてファイルまたはディレクトリーを指定するものです。
対象のファイルまたはディレクトリーが同じであっても、作業ディレクトリーによって相対パスが異なります。
スラッシュ / で始まっていないパスは相対パスとみなされます。
*コマンド [#y1284efe]
**cd (change directory) [#e3b9c0f5]
作業ディレクトリーを変更します。
引数として、変更後の作業ディレクトリーを指定します。
引数を指定しない場合は、変更後の作業ディレクトリーがホーム・ディレクトリーになります。
#geshi(sh){{
luna% cd basic_c
luna% cd
}}
**cp (copy) [#h216588c]
指定したファイルまたはディレクトリーを複製します。
第一引数として対象となるファイルまたはディレクトリーの名前、第二引数として複製のファイルまたはディレクトリーの名前指定します。
オプションをつけないときは、ファイルしか複製できません。
Rオプションで、ディレクトリーを中身ごと複製します。
#geshi(sh){{
luna% cp test.c hello.c
luna% cp -R basic_c basic_c_bkup
}}
**ls (list) [#b8960fc1]
現在の作業ディレクトリーにあるファイルとディレクトリーのリストを表示します。
aオプションで、.で始まる隠しファイルも全て表示します。
lオプションで、詳細を表示します。
#geshi(sh){{
luna% ls
luna% ls -a
luna% ls -l
luna% ls -al
}}
**mkdir (make directory) [#v8b72fce]
ディレクトリーを作成します。
引数として、新しく作成するディレクトリーの名前を指定します。
#geshi(sh){{
luna% mkdir basic_c
}}
**mv (move) [#n09382a8]
ファイルまたはディレクトリーを移動、または名前を変更します。
第一引数として対象となるファイルまたはディレクトリーの名前、第二引数として移動後のディレクトリーまたは変更後の名前を指定します。
つまり、第二引数が存在するディレクトリーの名前であればそのディレクトリーの中に移動し、第二引数が存在しない名前であればその名前に変更します。
#geshi(sh){{
luna% mv test.c hello.c
luna% mv hello.c basic_c/
}}
**pwd (print working directory) [#pce7038b]
現在の作業ディレクトリーを表示します。
#geshi(sh){{
luna% pwd
}}
**rm (remove) [#e3600f0f]
指定したファイルまたはディレクトリーを削除します。
オプションをつけないときは、ファイルしか削除できません。
rオプションで、ディレクトリーを中身ごと削除します。
#geshi(sh){{
luna% rm hello.c
luna% rm -r basic_c
}}
*rmdir (remove directory) [#ce895df7]
指定した空ディレクトリーを削除します。
#geshi(sh){{
luna% rmdir basic_c
}}