電子メール、ファイルとディレクトリの木構造、パス名、Emacsカット&ペースト、コピー&ペースト

					2016年04月26日
情報科学類 コンピュータリテラシ

                                       筑波大学 システム情報系 情報工学域
                                       新城 靖
                                       <yas@cs.tsukuba.ac.jp>

このページは、次の URL にあります。
http://www.coins.tsukuba.ac.jp/~yas/coins/literacy-2016/2016-04-26
あるいは、次のページから手繰っていくこともできます。
http://www.coins.tsukuba.ac.jp/~yas/
http://www.cs.tsukuba.ac.jp/~yas/

■連絡事項

■補足

レポートは、複数回提出してもよい。内容を修正した時には、もう一度提出す る。TAは、一番最後に提出されたものを採点する。

■電子メール

電子メール は、電話や(普通の)手紙と同じように、個人と個人の間で情報を交換するた めの仕組み。

電子メールを読み書きするプログラムは、 メール・リーダ(mail reader) または、 メーラ(mailer) という。 「リーダ(reader)」といっても、書くこともできる。

種類

■電子メールで重要な考え方と操作

電子メールを使う上で重要な考え方

  1. 電子メールの形式、ヘッダ、本文
  2. 電子メール・アドレス
  3. メール・ボックス(フォルダ)
電子メールの基本的な操作
  1. メールを読む
  2. (新たに)メールを出す
  3. 受け取ったメールに返事を出す(reply)
  4. 受け取ったメールを削除する、整理する
  5. 環境を整える、カスタマイズする

◆電子メールの形式

1通の電子メールは、次のような形式を持っているテキスト(文字のデータの並び)。

From: Shiro Yagi <shiro@is.tsukuba.ac.jp>
To: kuro@cc.tsukuba.ac.jp
cc: shiro@is.tsukuba.ac.jp
Subject: Visit my WWW page
Date: Mon, 25 Jan 2016 23:42:25 +0900
Message-Id: <201601231442.k0NEgPTw003900@maple.is.tsukuba.ac.jp>

こんにちは。白やぎです。

WWWページを作ったので見てください。URL は、
	http://www.is.tsukuba.ac.jp/~shiro/
です。

♪♪ 白やぎ
♪♪ http://www.is.tsukuba.ac.jp/~shiro/

多くのメール・リーダでは、1通の電子メールのことを メッセージ(message) と呼んでいる。

電子メールのテキストは、大きくヘッダと本文に分かれる。

ヘッダ(header、頭)
電子メールの先頭から最初の空行まで
本文(body)
空行以降
重要なヘッダ From: には、差出人の、 To:Cc: には、受取人の電子メール・アドレスが置かれる。

電子メール・アドレス(e-mail address) とは、電子メールを届ける時に配送プログラムが使う記号。

現在よく使われている形式:

user@domain
@」より前の部分は、個人を特定するための情報。 「@」より後ろの部分は、 電子メールをどのコンピュータに届ければいいかを示している。 ドメイン形式のホスト名が使われる。

To:: とCc:: は、受取人の電子メール・アドレスが置かれる。どち らにアドレスを書いても同じように届けらるが、To: は、本来の宛先を 書き、Cc: にはついでに連絡したい宛先を書く習慣になっている。Cc は、 Carbon Copy に由来する。

Date: は、電子メールが出された日付と時刻。

Subject: は、題名(題目、表題、件名)。

「件名」という日本語は存在しなかった。

電子メールの本文は、普通のテキストだが、1行の長さがだいたい漢字で30 文字〜35文字、英語のアルファベットで60文字〜70文字になるように、 折り返されている(改行が入っている)。このようにしておくと、引用という 機能を利用する時に便利。

電子メールで 引用 とは、返事などを書いたときに何に対する返事か分かりやすいように他の人の 書いた電子メールの一部を自分の電子メールに含めること。

本文の末尾には、 署名シグニチャ(signature) ) が現われることが多い(付けなくてよい)。

署名とは、普通の手紙の末尾に署名をするのと同じように、末 尾に自分の名前や自分独自の記号を書く。署名は、簡潔で短いものが好まれて いる。1つの目安としては、「4行以内」。

電子メールのメッセージの型式は、RFC822 (その改訂版のRFC2822) で定めら れている。

◆2種類のメール・ボックス

電子メールは、「 メール・ボックス 」と呼ばれている ファイル(またはディレクトリ) に保存される。メール・ボックスは、プログラムによっては、 フォルダ(folder)トレイ(tray) と呼ばれることもある。 メール・ボックスには、次の2種類がある。

配送プログラム用メール・ボックス
電子メールを配送するプログラムが、イ ンターネットから受け取ったメールを個人ごとに分類して保存しておく場所。 「受信トレイ」や メールドロップ(mail drop)ということもある。 多くのシステムでは、 /var/spool/mail/user/var/mail/userという名前のファイル。 (coins では、 各自のホーム・ディレクトリの下の ~/Maildir/ の下。 )
ユーザ用メール・ボックス
メール・リーダが電子メールを保存しておく場所。

