Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
UNIX 今日の技
[go: Go Back, main page]

UNIX 今日の技


ちょっと手を入れてみました。 <hn>を拾って TOC を挿入するスクリプトが欲しいなあ。 今回はタグの調整しかやってないけど、近いうちコンテンツ追加も再開します。 (岸田)


コメントおよびツッコミ

  • 改行プロンプト→岸田の個人的な設定、環境変数 PS1 の \n を削除すれば OK
  • 「GUI→覚え易いが伝え難い」←→「CUI→覚え難いが伝え易い」
  • 「tail -f」や「less 上で F」の便利な使い方

はじめに

UNIX 今日の技』は、 「UNIX 初心者が中級者にレベルアップするための足掛かり」となる事を目的としています。 ですので、「ls って何?」というようなレベルの人はまず本などで (基本的なコマンド程度で良いので)勉強してからにした方が良いと思います。

あと、田中研特有の事情や研究でよくなされる作業( VASP を使うなど)を そのまま例に挙げることがよくあります。

(今まさに表示されている)このページに書かれているのは最新の記事であり、 書いてから暫く時間の経った物は適当なタイミングで archives に放り込んでいます。

archives


コンピュータを使用する上でのお作法

UNIX には限らない、 比較的コンピューティング一般に近いトピックです。

コマンドなどの定型句はコピー&ペーストする

初心者がターミナルに入力するのを見ていると、 ブラウザで見つけたコマンドラインを 「目で見て手で打っている」ことがしばしばあります。 これはいけません。 必ずコピー&ペーストで貼り付けるようにしてください。

「なんか動かないんですけど……」と呼ばれて見てみると、 原因の数割はこういうタイプミスだったりします。 ラクして失敗が予防できるのならば、 どうして使わない理由がありましょうか。

人間の目と手ほど信頼の置けないデバイスはありません。 岸田はタイプする文字が 10文字もあればほぼ必ずコピペを使います。 あと、 シェルの補完機能もタイプミスを予防する効果があるので 利用できる局面では使うことを心がけましょう。

コピーは避けよう

コンピュータの良いところはデータの複製が簡単なことです。 だからといって気軽にコピーしていると、 後々面倒なことになります。 以下のような心当たりはありませんか?

  • 2つのファイルの差分がどこにあるのか分からない
    • まあ、 テキストファイルならば diff コマンドで大体当たりはつきますが、 バイナリファイルだと結構お手上げです。
  • どっちが新しいファイルなのか分からない、
    • 運が良ければタイムスタンプ(ls -l)で分かりますが。
  • 差分(更新分)の意図が分からない
    • 記憶/記録してなければお手上げです

プログラマとしては、 「コピーは必要悪でもあるが、 基本的には厭うべきもの」です。 コードのコピーによって複数箇所に同じ記述がなされてしまいます。 このことは、 「この部分の変更」をする際には「同様の記述をしている箇所全てに 変更を適用する必要がある」ことを意味します。 このことによってコードの視認性、 編集し易さは著しく低下します。

彼等が扱うのは主に「コードのコピー」ですが、 この議論はそのまま「ファイルのコピー」にも適用できます。 「コピー」する際にはこれらの点に注意し、 然るべきメモを残しながらするように 心掛けるべきです。

バックアップとストレージ

ファイル操作についてまとめてみます。

バックアップ

バックアップとは情報を多重化することであって、メディアの種類には依りません。 例えば同じ HDD にファイルをコピーすることだってバックアップに当たります。 また、外部メディアにデータをコピーすることはバックアップに相当しますが、 そのあと HDD からデータを削除してしまうならばそれはバックアップではなく ストレージに相当するでしょう。

細かく見ると、バックアップの目的は2種類の障害に備えるものと言えます。 1つは機械の故障に備えるもので、この観点から行くとバックアップの頻度は 頻繁にやればやる程良いということになります。

もう1つは人為的な操作ミスに備えるものです。 こちらの方は操作ミスでファイルを消してしまったりした場合に それをバックアップから復元するために使います。 こちらの観点からはバックアップの頻度が高すぎると 失敗した操作の結果もバックアップに反映してしまうことになるため、 必ずしも頻繁にやれば良いというわけはないことになります。

この辺、「自分なりの最適解」は人によって違う筈です。 是非ご一考を。

ストレージ

ファイルの整理整頓に近いニュアンスの言葉です。 CD-Rなどの外部メディアに保存することも含まれます。

ちなみに「バックアップストレージ」とか「ストレージのバックアップ」とかいう言葉もあります。 私は漠然と「バックアップストレージ」は「バージョンを管理されたバックアップ」、 「ストレージのバックアップ」は「データを整理して、その形態でバックアップを取ること」 だと思っているのですが、どうなんでしょう? うーん、あまり自信がありません。

X が固まった!?

Ctrl-Alt-Backspace が「X の強制終了」にバインドされています。 まずはこれを試してみましょう。

仮想コンソール

「X が固まった、 ネットワーク経由のログインもできない」という時のための Tips です。 また、 X も screen も入れてないインストール直後の状態で、 何かの作業中に別の作業をしたい時にも使えます。

PC-UNIX は仮想コンソールという機能を持っています。 システムは 8枚の仮想コンソールを持っていて、 X 環境ではないコンソールの状態で [Alt-Fn](n=1〜8) で別のコンソールを扱えます。 例えば、 [Alt-F2] では2枚目のコンソールに移動します。

ここに X を起動すると、 システムは 9枚目のコンソールを作り、 そこを X に割当てます。 X から仮想コンソールに直接移動することもできますが、 X では [Alt-Fn] は別の機能にバインドされているため、 (例:[Alt-F4]アプリケーションの終了) [Ctrl-Alt-Fn] にバインドされます。 仮想コンソールから X に復帰するには [Alt-F9] で行けます。

以上の話は FreeBSD での設定なのですが、 調べた限りでは Linux でも同様のようです。

更新日時:Sat Apr 30 16:04:50 JST 2005
キーワード: