メールマガジン 『Linux の知恵袋 >>& あなたのウラ技集』 ネットワークOS Linux の基本,裏技,未公開,投稿ネタ,セキュリティ,TCP/IPも満載。
Linux資格認定試験も雑誌に掲載されました。 |
|
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
Linux の知恵袋 >>& あなたのウラ技集
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
Level 0009 (2003.11.07) http://www.u-waza.org/linux_tips/
「Linux Tips 研究所」 linux@1dk.jp
4誌合計発行部数: 940 部
├─────────────────────────────────┤
Linux Tips, 裏技,コマンド,オプション,設定方法,使い方などを提供
《基本系》と《ウラ技》を同時に覚えながら Linux を楽しむ。
Linux 使いになりたい人の為のメールマガジン。
メルマガ登録解除 → http://www.u-waza.org/linux_tips/regist.html
バックナンバー → http://www.u-waza.org/linux_tips/magazine/
> ○ お知らせ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
こんにちは。筆者のくぼたです。
「Linux Tips 研究所」がまたまた新しいことを始めました。
完全無料の Linux 試験です。
Linux 資格無料認定試験 - LTI -
http://www.u-waza.org/shiken_linux/
ぜひチャレンジください。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
難しそうに書いてありますが、お気楽に受験できます。
腕に自信ある人も、これから勉強したい人もどうぞ。
でも、すでに公開しているので多くの人が受験してくれましたが
ちょっとしたところで間違ってしまう、やさしそうな難問です。
お友達にもやってもらってください。
そして、力をつけるためにもう一度、答えあわせしてみてください。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
また「Vine Linux 2.6r3」がもう少しでリリースされそうです。
が、結構じっくり評価しているみたいで
もう少し時間がかかりそうです。
http://vinelinux.org/
プレゼントの詳細はしばし待たれり。
さらに今週の「来週のテーマ」には
読者から出題された「このファイル消せますか?」の
問題文が追加されました。
くぼた以上の出題です。あなたは解けますか?
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
├─────────────────────────────────┤
> ○ 今週のテーマ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
§8. このファイル消せますか?(rm, bash, シェル)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
以下のファイルを一つずつ、すべて消せますか?
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 file space
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 #file#
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 \
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ****
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 -file
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ~kubota
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ''
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 '*'
上記のファイルをまとめたものを下のところに置きました。
http://www.u-waza.org/linux_tips/command/test.tar.gz
解凍して消せるか試してください。
(注)rm は実行に十分、注意してください。
関係ないファイルが消えても、私は責任取れません。
《基本系》
さて、今回はファイルの削除らしいですが、
rmコマンド自体 のウラ技はありません。
が相当内容は濃いと思います。(わたしにとって)
# よくわかっている人へコメント
# rm はファイルがちゃんと消えているかどうか一目瞭然なので
# わかりやすいというだけで、今回のコマンドは実は
# ls でもいいし、touch でもいいし、vi でもいいよっていう
# 感じです。へた打つと、やっぱり変な動きするけど。
つまり、今回は bash の動きを見ていきます。
では、何も考えずに rm していきましょう。
* * * * * * * * * * * * * * * * * * * * *
スペース入りのファイルって結構できちゃったりしますよね。
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 file space
$ rm file space
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
rm: cannot remove `file': No such file or directory
rm: cannot remove `space': No such file or directory
エラーが出て消せません。この場合
「file space」という一つのファイルではなくて
file と space という2つのファイルとして認識されて
それを消そうとして怒られています。
* * * * * * * * * * * * * * * * * * * * *
これはどうでしょうか? Emacs で異常終了すると
こんなファイルが出来上がります。
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 #file#
$ rm #file#
 ̄ ̄ ̄ ̄ ̄ ̄