新しく届いたメールを読む時には、前者から後者へメールを移す必要がある場合がある。 この作業を、 「 (電子メールを)取り込む(incorporate) 」とう。

配送プログラム用メール・ボックスは、1つのサーバで1人で1つだけだが、 ユーザ用メール・ボックスは、必要に応じていくつか作ることができる。

◆SMTPによる電子メールの転送と発信

電子メールを転送する時には、SMTP (Simple Mail Transfer Protocol)という という通信の仕組み(TCP/IP 上に定義された通信プロトコル、詳しくは、後日) が使われる。

メール・リーダで電子メールを発信する時にも、SMTP という仕組みがよく使われる。

◆POPやIMAP4経由のメール・ボックスのアクセス

電子メールをため込んでいるコンピュータ(サーバ)にあるメールを、手元の コンピュータにコピーするには、 POP (Post Office Protocol)や、 IMAP(Internet Message Access Protocol) という通信の仕組み(TCP/IP 上に定義された通信プロトコル、詳しくは、後日)を使うことがある。

POP では、配送プログラム用メール・ボックスを読み書きする機能がある。 IMAP では、それに加えて、複数のユーザ用メール・ボックスを扱えるように なっている。

図? SMTPによる発信、転送、POP3、IMAP4によるメール・ボックスのアクセス (クリックで拡大)
SMTPによるメールの送信・転送、POP、IMAPによるメール・ボックスのアクセス

◆電子メールにおける通信路の暗号化、パスワードの保護

◆メール・リーダの操作

電子メールを出すには、基本的には、 電子メールの形式 で説明したようなテキストを作り、 電子メールを配送するプログラムに渡す。 本文は、自分の好みのテキスト・エディタ(テキストファイルを編集するプロ グラム)が使えることもある。

電子メールで仕事をしていると、単にメールを出すだけではなく、受け取った 電子メールに対して返事を出すことが多い。そのため、メール・リー ダでは、返事を出す作業を簡単に行うことができるようになっている。返事 を出すことを リプライ するともいう。返事を出す時には、To: が自動的に作られるだけで なく、Subject: も同じもの、あるいは、にRe: が付い たものが自動的に付けられる。

電子メールで返事を出す時には、相手のメールの内容を引用することがある。 この時、相手が書いた部分と自分が書いた部分を区別するために、相手 が書いた部分の行の先頭には、引用のための記号を付ける習慣がある。こ の記号には、「>」や 「>>」、 タブがよく使われる。

受け取ったメールを、別の人に送ることを、 転送(forward) という。 多くのメール・リーダでは、手作業で転送できるようになっている。

複数のメール・アドレスがある人は、あるアドレスに届いた「全て」のメールを、 別のメール・アドレスの所に自動的に転送できる場合がある。

メールの数が増えてきたら

多くのメール・リーダは、長いアドレスや複数のアドレスを短い 別名(alias) で参照できるようになっている。 別名には、個人で付けるものの他に、システム全体で付けるものがある。

◆よい Subject: を付けることの重要性

電子メールには必ず良い Subject: を付けること。 レポートの題名と同じく、電子メールでも良い Subject: を付けるように練習 すると良い。意識して練習すると上達するし、楽になる。

その他、授業の後半でやるファイル名、ディレクトリ名、プログラミングで必 要になる関数名、変数名についても同様。

◆電子メールで名乗りと挨拶

電子メールは、海外に出すこともあるので、From: は、英語にすることが多い。 日本語の名前をメールの先頭に書く習慣がある。
From: Shiro Yagi <shiro@is.tsukuba.ac.jp>
To: s1012345@coins.tsukuba.ac.jp
Subject: Re: [coins-computer-literacy-a] Assignment-3, e-mail reply (2016012345)
Date: Mon, 26 Apr 2016 16:15:25 +0900
Message-Id: <201604251615.k0NEgPTw003900@azalea20.coins.tsukuba.ac.jp>

コンピュータ・リテラシTAの○○さん

こんにちは。コンピュータ・リテラシの授業を受けている白やぎです。
4月26日に出された課題の電子メールを提出します。

> この行と次の行だけを引用してください。返信には、このメールを
> 書いた日付と時刻を入れてください。

2016年4月26日 17:10です。

よろしくお願いします。
				白やぎ

◆大学の授業に関連したメールは大学内の From: で

情報科学類の学生は、次のメールアドレスが使えるようになっている。

coins では新たにメールアドレスを作成する必要はない。 ログイン名とは別のメールアドレスを追加で持つことはできる。  メールアドレスの別名(aliases)設定について参照。

大学の授業に関連したメールは大学内の From: で出すこと。学外の From: で 届いたメールでは、差出人の確認ができないので、うかつに返事ができない。 (無関係の人に、成績や単位の話はできない。)

◆電子メールは単純なテキストで

電子メールは、(HTML等ではなく)単純なテキストで送ることを奨める。

■電子メールに関する知っておきたいこと

■ファイルとディレクトリの木構造とパス名

■木構造(tree structure)

木構造(tree structure)というのは、コンピュータ・サイエン ス(情報科学類で学ぶ学問)でよく使われる用語。 階層構造(hierarchical structure)ともいう。

