1

出力ファイルを .txt 形式で生成するデバイスを使用しています。ファイル名は、実験名のトークンとインクリメントされたトークンを使用して生成されます: <ExperimentName><IncrementedToken>.txt。出力ディレクトリは、一連の実験からの多数の出力ファイルでいっぱいになり、最新の出力ファイルを見つけるのが難しくなっています。

コマンドラインを使用して、これらのファイルが保存されているディレクトリから最新の出力ファイルを起動するスクリプトを考え出そうとしています。

これまでのところdir PathToOutputFolder /b /o-d | head -1、最新のファイルを見つけるために使用できましたが、コマンド ラインからファイルを起動するのに問題があります。

これまでに得た最も近い (と思う) ものは次のようなものです start "" notepad dir PathToOutputFolder /b /o-d | head -1が、これにより、「指定されたパスが見つかりません」というエラーが表示されます。

コマンドの出力をdirコマンドに渡すことができないと考えていますstartが、回避策を見つけたいと考えています。

4

1 に答える 1

1

(注意: コンソールがラスター フォントに設定されていて、ファイル名に OEM コードページに収まらない文字が含まれている場合、これは失敗します。)

for /f "delims=" %%x in ('dir PathToOutputFolder /b /o-d') do if not set filename set "filename=%%x"
start "" "%filename%"

ただし、はるかに簡単な PowerShell を使用するオプションがある場合:

$filename = (Get-ChildItem PathToOutputFolder | sort LastWriteTime)[-1]
Invoke-Item $filename
于 2012-08-22T22:53:54.113 に答える