RETURN

■なんとかなるさLinuxZau



■リナザウチップス 〜タコのためのターミナル操作編

■ 必要に迫られれば、人はなんでもできるものです。パソコンが使えないおじさんでも、パソコンで請求しなければ経費がもらえないとなれば、こと経費請求に関しては熟練してしまいます(例:F原係長)。

■Terminal■ ターミナルを使いたくてLinuxZauを買ったんじゃない! って人は、ターミナルを無視してLinuxZauライフを楽しまれればいいと思います。
 そもそも、Linuxなんて単なる道具なんですから、道具の使い方で苦労するなんてナンセンス。ターミナルが解らないからといって恥じることはありません。
 といっても、どうしてもターミナルを触らざるを得ないのが現状です。必要に迫られれば何でもできる。そう信じて、ターミナルにチャレンジしてみましょう。

 正確に言えば、ターミナルの操作じゃなくて、シェルの操作ですけどね。


【 目 次 】

第1歩:ディレクトリを移動する
使うコマンド―― pwd ls cd exit
豆知識&Tips―― ディレクトリとパスTabによる入力補完↑による履歴呼出し
第2歩:ファイルを移動/コピーする&ファイル名を変更する
使うコマンド―― cd mv cp
第3歩:スーパーユーザーに変身する
使うコマンド―― su
Tips――スーパーユーザーとしてアプリを起動する(ルート権限で実行)
第4歩:FTPでHTMLファイル等を転送する
使うコマンド―― cd ftp mput bye mv ascii
第5歩:エイリアスに長いコマンドを登録しよう
使うコマンド―― alias
Tips――.bashrcへのコマンド登録

2003/2/2




 第1歩:ディレクトリを移動する

 まずは、LinuxZauのHOMEからターミナルを起動して下さい。すると、