木構造の例を、大学の組織を使って説明する(図?)。

木構造という名前は、本物の木が、一度枝分かれした後は決して交わらないこ とに似ていることによる。ある節から別の節までの道が2通り以上あるは、グ ラフ構造と呼ばれる。

筑波大学、社会・国際学群・・・情報学群、情報科学類・・・
図? 大学組織に見られる木構造

筑波大学、社会・国際学群・・・情報学群、情報科学類・・・(領域的な見方)
図? 大学組織に見られる木構造(領域的な見方)

◆字下げによる木の表現

木構造を字下げで表すことがある。

筑波大学

◆区切り文字入り表記

「情報科学類」という節を、次のように表記する。

筑波大学情報学群情報科学類

コンピュータの中で、文字列(文字の並び)で木構造上の位置を表現する時に は、節が分かりやすくために、はっきりと区切りを入れて表現することがよく 行われる。

筑波大学.情報学群.情報科学類
筑波大学/情報学群/情報科学類
情報科学類.情報学群.筑波大学

区切り文字としては、「.」(点)、「/」(スラッシュ)、「\」(バック スラッシュ)、「¥」(円記号)などがよく使われる。単語を並べる時に、木 の根に近いほうから書く流儀と遠い方から書く流儀がある。

◆木の例

コンピュータでは、次のような場所で木構造が使われている。

コンピュータ以外では、次のような場所で木構造が使われている。

◆くわしくは

総合科目「ネットワーク社会を支える情報技術入門 II」/木構造(2015年11月30日)

http://www.softlab.cs.tsukuba.ac.jp/~yas/gen/it-2015-11-30/

◆ディレクトリの木構造

Unix(MacOSX, Linux含む)やMS Windows では、 ファイルの名前を、基本的には 木構造(tree structure,きこうぞう) という考え方で整理する。 木構造は、 階層構造(hieratical structure) とも呼ばれる。

根が上にある本物の木
図? 本物の木

根、home、etc、user、kernel、yas、中間節、端説、リンクからなる構造
図? ファイルとディレクトリの木

◆ルート・ディレクトリ(the root directory)

本物の木に根にあたるディレクトリ。

ルート・ディレクトリの名前は、「/」 (スラッシュ 1 文字)。

◆パス名

Unix では、ファイルやディレクトリの名前を付ける時に、木構造で考えてそ のファイルやディレクトリにたどり着くための道順を使う。 このような名前をパス名(path name) という。 パス(path)とは「道」の意味。pass ではない。

ルートディレクトリから出発する方法で表記するパス名を、 絶対パス名(absolute path name)

絶対パス名は、ルートディレクトリを表す「/」の後に、 たどった枝の名前を並べ、間に区切りとして「/」をはさむ。

例:「/usr/bin/wc

  1. ルート・ディレクトリから出発する
  2. usr」という枝に進む
  3. bin」という枝に進む
  4. wc」という枝に進む

◆カレントワーキングディレクトリ

ルート・ディレクトリを起点にする方法(絶対パス名)だけでは、作業しにくい。 「現在作業中のディレクトリ」 「カレント・ワーキング・ディレクトリ(the current working directory)」 を起点として、ファイル名を扱う。

カレント・ワーキング・ディレクトリを表示するには、pwd (print working directory) コマンドを使う。

$ pwd [←]
/USA/California
$ []
表示されている「/USA/California」が絶対パス名で表示されたカレント・ワー キング・ディレクトリの名前。

カレント・ワーキング・ディレクトリを変更するには cd (change directory) コマ ンドを使う。

$ cd dirname [←]
「ディレクトリ dirname に行く」とも言う。

$ pwd [←]
/USA/California
$ cd /USA/Florida [←]
$ pwd [←]
/USA/Florida
$ cd /USA/California/San-Francisco [←]
$ pwd [←]
/USA/California/San-Francisco
$ []

カレントワーキングディレクトリは、名前「.」で参照できる。

lsコマンドは引数にディレクトリを指定すると、そのディレクトリの中にある ファイルの一覧を表示するが、引数を与えないと、「.」が与えられたものとし て働く。

$ ls [←]
Los-Angeles  San-Francisco
$ pwd [←]
/USA/California
$ ls /USA/California [←]
Los-Angeles  San-Francisco
$ ls . [←]
Los-Angeles  San-Francisco
$ []

カレントワーキングディレクトリを起点としたパス名を 相対パス名(relative path name)という。 「/USA/California」の時、 「San-Francisco」は「/USA/California/San-Francisco」、 「San-Francisco/China-Town」は「/USA/California/San-Francisco/China-Town」を意味する。

◆ディレクトリの親子関係

親ディレクトリ(parent directory)
あるディレクトリの ルート・ディレクトリからそのディレクトリへの道順で1つだけ 根に近いディレクトリ。 1個上のディレクトリともいう。 「..」で参照可能。
子ディレクトリ(child directory), サブディレクトリ(subdirectory)
あるディレクトリの、1つ根から遠いディレクトリ
隣のディレクトリ、兄弟のディレクトリ
共通の親ディレクトリを持つディレクトリ。 「../ディレクトリ名」で参照可能。

