FGALDC 14 /RE:07893 RE:ADのソート  こんにちは、耳而夢斎 さん #E については了解しました。 》 想定されるバージョンはいくつでしょうか。親切なバージョンだと DOS2000 ズバリ、NEC PC-98用 DOS6.2 では、上書き確認のメッセージが出ます。 以下、ちょっと長くなりますが引用です。 》B:\WTERM\NIFTY>copy B:\TEST.TXT I:\TEST.TXT 》I:\TEST.TXT を上書きしますか (Yes/No/All)? 》 1 個のファイルをコピーしました. 》 》B:\WTERM\NIFTY>copy /? 》ファイル(複数可)を別の場所にコピーします. 》 》COPY [/A | /B] 送り側 [/A | /B] [+ 送り側 [/A | /B] [+ ...]] 》 [受け側 [/A | /B]] [/V] [/Y | /-Y] 》 》 送り側 コピーするファイル(複数可)を指定します. 》 /A アスキーテキストファイルとして扱います. 》 /B バイナリファイルとして扱います. 》 受け側 新しいファイルのディレクトリまたはファイル名(複数可)を指定します. 》 /V 正しくコピーされたかどうか照合します. 》 /Y 受け側のファイルを上書きするか確認するためのプロンプトを表示しま 》 せん. 》 /-Y 受け側のファイルを上書きするか確認するためのプロンプトを表示しま 》 す. 》 》環境変数 COPYCMD に /Y スイッチを設定することもできます. 》これは, コマンドラインで /-Y スイッチを指定すると無効になります. 》 》複数のファイルを追加するには, 受け側に 1個のファイルを指定し, 送り側に複数の 》ファイルを指定(ワイルドカードを使うか, ファイル1+ファイル2+ファイル3+... と指定)します. 》 》B:\WTERM\NIFTY>copy B:\TEST.TXT I:\TEST.TXT /y 》 1 個のファイルをコピーしました. 》 》B:\WTERM\NIFTY>VER 》 》MS-DOS Version 6.20 》 》 》B:\WTERM\NIFTY> 》 ss2はコマンドラインもサイレントですので, そこで止まったとしたらマク COPY コマンドの上書き確認の場合、停止するわけではなく入力待ちになります。 そのとき、もし &? などでマクロからマシンに文字列が渡されてしまうと、それ はそのまま COMMAND.COM が解釈する事になるはずです。この場合、Y/N/A 以外の 文字だけが渡されると、いつまでたっても入力待ちのままなので、ハングしたよ うに見えるはずです。 一方、渡された文字列の中に Y/N/A のどれかがあれば、それなりの処理をした後、 コマンドラインに戻ってくるはずです。つまり、#7778 のコードの例で言えば、 ftag -a 〜とコマンドラインに渡したはずが、f と t は読み捨てられ、a でコピ ーが行われ、次の g 以降がコマンドとして実行されようとするはずです。 なので、g というコマンドがパスの通っている中にあればそれが実行されるので しょうが、そうでなければお馴染みの「コマンドまたはファイル名が〜」が出て いるはずです。そのあと、ローカルマクロの33番以降が実行されるはずですが、 ただ、なんとなく、ソートがうまく行かないだけで、その後のマクロの動作には 影響がないはず、というような気もします。これは、私が ad.def 及び ftag の 動作を理解していないからかもしれません。 》ロは停止状態になりますね。ハングアップしているわけではないので [Break] 》で復帰できるでしょうけれど,再表示しなければならないので,実際どういう 》状態に陥っているかいよいよ分からないでしょう。 もしこの状況に陥っているのなら、[STOP] キーを押した後はコマンドラインにい るわけなので、cls コマンドが通用します。そのあとで \[ESC] でコンソールフ ァイルの状況を見れば、いったい何が起こったのかは確認できるかと思います。 また、高津さんの報告では2度目の実行ができないという事ですが、通常は一度 作られた ad.bak が消えることはありません。が、リセット後再実行するとOK になるという事は、リセットするとバックアップファイルが消えてしまっている ような感じです。すなわち、バックアップはリセットすると消えるRAMディス クに作っているとか、あるいは autoexec.bat でバックアップファイルを自動的 に全て消すような処理をしていれば、高津さんの報告に極めて近い状況が再現で きそうな気がします。                                 としき