我正在尝试在用户创建文件后在其默认编辑器中打开文件。到目前为止,我的脚本是:
@echo off
@echo --- Create A New File ---
@echo -
@echo Where should we put the new file?
set /p fileLocation=@ %UserProfile%\
@echo -
@echo What do you want to call your new file?
set /p fileName=@
@echo -
@echo Almost Done! What is the files extension?
set /p extension=@ .
@echo -
copy NUL "%UserProfile%\%fileLocation%\%fileName%.%extension%"
(忽略额外的回声和'@'只是为了好玩)
单击该文件后,它执行命令:Choose Location > Choose File Name > Choose File extension
。我几乎完成了我想要的东西,但最后还有一件事。如何获取我创建的文件名,然后在其默认文本编辑器中打开?
答案 0 :(得分:28)
您可以使用start
打开包含相关应用程序的文件。
资源:
答案 1 :(得分:11)
在Windows中,您可以使用start
(http://ss64.com/nt/start.html)。
start "" "%UserProfile%\%fileLocation%\%fileName%.%extension%"
答案 2 :(得分:1)
我使用这些cmd命令实现了FILE ASSOCIATION的正确方法。 这只是一个例子:
REG ADD "HKEY_CLASSES_ROOT\Applications\notepad++.exe\shell\open\command" /v @ /t REG_SZ /d "\"C:\\Program Files\\Noteepad++\\notepad++.exe\" \"%1\"" /f
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.txt" /v "Application" /t REG_SZ /d "notepad++.exe" /f
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.txt\OpenWithList" /v "g" /t REG_SZ /d "notepad++.exe" /f
assoc .txt=MyCustomType
ftype MyCustomType="C:\Program Files\Noteepad++\notepad++.exe" "%1"
(最好把它们放在.bat文件中)
答案 3 :(得分:1)
您还可以使用explorer.exe
/ explorer
打开文件(例如explorer file.txt
)。如果您使用WSL,尤其是使用alias open="explorer.exe"
之类的别名,则也可以很好地使用它,例如open file.txt
。