UNIX 世界中的许多文件都没有文件扩展名。常见示例包括README
、INSTALL
、LICENSE
。
我们知道这些是文本文件。因此,不能直接双击它们在资源管理器中打开并在记事本中看到它们,这有点令人失望(实际上,记事本2因为 UNIX 行尾的 Microsoft Notepad 无法正确呈现)。
有人知道为没有扩展名的文件创建文件关联的方法吗README
?然后可以将其复制到最常出现的文件类型,然后双击打开它们就可以了。
更新(算是对你们所有评论的回应。)谢谢大家,你们的评论和回答对我有帮助。
@Indrek,是的,我以为您可以以某种方式为README
或创建一个关联Makefile
,但无法为没有扩展名的文件创建关联。事实证明情况恰恰相反,是的,这是一个巧妙解决问题的解决方法。
最终,我只希望能够双击打开README
或Makefile
,仅此而已。
@Sampo,给我这个技巧也很有用,尽管可用性不如直接双击那么好。(我有时真的很懒。)
事实证明,使用以下技巧ftype
并ftype
在管理员提示符下执行双击启用工作:
assoc .=no_ext
ftype no_ext=%SystemRoot%\system32\NOTEPAD.EXE %1
:: You can see it created some entries in the registry:
reg query hkcr\no_ext /s
reg query hkcr\. /s
答案1
您无法根据文件名创建文件关联,但可以为没有扩展名的文件创建文件关联。为此,请将以下内容另存为 .reg 文件并双击它:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.]
[HKEY_CLASSES_ROOT\.\shell]
[HKEY_CLASSES_ROOT\.\shell\open]
[HKEY_CLASSES_ROOT\.\shell\open\command]
@="Notepad.exe %1"
替换Notepad.exe
为您想要使用的任何文本编辑器。
当然,您也可以使用 手动创建注册表项和值regedit.exe
。
另请参阅这个问题及其答案。
答案2
您可以随时为所有文件创建附加菜单项,该菜单项将在记事本上打开选定的文件。
这非常简单,操作方法如下:
1.打开Send To
文件夹。在 Windows 7 中,此文件夹是C:\Users\TestUser10\AppData\Roaming\Microsoft\Windows\SendTo
,只需更改TestUser10
为您的用户名或使用All Users
配置文件即可。
2.创建新的快捷链接,notepad.exe
描述为“记事本”。
现在可以使用了
右键单击任意文件并选择"Send To" => "Notepad"
,Windows 将在记事本中打开选定的文件。
笔记:这适用于所有具有"Send To"
功能的 Windows 版本,你只需要找到Send To
文件夹并创建快捷方式notepad.exe
。95、98、ME、2000、XP、Vista、7...都有,但文件夹路径可能会有所不同。
更新:
好的,我明白了(读完之后)techie007 的评论)。
您可以将程序关联到FILENAME
(或者FILENAME.EXT
如果你想) 使用上述说明作为起点。
不要像我上面建议的那样创建快捷方式,而是创建新的File Editor.cmd
,这里是File Editor.cmd
(随意更换案例):
GOTO FILE_%~n1
:FILE_NOTEPAD
START notepad.exe %1
GOTO EOF
:FILE_nicepic.jpg
START mspaint.exe %1
GOTO EOF
:FILE_config.sys
edit.com %1
GOTO EOF
:EOF
好的,这只是一个草图。欢迎任何人对其进行改进,一个建议是使用IF ... ELSE
语句来获取默认的后备程序(十六进制编辑器例如) 表示任何未定义的文件类型/名称。使用条件语句,还可以使用findstr
正则表达式根据文件名的各个部分确定启动器。
更新:与文件关联集成
这部分是关于与上面的集成Indrek 的回答。
想法很简单,只需写入上面的批处理文件(甚至更好,具有类似功能的真实程序)但不要将其放在“发送到”文件夹中,而是将其放在System32
文件夹(不要将其放在“发送到”中)。
准备好脚本/程序后,请按照 Indrek 的回答操作,但有一个例外:使用file editor.cmd %1
(或者你为批次/程序命名的任何名称) 代替notepad %1
。
这使您可以同时使用:通过文件名选择应用程序和从 Windows 资源管理器中简单双击。