bash-2.05$ ■

 という表示されます。プロンプトとかいうそうです。ターミナル設定フォント黒字に緑文字にすると雰囲気が出て、プロっぽいです(^^;。

 ここにコマンドやらを打ち込みます。

 試しに”pwd”と打ち込んでみましょう。”pwd”のあとの[Enter]を忘れずに。

bash-2.05$ pwd
/home/zaurus     
←カレントディレクトリ(今いる場所)
bash-2.05$ ■

※緑色の文字はターミナルが吐き出すメッセージ。水色が打ち込んだ文字です。白文字は解説ですので実際には表示されません。以下、同じルールです。

 ターミナルでは、コマンドパスディレクトリファイル名等々を半角英数で入力していきます。Windowsの世界では大文字小文字に区別はありませんでしたが、Linuxの世界では大文字小文字では別の文字となりますので、注意しましょう。

ターミナルを使うための豆知識 その1 「パスとディレクトリ」

 ここで専門用語の説明。ボクの理解で、解りやすくするためにかなり大胆に解釈しています。正確な意味を知りたい方は、それなりのパソコン用語辞書などで調べてください。

パス
 メモリ上の住所みたいなもの。
フルパス
 国名からマンション名、部屋番号まで全て書くようなものだと考えていただけるといいかなと。
ディレクトリ
 メモリ上の住所区分。国名、県名、市町村名だと考えれば大体あっています。
カレントディレクトリ
 メモリ上で今、貴方が立っている場所。
 上の例”/home/zaurus/”では、貴方は今、ザウルス本体メモリの”home県zaurus市”にいるというわけです。

 では、/home/zaurus/ に何があるのか見てみましょう。”ls”と打ち込みましょう。”ls”のあとは[Enter]ね。
 すると、/home/zaurus/ 以下にあるディレクトリとファイルのリストを表示してくれます。

bash-2.05$ ls
Applications bunkoViewer yobo.txt
Documents bunkoViwerH
Settings opt
bash-2.05$ ■

 人によって中身表示色が多少違うかと思います。この例では、青文字がディレクトリで緑文字がファイル名ですね。

 では、”Documents”ディレクトリに移動してみましょう。ディレクトリを移動するコマンドは”cd”。チェンジディレクトリと覚えればいいでしょう。"cd"のあとに半角スペースを入れて移動したいディレクトリを入力します。

 でも、面倒ですね。ここで便利なTips。

手抜き その1 ”Tabによる入力補完”
 ”cd”+半角スペースのあと、”D”(大文字のD)まで入れて、[Tab]キーを押してください。

bash-2.05$ cd D■   ここで[Tab]

 すると、”ocuments/”が勝手に入力されます。

bash-2.05$ cd Documents/■

 頭の1文字を入れると、補完してくれるんですね。ここで[Enter]

bash-2.05$ cd Documents/
bash-2.05$ ■

 ちゃんと移動できたか調べてみましょう。今いる場所を見るには”pwd”ですね。

bash-2.05$ cd Documents/
bash-2.05$ pwd
/home/zaurus/Documents
bash-2.05$ ■

 さらに下のディレクトリに移動しましょう。

bash-2.05$ cd I

 ”cd I”のあとに[Tab]を押します。あれ? 反応しませんね。続けてもう一度[Tab]を押してください。

bash-2.05$ cd I   ここで[Tab]を2回
Image_Files Install_Files
bash-2.05$ cd I

 ”I”(大文字のI)がつくディレクトリが2個あったんですね。このように、候補が2つ以上ある場合は、2回[Tab]を押すことで候補を表示してくれます。何も入れずに、”cd”のあとに即[Tab]を2回押すと全ての候補を表示してくれます。不精者には便利ですね。
 では、”cd Im”と2文字目の”m”を入れて[Tab]を押してください。

bash-2.05$ cd I   ここで[Tab]を2回
Image_Files Install_Files
bash-2.05$ cd Image_Files/■   
←"m"を入れて[Tab]

 2文字目を考慮して補完してくれました。

 とまあ、この調子でディレクトリやファイル名を入力していきます。記憶が曖昧でも間違いなく入力できますので、便利です。


 ついでにもう一つ、Tips。

手抜き その2 ”↑による履歴呼出し”

 入力待ちの状態で、カーソルキー[↑]を押してみてください。

bash-2.05$ ■   ここで[↑]
bash-2.05$ cd Image_Files/■

 前回、叩いたコマンドが表示されます。さらに[↑]を押していくとさらにさかのぼってくれます。[↓]で元に戻ります。過去の履歴を利用すれば、長いコマンドも、忘れたコマンドも楽に入力できますね。


では、元のディレクトリ”/home/zaurus/”に戻ってみましょう。

 上のTipsではひとつずつディレクトリを下りていきました。今度はひとつずつ上がります。

bash-2.05$ cd ../
bash-2.05$ ■

 ”cd ../”(”cd”+半角スペース+ドット2つ”..”とスラッシュ”/”)でひとつずつ上に上がれます。”cd ../../”で二つ上がれたりします。

 面倒でしたら、フルパスを指定することで一気に戻ることも出来ます。

bash-2.05$ cd /home/zaurus/
bash-2.05$ ■

 ポイントは”cd ”のあとの”/”です。パスのトップに来る”/”はルートディレクトリという意味(?)でして、住所でいえば地球、ってところでしょうか。一番上から初めてディレクトリを移動しますよ、ってことです。この方法が一番解りやすくて手っ取り早い――というかファイルのコピーとるときなどでは必須ともいえます。

 そうそう、ターミナルを終了するには、

bash-2.05$ exit■

 です。

第1歩で使ったコマンド
pwd
カレントディレクトリを調べる。
ls
カレントディレクトリの中身をリスト表示する。
cd  abc
abcディレクトリに移動する=カレントディレクトリをabcに移す。
exit
ターミナルを終了する。

 詳しいことは、きっちりしたLinuxのコマンド解説を読んでくださいm(__)m。

日経Linux[Linuxコマンド集]

2003/2/1




 第2歩:ファイルを移動/コピーする&ファイル名を変更する

  ファイルの移動にはmvコマンドを使用します。

■ ファイルを移動する

 下記の例では、 /mnt/card/Documents/Text_Files/ ディレクトリ(SDカードのDocuments/Text_Files/)にある test.txt ファイルを /home/zaurus/Documents/Text_Files/ ディレクトリ(本体メモリのDocuments/Text_Files/)に移動しています。

■ /mnt/card/Documents/Text_Files/ □test.txt
  ↓
■ /home/zaurus/Documents/Text_Files/ □test.txt

bash-2.05$ mv /mnt/card/Documents/Text_Files/test.txt /home/zaurus/Documents/Text_Files/
bash-2.05$

■ ファイル名を変更して移動する

 移動先の指定の際、ファイル名を指定すると、ファイル名を変更して移動してくれます。

■ /mnt/card/Documents/Text_Files/ □test.txt
  ↓
■ /home/zaurus/Documents/Text_Files/ □test2.txt

bash-2.05$ mv /mnt/card/Documents/Text_Files/test.txt /home/zaurus/Documents/Text_Files/test2.txt
bash-2.05$

■ ファイル名を変更する

 カンのいい方はもうお分りですね。移動元ディレクトリと移動先ディレクトリが同じであれば、ファイル名の変更をすることができます。

■ /mnt/card/Documents/Text_Files/ □test.txt
  ↓
□test2.txt

bash-2.05$ mv /mnt/card/Documents/Text_Files/test.txt /mnt/card/Documents/Text_Files/test2.txt
bash-2.05$

 ファイル名を変更したいファイルがカレントディレクトリにあれば、長々とディレクトリ名を書く必要はありません。

bash-2.05$ cd /mnt/card/Documents/Text_Files/
bash-2.05$ mv test.txt test2.txt
bash-2.05$

■ ファイルをコピーする

 で、mvの代わりにコピーコマンドcpを使えば、元のファイルを消去せずに移動、ファイル名が変更され、コピーという形になります。上記例のmvをcpに置換えるだけですので、詳しくは省略。

■ /mnt/card/Documents/Text_Files/ □test.txt
  ↓
■ /home/zaurus/Documents/Text_Files/ □test.txt

bash-2.05$ mv /mnt/card/Documents/Text_Files/test.txt /home/zaurus/Documents/Text_Files/
bash-2.05$

第2歩で使ったコマンド
mv abc def
abcからdefへ移動、名前を変更する
cp abc def
abcからdefへコピーする

2003/2/15




 第3歩:スーパーユーザーに変身する

 スーパーユーザーというのは全ての権限を持つユーザーです、ルート権限を持った管理者です――って解りませんよね。
 例によって多少の誤りを恐れず大胆にいいますと、SL−C700の独裁者になるってことです。スーパーユーザーになればできないことはありません。一般ユーザーにはアクセスできないディレクトリやフォルダを好き勝手にいじれるようになるのです。

 なんで最初っからスーパーユーザーになっていないのか? ってことですが、間違って大事なファイルを消したり壊したりしないよう、システムの保護が目的でしょう。それと、Linuxの歴史ゆえなのでしょうが、セキュリティも深く関わっているのでしょう。

 しかし、いろいろカスタマイズする上で、スーパーユーザーにならざるを得ないシーンがたくさんでてきます。ヘンなことをしちゃうんじゃないかと怖い面もあります。君子危うきに近づかず――と言いますが、ボクは君子ではなくタコなんで、恐れずスーパーユーザになっちゃいましょう。バックアップさえこまめに取っておけば大丈夫ですよ。多分(^^;

 で、スーパーユーザになるってことは危険なこともできるわけで、自己責任でお願いしますm(__)m。

 スーパーユーザーになるにはsuコマンドを使います。

bash-2.05$ su    ←スーパーユーザーに変身

# bash        ←スーパーユーザーでシェルを使えるようにする

bash-2.05#      ←スーパーユーザーでのコマンド待ち

※一般ユーザーと同じルールで作業できます

bash-2.05# exit   ←スーパーユーザのシェルを終了します

exit

# exit        ←元の姿に戻りましょう

bash-2.05$      ←これで貴方も無力な存在

 スーパーユーザーになるとプロンプトが”$”から”#”に変るようですね。

 スーパーユーザーとしてアプリを起動する (ルート権限で実行する)

 話はターミナルから外れますが、HOME画面に登録されているアプリケーションをスーパーユーザーという形で起動することができます。普通のアプリケーションには必要のないことですが、設定ファイルを書くエディターやファイル管理ソフトなどはスーパーユーザーとして起動した方がいいケースもあります。

 HOME画面アイコンを長押ししますと、右のようなプロパティの画面が開きます。中程の「□ルート権限で実行する」にチェックを入れると、スーパーユーザとしてアプリケーションを起動させることができ、右の例ですと、FileManegerであらゆるディレクトリ、ファイルを操作できるようになります。危険ですのでやることをやったあとはチェックを外した方が無難でしょう。

第3歩で使ったコマンド
su
スーパーユーザーになる

2003/2/15




 第4歩:FTPでHTMLファイル等を転送する

 HTMLファイルをターミナルでサーバーに転送する手順をご紹介。ここではHTMLファイルの転送手順を紹介しますが、画像ファイル等にも応用可能です――というかやることは同じです。

 まず目的を明確にしておきましょう。

今日の目的

ZaurusにあるHTMLファイルの”enter.html”をRIMNETのサーバーに転送する

 実際にやることは、

作業内容
  1. Zaurusにある転送元ディレクトリへ移動する
  2. RIMNETにFTP接続する
  3. RIMNETサーバーにある転送先ディレクトリへ移動する
  4. ZaurusからRIMNETサーバーへファイルを転送する
  5. FTP接続を切る
 あと、実際の作業に入る前に、以下の項目はチェックしておいてください。
FTP設定等の確認事項

 FTP転送するにあたって、下記の環境を知っておく必要があります。

サーバー側 ボクのRIMNETの場合
FTPホスト名 ftp.yo.rim.or.jp
FTP接続のユーザー名(アカウント) name
FTP接続のパスワード password
転送先ディレクトリ public_html/mobile/
ローカル(SL−C700)側
転送元ディレクトリ /mnt/card/0/

 皆さんの環境を調べておいてください。以下、上表の「ボクのRIMNETの場合」を例にして紹介いたします。

 ここまで来れば終ったも同じです。あとは[Terminal]をコマンドを打ち込むだけ。

FTP転送しよう

 まずは[Terminal]を起動いたしましょう。続いて、下記のコマンドを各々の環境に合わせて打ち込んでいきます。

水色の文字が打ち込む文字。緑色の文字はターミナルが返すメッセージです。白文字は解説ですので、実際には表示されません。斜体文字は、それぞれの環境によって違ってくる部分です。

bash-2.05$ cd /mnt/card/0/ ←転送元ディレクトリへ移動

bash-2.05$ mv enter.html.txt enter.html ←ファイル名変更(※1)

※ネットワーク接続※

bash-2.05$ ftp ftp.yo.rim.or.jp ←FTPサーバーへ接続

Connected to mail.yo.rim.or.jp.

220 ftp2.yo FTP server ready.

Name (ftp.yo.rim.or.jp:zaurus): name ←FTPユーザー(アカウント)名

331 Password required for name.

Password:****  ←FTPパスワード(入力した文字は表示されない)

230 User <name@yo.rim.or.jp> logged in.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> cd public_html/mobile/ ←転送先ディレクトリへ移動(※2)

250 CWD command successful.

ftp> ascii ←転送モード変更(※3)

200 Type set to A.

ftp> mput e* ←転送するファイルを選択(※4)

mput enter.html? y ←転送したいファイルなので”y”

200 PORT command successful.

150 Opening ASCII mode data connection for enter.html.

226 Transfer complete.

21177 bytes sent in 9.67 secs (2.1 Kbytes/sec)

ftp> bye  ←FTP接続を切る

221 Goodbye.

※ネットワークを切断※

bash-2.05$

※1 mv enter.html.txt enter.html
 メモ帳でHTMLファイルを編集すると拡張子”.txt”がつくので、ファイル名を変更しています。必要のない方は省略してください。
 ここでは、カレントディレクトリにある enter.html.txt enter.html に変更しています。
※2 ftpでのディレクトリ名入力
 こちらでも紹介した、[Tab]によるディレクトリ名、ファイル名の補完や、カーソルキーによる履歴呼び出しは、ftp接続した状態では機能しません。全て手動で入力する必要があります。
※3 ascii
 FTP転送モードをアスキーモードに変更しています。テキストファイルはアスキーモードで転送する必要があります。HTMLファイルも実態はテキストファイルですので、アスキーモードでの転送が必要です。しかし、例外的にHTMLファイルはバイナリモードで転送しても不都合はありません。つまり、省略可能です。エラー回避のためにはアスキーモードに変更していた方が確実ではあります。
 画像などのバイナリファイルは”binary”コマンドでバイナリモードにする必要があります(デフォルトはバイナリモード)。
※4 mput e*
 ”*”はワイルドカードです。トランプのババみたいなもんですね。”e*”で指定しますと、ディレクトリにある”e”で始まるファイルを全てアップロードします。”enter.html”と入力するのが面倒なのでこうしました。
 ”mput *”でしたら、転送元ディレクトリの全てのファイルをアップロードしようとします。候補を聞いてきますので、アップロードするファイルは”y”、しないファイルは”n”で答えて制御します。
 ちなみに、”mget e*”とすれば、サーバーにあるディレクトリ(ここではRIMNETサーバーの public_html/mobile/)以下の”e”で始まるファイルをZaurusのディレクトリ(ここでは/mnt/card/0/)へダウンロードできます。

 てな感じです。

第4歩で使ったコマンド
cd abc
ディレクトリ abc へ移動する
ftp host
ftpサーバー host にFTP接続する
mput abc
ファイルabcを転送する
bye
FTP接続を切る
mv abc def
ファイル名 abcdef に変更する
ascii
転送モードをアスキーモードにする

2003/2/2




 第5歩:エイリアスに長いコマンドを登録しよう

 ターミナルで長いコマンドを打ち込むのはめんどうです。例えば、テキストベースのブラウザw3mを起動するには、

bash-2.05$ w3m httph//www.yo.rim.or.jp/~mono93/mobile/

 と長々とURLを打ち込まなくてはいけません。
 この面倒な作業を簡略するには、aliasを設定します。”/home/zaurus/.bashrc”というファイルに、

alias index="w3m httph//www.yo.rim.or.jp/~mono93/mobile/"

 と書いておけば、

bash-2.05$ index

 と打ち込むだけでOKなのです。

 ”.bashrc”はファイル名の先頭にドット”.”があります。このドットファイルと呼ばれるものは隠しファイルで見ることができません。扱いは面倒なのですが、ZEditoryEdit を使えば簡単です。

(1) ZEditoryEdit を起動します(ここでは yEdit を例にします)。

(2)記憶させたいコマンドを書き込む。

書式: alias [コマンド名]="覚えさせたいコマンド"
例:  alias index="w3m httph//www.yo.rim.or.jp/~mono93/mobile/"
※コマンド名は個性的なものをつけて下さい。在り来りなコマンド名だとダブる可能性があります。

■(3)〔名前をつけて保存〕でファイラーを開き、”/home/zaurus/”ディレクトリに移動する。

(4)ファイル名入力BOXに”.bashrc”と入力して保存する。

(5)ターミナルを再起動する。

 以上です。


 参考にはならないと思いますが、ボクの”.bashrc”を載せておきます。

alias upload="ncftpput -u name -p password ftp.yo.rim.or.jp public_html/mobile/ /mnt/card/0/enter.html"
alias download="ncftpget -E -u name -p password ftp.yo.rim.or.jp /mnt/card/0/ public_html/mobile/enter.html"
alias index="w3m /mnt/card/Documents/Web_Files/index.htm"
alias keyreload="qcop QPE/KeyHelper 'reload()'"

 尚、

bash-2.05$ alias index="w3m httph//www.yo.rim.or.jp/~mono93/mobile/"

 としてエイリアスを登録できますが、ターミナルを終了すると消えてしまいます。

 詳しくはこちらをどうぞ。

日経Linux Linuxコマンド集 :コマンドの別名を登録する






BACK