我再次并行使用 Windows 和 Linux,并且我拥有所有的 Linux 习惯和反应,没有它们我感到非常沮丧。
例如,如何创建一个文件来使用给定的命令启动终端,就像文件中该.desktop
行后面的命令一样Exec=
?
那么这样的文件是否可以充当“应用程序”以便与文件类型相关联?(例如,视频或流可以在终端中处理/下载/转换?)
答案1
你有没有注意到 Windows 桌面上的所有应用程序图标都是 *.lnk 文件?与 Ubuntu 上用 *.desktop 表示的桌面图标完全相同。只需打开桌面上的控制台并运行,dir
你就会明白。它们是外壳链接在 Windows 上称为快捷方式。它们不仅适用于应用程序,而且实际上可以做更多的事情,因此并不完全相同,但对于运行命令的基本目的而言,它们几乎相同
也可以看看
那么这样的文件是否可以充当“应用程序”以便与文件类型相关联?(例如,视频或流可以在终端中处理/下载/转换?)
Windows 不关心任何应用程序,因为任何文件类型都可以与任何命令相关联,包括 VBS、批处理或 PowerShell 脚本。shell 只是运行注册表中指定的命令,特别是配置单元HKEY_CLASSES_ROOT\SystemFileAssociations
。为此,除非您想指定图标或其他特殊属性(如兼容模式或键盘快捷键),否则您不需要创建快捷方式。只需一个简单的脚本就足够了。事实上,快捷方式中的命令仅供您单击和运行。通常,您会准确指定要与每种文件类型关联的命令,即在脚本中复制相同的命令,或者只是从快捷方式调用脚本
在cmd中你可以运行assoc
或者ftype
看到,或者按照此步骤操作即可获得 PowerShel。查看以下问题以获取一些示例
- 在 Windows 中一键创建和提取 .tar.gz 文件?
- 自定义 Windows 上下文菜单 shell 命令针对文档:*.docx 和 *.pdf
- 将文件类型与特定程序关联
- 如何使 ftype 和 assoc 匹配 Windows 资源管理器?
- 如何通过 CMD 将文件与 Windows 中的程序关联
- Windows 在注册表中的什么位置存储了使用哪个程序来打开某些文件类型?
欲了解更多信息,请运行assoc /?
并ftype /?
阅读其手册