◆ホーム・ディレクトリ(home directory)

個人所有のファイルを保存する時に起点となるディレクトリ。

cd コマンドに引数を与えないと、ホーム・ディレクトリにもどる。

多くのシェル(csh,tcsh,bash,zsh) やEmacsなどでは、 ホームディレクトリを「~」で指定できる (指定できないプログラムもある。)

」は、英語の端末(ASCII,後述)の形。 日本語(JIS,後述) では、「」となることがある。

他人のホーム・ディレクトリは、「~ユーザ名」で指定できるプログラムがある。 (指定できないもプログラムもある。)

~xxx」と「~/xxx」のように 「~」直後に「/」の有無で意味が違う。

/ がある (例: ~/xxx)
自分のホーム・ディレクトリ以下のファイル(またはディレクトリ)。 xxx はファイル名、または、ディレクトリ名として解釈される。
/ がなく、アルファベットで始まる(例: ~xxx)
他のユーザのホーム・ディレクトリ。 xxx はユーザ名として解釈される。
/ がなく、数字で始まる(例: ~1、~2、~3、・・・)
bash では、ディレクトリスタックの上から num 番目を参照。 The Unix Super Text 上巻 11.10 ディレクトリスタック 参照

■ファイルとディレクトリを扱うコマンド(2)

ファイルとディレクトリ(4月19日) の復習。

■ファイルの基本的な操作

次のコマンドを使えるようにする。

◆lsの-aオプションによる「.」から始まるファイルの表示

ls コマンドは、標準では、カレント・ワーキング・ディレクトリを意 味する「.」や親ディレクトリを意味する「..」を含めて、 「.」から始まるファイル名を表示しない。-a オプションを付 けると、「.」から始まるファイル名も表示する。ホーム・ディレクト リには、「.」で始まるファイルがいくつか存在する。
$ ls [←]
Desktop         Library         Music           Public          WinFiles
Documents       Movies          Pictures        Sites           public_html
$ ls -a [←]
.                       .cshrc~                 Movies
..                      .emacs                  Music
.CFUserTextEncoding     .emacs.d                Pictures
.DS_Store               .login                  Public
.Spotlight-V100         .profile                Sites
.Xauthority             .ssh                    WinFiles
.backupfiles2006        Desktop                 public_html
.bashrc                 Documents
.cshrc                  Library
$ []

◆lsの-dオプションによるディレクトリそのものの表示

ls コマンドは、引数にディレクトリ名が与えられると、ディレクトリ の内容を表示する。
$ ls -l ~/Maildir [←]
total 113
drwx------  2 yas  prof  35840  4 18 11:00 cur
drwx------  2 yas  prof  17408  4 18 10:57 new
drwx------  2 yas  prof   1024  4 18 11:37 tmp
$ []
ディレクトリそのものを表示したい時(特に「-l」と組み合わせて日付 等の属性を表示したい時)は、「-d」オプションを付ける。
$ ls -ld ~/Maildir [←]
drwx------  20 yas  prof  2048  4 18 10:57 /home/prof/yas/Maildir
$ []

◆cp file dir

cp コマンドには、コピー先にディレクトリを指定することができる。
$ cp file1 file2 dir [←]
この場合、dir 以下に、(一番葉の部分だけ)同じ名前のファイルが作られる。 次の操作と概ね同じ動作をする。
$ cp file1 dir/file1  [←]
$ cp file2 dir/file2 [←]

ディレクトリを指定する時には、カレント・ワーキング・ディレクトリ 「.」 や ホーム・ディレクトリ「〜」も使える。

$ cp /etc/group . [←]
$ cp /etc/group ~ [←]
$ cp ~yas/public_html/htdocs/coins/literacy-2016/2016-04-26/literacy-a100.txt . [←]

◆ファイルを消す

意義

ファイルを消すには、rm (remove) コマンドを用いる。

$ rm file1 [←]
このファイル file1 が削除される。

rm コマンドで消してしまったファイルは、普通2度と戻らない。 消す前に、本当に不要かどうかを確認すること。

◆rm -i

rm コマンドには、-i オプションがあり、ファイルを消すかどうかを対話的 (interactive)に y/n で聞いてくる。消してもよい時には、y と答える。

コマンド名の置換え(alias)等て、rm を rm -i に変えることは、一般的には勧 められない。「rm -i [←] y」という操作が、一連の操作として身に付い てしまうので。

◆ファイルの名前を変更

ファイル名を変更するには mv (move) コマンドを使う。

$ mv oldname newname [←]
この結果、ファイルoldfileのファイル名をnewnameに変更される。

ここで、newname のファイルが存在した場合、元の newname は消されてしまう。

◆ディレクトリの作成

mkdir (make directoryr)コマンドを使う。
$ mkdir dirname [←]
この結果、dirnameという名前のディレクトリが作らる。

◆ディレクトリ名の変更

mvコマンドは、ディレクトリの名前を変更するために使える。

$ mkdir dir1 [←]
$ ls  [←]
dir1
$ mv dir1 dir2 [←]
$ ls  [←]
dir2
$ []