rm: too few arguments
Try `rm --help' for more information.
エラーが出ていますが先ほどとエラーの文言が違います。
これはスペースのあとに # が出てきたので
# 以降がコメントとみなされているためです。
つまりはコマンドは rm で終っていると考えられます。
# はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
# なお Linux のメーリングリストなどで # を行頭つけて
# 文脈に関係ないコメントをつける人がいますがこれは、この
# シェル上で # 以降のものをコメントとするものから
# きているようです。(ってこんな感じ)
他にコメントアウトって何があるのかなぁ?
メールでは # が一番有名だと思うけど
言語とかのコメント(のキーワード)って結構ばらばらだよねぇ。
C の /* ... */
C++ の //
emacs の ;
HTML の <!-- -->
SQL の --
VB とか VC とかってなんだろう。' とかだったっけ?
おもしろいコメントあったら教えてください。
お知らせで説明した Linux の試験受けるとき
コメント書くところあるので
そこでついででも、よいので教えてください。
# くぼた的には □P から├───┤までがコメント。
* * * * * * * * * * * * * * * * * * * * *
次にいきましょう。バックスラッシュもたまにできますね。
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 \
$ rm \
 ̄ ̄ ̄ ̄
>
変な感じになってしまいます。
\ を最後に入力して ENTER とすると
続きを入力するように求められます。
つまり \ は続きがあるよっていう印です。
> に続けて[ファイル名]を入れると rm [ファイル名]
が実行されるのと同じ意味になります。Ctrl + D
もしくは ENTER を入力すると
rm が実行されたのと同じになります。(つまりエラー)
\ はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
* * * * * * * * * * * * * * * * * * * * *
どんどん消しましょう。(まだ一つも消えていないけど)
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ****
$ rm ****
 ̄ ̄ ̄ ̄ ̄
rm: invalid option -- l
Try `rm --help' for more information.
あれ、おかしいですね。 あまり Linux のこと知らない人も
* って無敵のオールマイティさんだから **** だけとは
限らないで全ファイルが消えそうですが消えませんでした。
* はワイルドカードですので rm が実行される前に
カレントディレクトリのファイル名が * の部分にぴったりくる
時に展開されます。今回すべて、**** となっているので
カレントディレクトリにあるファイルが展開されて
rm #file# '' '*' **** -file \ file space ~kubota
のようになるはずだけど、
「*」 の展開の後、
「-file」の意味が rm を実行する前に評価されて
オプション間違っているよ。って言われています。
* はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
* * * * * * * * * * * * * * * * * * * * *
上のと関連して -file を削除しようとすると…
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 -file
$ rm -file
 ̄ ̄ ̄ ̄ ̄
rm: invalid option -- l
Try `rm --help' for more information.
なお、「-file」 なのになぜ、「l」(エル) が間違っているよ
と言われるかというと rm のオプションには「f」も「i」
も存在するのでその次に出てきている「l」をチェックしたときに
エラーとなっています。
ちょっと余談ですが f と i はまぁ、反対の意味の
オプション(詳細は各自で。)ですが実は同時に指定することができて
rm -if abc では後ろの「f」が有効になって削除の確認無し
rm -fi abc では後ろの「i」が有効になって削除の確認有り
となります。
- はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
* * * * * * * * * * * * * * * * * * * * *
次の kubota の部分はシステムに存在するユーザ名と考えてください。
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ~kubota
$ rm ~kubota
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
rm: `/home/kubota' is a directory
~kubota というファイルは /home/kubota というディレクトリ
と間違えられています。Linux(UNIX)では ~ は
自分のホームディレクトリを差します。
また ~[名前]は [名前] の人のホームディレクトリを差します。
~ はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
http://www.example.ne.jp/~kubota/
などに使われている ~kubota はこれと意味合いは近いです。
* * * * * * * * * * * * * * * * * * * * *
さて、もうすこしです。
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ''
$ rm ''
 ̄ ̄ ̄ ̄
