ファイルの名前のみを指定し、拡張子を指定しないで、.bat 内の任意のタイプのファイルを開くにはどうすればよいですか? 使用するアプリケーションをウィンドウに決定させたい。
例:
%SystemRoot%\explorer.exe E:\SomeFolder\
%SystemRoot%\explorer.exe E:\SomeFolder\file1
ファイルの名前のみを指定し、拡張子を指定しないで、.bat 内の任意のタイプのファイルを開くにはどうすればよいですか? 使用するアプリケーションをウィンドウに決定させたい。
例:
%SystemRoot%\explorer.exe E:\SomeFolder\
%SystemRoot%\explorer.exe E:\SomeFolder\file1
START コマンドを使用します。
start "Any title" E:\SomeFolder\
start "Any title" E:\SomeFolder\file1
Start ヘルプから取得:
If Command Extensions are enabled, external command invocation
through the command line or the START command changes as follows:
.
non-executable files may be invoked through their file association just
by typing the name of the file as a command. (e.g. WORD.DOC would
launch the application associated with the .DOC file extension).
See the ASSOC and FTYPE commands for how to create these
associations from within a command script.
.
When searching for an executable, if there is no match on any extension,
then looks to see if the name matches a directory name. If it does, the
START command launches the Explorer on that path. If done from the
command line, it is the equivalent to doing a CD /D to that path.
前の説明は、純粋なファイル名も START コマンドなしで適切なアプリケーションを実行する必要があることを暗示していることに注意してください。指定された名前の最初のファイルを取得するには:
for %%f in (name.*) do set "filename=%%f" & goto continue
:continue
...そしてそれを実行するには:
%filename%
PS - 「使用するアプリケーションを Windows に決定させる」必要があることに注意してください。ただし、この例では、%SystemRoot%\explorer.exe
使用するアプリケーションとして明示的に選択しています。そう?