◆ファイルのディレクトリへの移動

ファイル名を変更する mv (move) コマンドは、 同じディレクトリだけでなく、他のディレクトリに対しても使える。
$ mkdir ~/dir1 [←]
$ mv oldname ~/dir1/newname [←]
この結果、カレント・ワーキング・ディレクトリにある ファイルoldfileのファイル名は、 ~/dir1/newnameに変更される。

次のように、ディレクトリだけを指定することもできる。

$ mv name ~/dir1/ [←]
この場合、次のものと同じになる。
$ mv name ~/dir1/name [←]
また、変更先にディレクトリを指定する mv では、ファイル名は1個でなくて も複数でもよい。
$ mv file1 file2 file3 ~/dir1 [←]

◆ディレクトリの削除

ディレクトリを削除するには、 rmdir (remove directory) コマンドを使う。
$ rmdir dirname [←]
この結果、 ディレクトリdirnameが削除される。

空でないディレクトリは、rmdir コマンドでは 「Directory not empty」 というエラー・メッセージが表示され削除できない。 この場合は、子供のディレクトリやファイル を削除してからもう一度削除する。

◆ファイルの操作にともなうエラー

No such file or directory
そういう名前のファイルが見つからなかった。ファイル名が間違っていな いか確かめる。
Permission denied
ファイル名は合っていますが、アクセス権がない。 モードを ls -l で調べる。
No space left on device
ディスクに空領域がない。 まず、不要なファイルを消す。
Disc quota exceeded
ディスクに空領域があるが、 個人に割り当てられた領域を使い果たした。 まず、不要なファイルを消す。

■Emacs

手引き 3章 参照The Unix Super Text 15.1 12章 参照

◆カット&ペースト、コピー&ペースト

The Unix Super Text 12.4.3項 参照, The Unix Super Text 12.4.5項 参照 手引き 3.3.5項 参照

マーク
C-SPC (Control + Space キー)または C-@ で設定する。 うまくいくと、ミニバッファに Mark set と表示される。 カーソルを動かしても移動しない。 次に新しいマークをセットするまで有効。
ポイント(カーソルのある位置)
カーソルを動かすと移動する。
リージョン(領域)
マークした場所とカーソルの間
リージョンに対する操作には、さまざまなものがある。 カットしたもの、または、コピーしたものをペーストするには、C-y を 使う。

テキストの移動(カット&ペースト)の方法

  1. C-SPC、または、C-@ でマーク
  2. カーソル移動
  3. C-wでカット
  4. カーソル移動
  5. C-yでペースト
コピー&ペーストの方法
  1. C-SPC、または、C-@ でマーク
  2. カーソル移動
  3. M-w、または、Esc wでコピー
  4. カーソル移動
  5. C-yでペースト

◆大量の削除

カット&ペーストのカットだけをやる。
  1. C-SPC、または、C-@ でマーク
  2. カーソル移動
  3. C-wでカット

◆Emacs、保存しないで終了

Emacs は、きちんと C-x C-s で保存(save)して、C-x C-c で終了することが望 ましい。

Emacs で何か編集して、保存しないで C-x C-c で終了しようとすると、次のように聞かれる。

Save file ファイル名? (y, n, !, ., q, C-r, d or C-h) []
ここで y と 1 文字打つ(リターン・キー不要)と、保存して終了してくれる。 保存したくない時には、 n と1 文字打つ。 この時は、Emacs は次のように問い合わせてくる。
Modified buffers exist; exit anyway? (yes or no) []
保存しないで終了したい時は、次のように「yes[←]」と打つ。
Modified buffers exist; exit anyway? (yes or no) yes[←]

◆複数のプログラムで書き換え

1 つのファイルを、同時に複数のプログラムで書き換えると問題が生じる。 (iTerm の端末を複数開いて、複数の端末で emacs literacy-a2.txt と実行し、ファイル literacy-a2.txt を書き換えると問題が生じる。) 1つのファイルは、同時には 1つのプログラムで修正する。

Emacs には、1 つのファイルを複数の Emacs で編集しないようにするために、ロックの機能がある。 複数の Emacs で編集しようとしていることを検出すると、Emacs は次のような警告を発する。

ファイル名 locked by ユーザ名@コンピュータ名 (pid 番号): (s, q, p, ?)?[]
普通は、qと答えて、編集しない。 s では、ロックを (steal) して編集、 p では、ロックはそのままで編集できるが、良い方法ではない。

1つのファイルを編集するのは、1つのプログラムだけにする、 Emacs を実行するのは、1 つの iTerm だけにすると、このような難しい問題は生じない。

◆Emacsを終了してからiTermを終了すること

Emacs が動いている端末(iTerm)のウィンドウを左上の「赤」ボタンで閉じては いけない。そうすると、次のようなトラブルが生じることがある。

実行と逆順に終了するのが良い。iTerm、シェル、emacs の順に実行した ら、emacs、シェル、iTerm の順に終了する。

■実習

実習時間中には、以下の課題をできるだけ多く行いなさい。全部を行う必要はない。

★練習問題(301) Emacsの復習