rm: cannot remove `': No such file or directory
上を見ると '' と入力しているのに `' と変化していますね。
システムが差しているのは `' の間にはさまれた文字のこと
つまり、空の文字列を差しています。当然そんなファイルは無いので
エラーとなります。
' はコマンドが実行される前に解釈される特殊文字です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
* * * * * * * * * * * * * * * * * * * * *
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 '*'
$ rm '*'
 ̄ ̄ ̄ ̄
rm: cannot remove `*': No such file or directory
これも一つ前の例題と同じで
システムが差しているのは `' の間にはさまれた文字のこと
つまり * というファイルをさしています。
実際に * というファイルは無いのでエラーとなっています。
……少しあとにまとめがあるよ。
├─────────────────────────────────┤
ζ コーヒーブレイク
□P ちょっと休憩。というよりも著者の自己満足なスペース
Windows 使っていて 「Ctrl + p」とか 「Ctrl + n」とか
押したくなってしまう人、これ知ってますか?
「XKeymacs」
http://www.cam.hi-ho.ne.jp/oishi/
Linux の英知を存分に受けて育ってしまった方が
Windows 環境に遊びに行くと、どうしてもキーボード関係で
悩みます。
私は Ctrl + h (前文字削除) が使えないとストレスです。
XKeymacs はその名の通り Windows をなんでも Emacs 環境
にしてしまいます。エクスプローラーでもなんでも
Ctrl + w で切り取りして Ctrl + y で張り付けできます。
メモ帳が Emacs になります。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
また、このソフトのすごいところは対象のソフトを指定できて
Cygwin や EdMax 上では動かないようにしたり、
逆にダイアログボックスでは起動したり、
カスタマイズできるところです。
私は AltIME とセットで使っていましたが
最近のバージョンでは AltIME もいらないみたいです。
バージョンアップもひんぱんですのでチェックしてみてください。
├─────────────────────────────────┤
……《まとめ》です。
まぁ、つまり、今回は一つもファイルは消せませんでした。
Linux では rm やっちゃったらゴミ箱
(Mac では trash ?) とかいう素敵なものは
無く、あの世行き(※)ですのでお気をつけ下さい。
rm **** とか rm ~kubota とか今回、バシバシやっていますが
メルマガの前のよい子はまねをしないでください。
「-rf $HOME」とかいう名前のファイル作ったりするのも
危険なのでおやめください。
※あの世行き…実際には OS 上で見えなくしているだけで
専用ツール?などで復旧も可能らしいので
厳密な意味では三途の川はこえてないのかな?
├─────────────────────────────────┤
> ○ 来週のテーマ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
§9. このファイル消せますか?(rm, bash, シェル) その2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
以下のファイルを一つずつ、すべて消せますか?
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 file space
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 #file#
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 \
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ****
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 -file
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ~kubota
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 ''
-rw-r--r-- 1 kubota kubota 0 Oct 12 00:00 '*'
上記のファイルをまとめたものを下のところに置きました。
http://www.u-waza.org/linux_tips/command/test.tar.gz
解凍して消せるか試してください。
以下、今週の追加分です。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
gobbledygook さんからメルマガの感想と問題をいただきました。
問題文には手を加えずに紹介します。
感想は一部伏せ字にさせてもらいました。(今度のネタなので)
それにしても先週は問題文しかなかったのですが
「とても面白かったです。」
と言われてしまいました。
伏せ字の部分もよまれてしまいました。
今回とか来週とか書いていく中で
「期待にそえなかったらどうしよう」とか
「そもそも問題文だけで満足なさったのかな」
とかしょーも無いことを考えたりしてしまいました。
gobbledygook さん、ご感想ありがとうございます。
--
メルマガで、『このファイル 削除できますか?』はとても面白かったです。
多分 rm 〓〓 〓〓〓〓〓 などはあまり知られてないでしょうね。
そこで、私からも問題。このファイル削除できますか?
BASE64 エンコードされた test.tar.gz ファイルです。
このファイルを解凍してできたファイルを削除して下さい。
H4sICDrhoz8AA3Rlc3QudGFyAO3ROw7CMBRE0bcU74Cx5c96XKSiS5yCylsnhNAiGkdCuaeZwk/y
SNOmpd1sLCmqpLSlVHLc08d3HkylpO1RQd7kfcjZXBrca7curc7O2WNt9V6/3U3zckahc7XX/r33
kX/IS/nY+7f9g5LMaWSpj4vvDwAAAAAAAAAAAAAAAOB/PQFfXP+nACgAAA==
--
くぼたも読者と一緒に解答を考えていきます。
読者の解答もぜひ教えてください。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
当然答えは一つじゃないですよ。
(注)rm は実行に十分、注意してください。
関係ないファイルが消えても、私は責任取れません。
├─────────────────────────────────┤
> ○ 筆者にコンタクト
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
--
Linux Tips 研究所
Linux の知恵袋 >>& あなたのウラ技集
Web : http://www.u-waza.org/linux_tips/
E-mail: linux@1dk.jp
├─────────────────────────────────┤
このメールマガジンの内容は自己責任においてご利用ください。
いかなる種類の損害に対しても一切の賠償責任を負うことはできません。
著作権は全て筆者に帰属します。許可なく転載、複製する事を禁止します。
├─────────────────────────────────┤
> ○ 配信中止方法
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
以下のページで登録解除することができます。
http://www.u-waza.org/linux_tips/regist.html
├─────────────────────────────────┤
> ○ 目次
 ̄ ̄ ̄ ̄ ̄
・お知らせ
・今週のテーマ §8. このファイル消せますか?(rm, bash, シェル)
《基本系》
《まとめ》
・コーヒーブレイク
・来週のテーマ
・筆者にコンタクト
・配信中止方法
・おわりに
├─────────────────────────────────┤
> ○ おわりに
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
次回は 11/14 発行です。
今回はエラーが出てしまって一つも消せなかったので、
「rm」 で実際に消していきます。
Linux 資格無料認定試験 - LTI - もぜひ挑戦してください。
http://www.u-waza.org/shiken_linux/
おもしろいなぁと思ったら、ぜひ紹介してください。
Linux の知恵袋 >>& あなたのウラ技集
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━Tnx!━━━┛
Copyright (C) 2003 「Linux Tips 研究所」 All Rights Reserved.
|
[ 前へ ] | [ 次へ ]
メールマガジン登録/解除
『Linux の知恵袋 >>& あなたのウラ技集』 ネットワークOS Linux の基本,裏技,未公開,投稿ネタ,セキュリティ,TCP/IPも満載。
Linux資格認定試験も雑誌に掲載されました。 |
|
|
Linux の知恵袋 >>& あなたのウラ技集
メールマガジン登録/解除
昔の What's NEWs
Linuxコマンド一覧
人気メルマガの秘訣
メルマガ読者の声
Linux CDROMの購入価格
Linux Tips 目次
§1. コピーアンドペーストをするには ? (2003.09.16)創刊号
§2. FTP を使いたい (ログイン)(2003.09.23)
§3. Lindows の Click-N-Run を使わないコマンドインストール(2003.09.27)
ftp コマンドの中で知りたいのは
どれ?(アンケート)(2003.09.29)
§4. FTP を使いたい (ファイル取得)(2003.10.07)
§5. FTP を使うには (便利なソフト編その1)(2003.10.14)
§6. FTP を使うには (便利なソフト編その2)(2003.10.22)
§7. ドメイン情報を取得するには? (whois)(2003.10.30)
§8. このファイル消せますか?(rm, bash, シェル)(2003.11.07)
Linux 資格無料認定試験 - LTI - にチャレンジ!!(2003.11.14)
§9. このファイル消せますか?(rm, bash, シェル) その2(2003.11.24)
あなたのシェルは何色?(bash,sh,csh,tcsh, ksh,zsh,ash,bsh,cygwin) (2003.11.28)
§10. このファイル消せますか?(rm, bash, シェル) その3(2003.12.02)
§11. base64 でエンコードされたファイルのデコード (uudecode)(2003.12.11)
§12. base64 でエンコードされたファイルのデコード (uudecode)その 2(2003.12.18)
§13. base64 でエンコードされたファイルのデコード (uudecode)解答(2003.12.26)
§14. Linux 資格無料認定試験
- LTI v0.1 - 解答その1(2004.01.08)
§15. Linux 資格無料認定試験 - LTI v0.1 - 解答その2(2004.01.15)
§16. Linux 資格無料認定試験 - LTI v0.1 - 解答その3 (rpm)(2004.01.24)
§17. Linux
資格無料認定試験 - LTI v0.1 - 解答その4 ( vi )(2004.01.30)
§18. Linux 資格無料認定試験 - LTI v0.1 - ( vi の補足説明 )(2004.02.20)
§22. vi の4つのモード - コ
マンド,挿入,置換,コマンドラインモード(2004.02.27)
§23. vi のコマンド (移動コマンド編)(2004.03.17)
§24. vi のコマンド (マクロ編)(2004.05.07)
§25. スパムメール対策
(ベイジアンスパムフィルタとは)(2004.08.04)
§26. プロセスの監視 (ps, top, pstree)(2004.11.11)
§27. プロセスの監視 (ps, top, pstree) その2(2004.11.19)
§28. コマンドのパスを探すには (which, whereis)(2004.11.25)
§29. ipアドレスを確認するには (ifconfig)(2004.12.03)
§30. ファイルの末尾をリアルタイムで表示するには (tail)(2004.12.10)
Linux 資格無料認定試験
合格者一覧
解答解説募集中
Linux試験,資格比較
Linux Tips 研究所
Linux Links と Linux 書籍
効果的なメルマガ広告
広告効果(アンケート反応率)
|