如何让Total Commander实现只复制文件名而不复制后缀?这个是TC老生常谈的问题之一,但是作者一直未给出直接的解决办法。方法总比问题多,解决这个问题的目前最好方法,还是利用Autohotkey(以下简称AHK)来实现。
解决方法1:先按F2再按Ctrl+C
这是曲线救国的一个办法。设置一个快捷键F2为重命名,然后再按Ctrl+C。或者按F7,再按Ctrl+C。每次只是多按一个键,对于复制单个文件的不含后缀文件名,这种方法是可以的。但是,如果想一次复制选中的多个文件的不含后缀文件名,这种方法就无能为力了。解决方法2应运而生。
解决方法2:AHK脚本
TC官网的wiki库有一个关于AHK与TC集成的页面。其下就提供了只复制文件名而不复制后缀的AHK脚本。我将代码稍微修改了一下,设置成Ctrl+3复制无后缀文件名,代码如下。将代码保存为AHK文件,用AHK程序加载该脚本,实测win7+tc8.0可用。
#IfWinActive, ahk_class TTOTAL_CMD ^3:: ;*** 可以自己设置你想用的快捷键 Clipboard := "" PostMessage, 1075, 2017 ClipWait, 1 Clipboard := RegExReplace(Clipboard, "(.+)\..+", "$1") Return
解决方法3:TC自带的批量重命名编辑模式
如果我们想一次复制选中的多个文件的不含后缀文件名,又不想使用如AHK之类的外挂程序,有没有什么办法呢?可以进入TC的批量重命名模式(快捷键ctrl+m),将设置项的后缀名(扩展名)一栏留空,也就是删掉文件后缀名,然后进入如下图的编辑文件名模式。
在弹出的文本编辑器中全选文字并复制即可。
本文更新历史:
2014.4.7 更新解决方法3
拜读了!
方法3很实用
方法3很好!一直在想这个解决办法没想出来
留言是种美德,写点什么…