Emacs で、ファイルを作成する方法を復習しなさい。

★練習問題(302) Thunderbirdの設定(1)

Thunderbird の icon

次の資料を参考にして, Thunderbird で電子メールを 読み書きできるように設定しなさい。

(本日の課題の回答に必要になる。)

★練習問題(303) Thunderbirdによるメールの受信

「Thunderbirdの設定(1)」が終わった、「受信トレイ」の内容を表示しなさい。 次のようなメールが届いていることを確認しなさい。 Thunderbirdを一度終了しなさい。再び実行して、「受信トレイ」を表示しなさい。

(本日の課題の回答に必要になる。)

★練習問題(304) Thunderbirdの設定(2)

電子メールは、(HTMLではなく)テキストで送信すべきである。受信する人は、 HTMLや画像を表示できないかもしれない。以下の資料を参考にして、HTML では なくて、テキストで送信できるようにしなさい。

(本日の課題の回答に必要になる。)

★練習問題(305) Thunderbirdで新たにメールを出す

Thunderbirdで新たに電子メールを出す練習をしなさい。

★練習問題(306) 電子メールのテキストの観察

電子メールの形式を確認しなさい。
  1. Thunderbird で受信したメッセージを選択して内容を表示する。
  2. 一番上のメニューバーの「表示」メニューをクリックし、 表示されるメニューから「メッセージのソース」を選ぶ。 あるいは、「差出人」の上か右側にある「その他」ボタンを押し、 表示されるメニューから「ソースを表示」を選ぶ。
    Thunderbird、メッセージのソースの表示
  3. 新たなウィンドウが表示される。その中にある From:, Date:, Subject: を観察する。
このウィンドウで、「コピー&ペースト」で必要な「コピー」の操作が行える。 ここでコピーしたものは、iTerm で動作している Emacs の画面等にペーストで きる。

2016/04/27 追加

ソースを表示した時に、日本語の部分がうまく表示されないことがある。

図? Thunderbirdによるメッセージのソースの表示(乱れた表示、文字化け) (クリックで拡大)
Thunderbirdによるメッセージのソースの表示(乱れた表示)

この時は、次のような操作をするとうまく表示できることがある。

Thunderbird、メッセージのソースの設定(エンコーディング)の変更 (クリックで拡大)
Thunderbird、メッセージのソースの設定(エンコーディング)の変更

うまく設定すると、正しく日本語が表示される。

図? Thunderbirdによるメッセージのソースの表示(正しい表示) (クリックで拡大)
Thunderbirdによるメッセージのソースの表示(正しい表示)

(本日の課題の回答に必要になる。)

★練習問題(307) Thunderbirdでメールに対して返信を行う(返事を出す、リプライする)

自分自身で送信したメールや隣の人のメールに対して、 Thunderbird の返信機能を使って返事を出しなさい。

(本日の課題の回答に必要になる。)

★練習問題(308) Spotlight のショートカット・キーの解除

Emacs でカット&ペーストやコピー&ペースト をする時には、C-SPC のキーをよく利用する。 しかし、Mac OS X ではこのキーは、Spotlight と呼ばれる検索機能で利用している。 Emacs で C-SPC キーを使うために、Spotlight のキー操作を無効化しなさい。

無効化の方法は、練習問題 Spotlight のショートカット・キーの解除 を参考にしなさい。

★練習問題(309) Emacs、カット&ペースト、コピー&ペーストのキー操作

次の表に含まれているキーを覚えて使えるようにしなさい。
C-SPC または C-@ 領域(region)の先頭を決める(マーク)
C-w リージョン(領域)をカット
ESC w リージョン(領域)をコピー
C-y リージョン(領域)をペースト

★練習問題(310) Emacs、ファイルから大量の不要な行の削除

Emacs のカット機能を使って、ファイルから大量の不要な行を削除する練習を 行いなさい。
  1. 練習用のファイルを作成する。次の例では、前回のレポートのファイルを コピーして作成している。他のファイルでも良い。
    $ cp literacy-a2.txt literacy-emacs-cut.txt [←]
    
  2. emacs を実行する。
    $ emacs literacy-emacs-cut.txt [←]
    
  3. 消したい場所(たとえば、問題の詳しい説明)の先頭にカーソルを移動さ せる。 C-f, C-b, C-n, C-p キーを使う。
  4. C-SPC 、または、C-@ キーを打ち、マークを設定する。
  5. 消したい場所末尾にカーソルを移動させる。
  6. C-w キーでカットする。
  7. 3. から 6. を繰り返す。
  8. 最後に、Emacs を C-x C-s C-x C-c で終了する。
マークを付ける場所は、消したい場所の先頭ではなく末尾でも良い。その場合 は、カーソルを消したい場所の先頭に移動させる。そのことを確認しなさい。

★練習問題(311) coins SquirrelMail

SquirrelMail でメールを読み書きしてみなさい。 Thunderbird と同じメールが表示されることを確認しなさい。SquirrelMail の フォルダとThunderbird のフォルダとの対応関係を調べなさい。

★練習問題(312) coins SquirrelMailの設定

