dosread コマンド

目的

DOS ファイルをコピーします。

構文

dosread-a ] [  -v ] [ -D Device ] File1 File2 ]

説明

dosread コマンドは、 File1 変数が指定する DOS ファイルを、標準出力に、 あるいは File2 変数が指定するファイルに、コピーします。File2 変数に対してパス名が指定されていないと、DOS ファイルはルート・ディレクトリーにコピーされます。

特に指定がなければ、dosread コマンドは、File1 のディレクトリー・エントリーに指定されたバイト数をコピーします。つまり、規則ではディレクトリーのレコード・サイズが 0 になっているので、特にディレクトリーのコピーは機能しません。

唯一の例外である ¥ (円記号) を除き、DOS ファイルの命名規則が 使用されます。¥ (円記号) は DOS にとって 特別な意味を持つ場合があるので、DOS パス名にサブディレクトリー名を指定する 区切り文字には、/  (スラッシュ) を使用してください。 dosdir コマンドは、ディスクを検査する前に、ファイルまたはディレクトリー名の小文字を大文字に変換します。 ファイル名はすべて絶対パス名 (相対パス名ではない) と見なされるので、 最初の / (スラッシュ) は付ける必要はありません。
注:
  1. dosread コマンドは、* (アスタリスク) および ? (疑問符) の ワイルドカード文字を特殊な意味を持つものとは解釈しません。ファイル名の拡張子を指定しないと、ブランクの拡張子を指定した場合と同様にファイル名の照合が行われます。
  2. このコマンドの名前をカスタマイズすることはできません。このコマンドは必ず dosread という名前でなければなりません。
  3. dosread コマンドは、 DOS ディスケットが入っているデフォルト・ドライブからファイルを読み取ります。 次に、dosread コマンドは、そのファイルを現行ディレクトリーに、 このオペレーティング・システムが認識するファイルとしてコピーします。 DOS ディスケットにサブディレクトリーが入っていると、 dosread コマンドは、このオペレーティング・システム内に、 それに対応する新しいサブディレクトリーを作成しません。ユーザーがサブディレクトリーを作成して、 その新規サブディレクトリーにコピーする個々の DOS ファイルを指定する必要があります。

フラグ

項目 説明
-a 各 CR-LF (復帰、改行) キー・シーケンスを改行文字に置き換え、Ctrl-Z (ASCII SUB) キー・シーケンスを 行の終わりの文字として解釈します。
-D Device DOS デバイスの名前を /dev/fd0 または /dev/fd1 と指定します。 デバイス 変数のデフォルト値は /dev/fd0 です。 このデバイスは、DOS ディスク・フォーマットでなければなりません。
-v ディスクのフォーマットに関するファイル情報を、標準出力します。 このフラグを使用して、デバイスが DOS ディスクであるかどうか確認してください。

  1. DOS からテキスト・ファイルをコピーするには、 次のように入力します。

    dosread  -a chap1.doc chap1
    このコマンド・シーケンスは、 デフォルト・デバイス /dev/fd0 上の DOS テキスト・ファイル、¥CHAP1.DOC を、現行ディレクトリー内の chap1 にコピーします。
  2. DOS ディスケットからバイナリー・ファイルをコピーするには、 次のように入力します。
    dosread -D/dev/fd1 /survey/test.dta /home/fran/testdata
    このコマンド・シーケンスは、/dev/fd1 上の DOS データ・ファイル、¥SURVEY¥TEST.DTA を、/home/fran/testdata にコピーします。
  3. ディスケット上の DOS ファイルをすべてコピーするには、 次のように入力します。
    dosdir | awk '!/There are/ {print $1}'|xargs -t -i dosread {} {}
    このコマンド・シーケンスは、 DOS ディスクが入っているデフォルト・ドライブからファイルを読み取り、 そのファイルを現行ディレクトリーにコピーします。

ファイル

項目 説明
/usr/bin/dosread dosread コマンドが入っています。
/dev/fd0 ディスケット・ドライブのデバイス名が入っています。