次の手順で、発信するメールの From: に名前(人間用の文字列)を入れなさい。 学籍番号のアドレスでは、受け取った人が分かりにくい。メールは、全世界に 送ることもあるので、英語で記述するとよい。ただし、英語の文字としては、 ことえりを使わない(仮名漢字変換を使わない)で直接キーボードから打ち込む。

  1. https://www.coins.tsukuba.ac.jp/webmail/ にログインする。
  2. 一番の横に並んでいるメニューの並びから「オプション」の項目を選ぶ。
  3. 「個人情報」を選ぶ。
  4. 「フルネーム」の所に、自分の名前(英語、ことえりを使わない)を入れる。
  5. 最後に「登録」ボタンを押す。

★練習問題(313) lsによるホーム・ディレクトリの観察

ls コマンドで、自分のホーム・ディレクトリにどのようなファイルやディレク トリがあるかを調べなさい。また、-l オプション、-a オプション、-d オプショ ンの働きを確認しなさい。
$ cd ~ [←]
$ ls [←]
$ ls -a [←]
$ ls -l [←]
$ ls -la [←]
$ ls -d [←]
$ ls -dl [←]
$ ls -adl [←]

★練習問題(314) cd、pwd、lsによるディレクトリの観察

次のディレクトリの内容を cd コマンド、pwdコマンド、および、ls コマンド を使って観察しなさい。
$ cd ディレクトリ名 [←]
$ pwd [←]
$ ls [←]
$ ls -l [←]

★練習問題(315) cdコマンドによるホームディレクトリへの移動

次の方法で、ホームディレクトリへ移動してみなさい。

(1) 引数無しで cd コマンドを実行

$ cd / [←]
$ pwd [←]
$ ls [←]
$ cd [←]
$ pwd [←]
$ ls [←]
(2) cd コマンドに、「~」を与える。
$ cd / [←]
$ pwd [←]
$ ls [←]
$ cd ~ [←]
$ pwd [←]
$ ls [←]
(3) cd コマンドに、「~ログイン名」を与える。
$ cd / [←]
$ pwd [←]
$ ls [←]
$ cd ~ログイン名 [←]
$ pwd [←]
$ ls [←]

★練習問題(316) cdコマンドによるホームディレクトリ以下のディレクトリへの移動

ホーム・ディレクトリの下に、どのようなディレクトリがあるかを ls -l で調 べなさい。
$ ls -l [←]
ディレクトリの場合、左端が「d」になっている。 ( ファイルの属性 参照 ) cd コマンドを使って、カレント・ワーキング・ディレクトリを ホーム・ディレクトリの下のディレクトリに変更しなさ い。以下は、Music に変更した例である。
$ cd [←]
$ pwd [←]
$ ls [←]
$ cd Music [←]
$ pwd [←]
$ ls [←]
Music も含めて次のようなディレクトリについても、類似の操作を行い なさい。

★練習問題(318) ファイルの操作

次の表にあるファイルの操作を行ってみなさい。

ls	f1 f2 f3	ファイルの名前の一覧の表示
ls	dir		ディレクトリの内容の表示
ls			カレント・ワーキング・ディレクトリの内容の表示
ls -d	d1 d2 d3	ディレクトリの名前の一覧の表示
ls -a	dir		ディレクトリの内容の表示(.で始まる名前も表示)
ls -l	f1 f2 f3	ファイルの属性の表示
ls -ld	d1    		ls -l -d の組み合わせ
pwd			カレント・ワーキング・ディレクトリの表示
cd	dir		カレント・ワーキング・ディレクトリの変更
cd			ホーム・ディレクトリへ移動
cat	f1		ファイルの内容の表示
head	f1		ファイルの内容の表示(最初の10行)
cp	f1 f2		ファイルのコピー
cp	f1 f2 f3 dir	ファイルを指定されたディレクトリへコピー
cp	f1 f2 f3 .	ファイルをカレント・ワーキング・ディレクトリへコピー
rm	f1 f2 f3	ファイルの削除
mv	old new		ファイルの名前を変える
mv	f1 f2 f3 dir	ファイルの名前を変える(dir以下への移動)
mkdir	dir		ディレクトリの作成
mkdir -p d1/d2/d3	ディレクトリの作成(親も自動的に作成)
rmdir	dir		ディレクトリの削除(空のディレクトリの時)

f1, f2, f3 はファイル名、dir, d1, d2, ... は、ディレクトリ名

★練習問題(319) Finderによるホーム・ディレクトリの観察

Finder でホーム・ディレクトリを開きなさい。そして、ls の結果と比較しな さい。
  1. Dock で Finder をクリック
    Finderのアイコン
  2. 一番上のメニューバーにある「移動」メニューから「ホーム」を選ぶ。

★練習問題(320) Thunderbirdの特殊なフォルダ

Thunderbird次のような特殊なフォルダがある。これを確認しなさい。
IMAPサーバ上の名前 Thunderbirdの表示
Sent 送信済みトレイ
Drafts 下書き
Trash ゴミ箱
確認する方法
  1. フォルダにマウスのカーソルを移動する。
  2. コンテキストメニューを表示する。 マウスの右ボタンを押す、または、 コントロール・キーを押しながらマウスの左ボタンを押す。
  3. 表示されたメニューで「情報を見る」を選ぶ。 するとウィンドウが表示される。
  4. 「場所:」の所にある表示に、上の「IMAPサーバ上の名前」が含まれてい ることを確認する。(「imap://ログイン名@ホスト名/フォルダ名」のようになっ ている。)
  5. 「キャンセル」ボタンを押し、ウィンドウを閉じる。

★練習問題(321) Thunderbirdでその他の操作

Thunderbirdでメールを読む、新たに (新たに)メールを出す、 以外の次のような操作をしなさい。

★練習問題(322) Emacs Mew

Emacs で動くメール・リーダ Mew を使ってメールを読み書きしなさい。 手引き 3.5節 参照

Thunderbird と同じメールが表示されることを確認しなさい。Mew の % から始 まるフォルダと Thunderbird のフォルダとの対応関係を調べなさい。

★練習問題(323) MacOSX Mail.appでcoins IMAPのメールを読む

MacOSX 付属の Mail.app を使って coins の IMAP サーバにある自分のメール を読み書きしてみなさい。 実行したら、以下を目標に、設定する。 アカウントの設定ができたら、メールの送信とメールの受信をしなさい。

★練習問題(324) 筑波大学全学計算機システムのWebメール(Active!mail)の利用

手引き 目次の前のIXページ 参照

P> 全学計算機システムに届いているメールを、Web メールの機能を使って読みなさい。 ここで、次のようなことを行いなさい。 メールを出す時には、From: に英語(ローマ字, ASCII)の名前を含めるように設定する とよい。この機能を利用するためには、「プロフィール」の機能を使う。 作成したプロフィールは、メールを作成する時に、「プロフィール名」で選択 できる。

★練習問題(325) スマートフォン

iOS, Android, その他のオペレーティング・システムが動作しているスマート フォンを持っている人は、それを使って coins のメールを読み書きできるよう に設定してみなさい。

★練習問題(326) IMAP、メールボックスの共有

複数のメール・リーダ(Thunderbird, Apple Mail.app, SquirrelMail, MacOSX Mail.app, Mew/Emacs, その他 ) で coins の IMAP サーバにある自分のメールが読めるように設定しなさい。そ して、複数のメール・リーダで同一のメールボックスが表示されることを確認 しなさい。

★練習問題(327) UCB Mail

The Unix Super Text 15.2節 参照。 UCB Mail (mail コマンド) を使ってメールを送信しなさい。

なお、coins の環境では、UCB Mail コマンドでメールを受信(受け取ったメー ルの表示)をすることはできない。

★練習問題(328) Bcc:

Bcc: を使ってメールを送受信しなさ い。Cc: との類似点と相違点を考えなさい。Bcc 使い方、Cc と Bcc の使い分 ける方法を考えなさい。

★練習問題(329) Maildir

coins では各自が受信したメールを、各自のホームディレクト以下の ~/Maildir/ の下に保存する。その様子を観察しなさい。
$ ls ~/Maildir/ [←]
$ ls -a ~/Maildir/ [←]
$ ls ~/Maildir/cur [←]
$ ls ~/Maildir/new [←]
$ ls ~/Maildir/tmp [←]
$ cat ~/Maildir/cur/ファイル名 [←]
このようなディレクトリの形式を Maildir 形式や Maildir++ 形式という。

注意: ~/Maildir/ 以下には、IMAP サーバが利用する重要なファイルも ある。削除したり壊さないように、慎重に操作すること。

★練習問題(330) treeコマンド

tree コマンドを利用して、ファイルを木構造が分かりやすいように表示しなさい。

tree コマンドに -N オプションをつけると、ファイル名に漢字を含むものも表 示できる。

$ tree -N ディレクトリ名 [←]
注意: 表示が止まらなくなった時、強制終了したい時には、 Control キー + c キー も使える。

lv による表示。後ろに「| lv」をつける。 終了するには、q キーを打つ。

$ tree -N ディレクトリ名 | lv [←]
<表示省略>
<空白キーで次のページを表示>
:q
$ []

iTerm にペーストする時に「?」が表示されるならば、次のように すれば (UTF-8ではなく) ASCII 文字を使うようになる。

$ LANG=C tree -N ディレクトリ名 [←]

tree コマンドの次のオプションの意味を ls と比較しなさい。

詳しくは、man tree を見なさい。

■課題3 電子メール、ファイルとディレクトリの木構造、パス名、Emacsカット&ペースト、コピー&ペースト

次のファイルを自分のホーム・ディレクトリ等にコピーしなさい。 そして、そのファイルの指示に従い、内容を埋めなさい。エディタとしては、 今日の課題では、必ず Emacs を使いなさい。
$ ls [←]
(literacy-a3.txtが存在することを確認する)
$ emacs literacy-a3.txt [←]

作成したファイルを、 レポート提出ページから提出しなさい。


Last updated: 2016/05/06 12:28:54
Yasushi Shinjo / <yas@cs.tsukuba.ac.jp>