将FastCopy整合进系统
目前主流的复制工具有 TeraCopy 和 FastCopy,我不是要讨论谁更强大,而是要解决 Windows 卡死的问题。我看了下知乎上的评测文章,很多评论和我的情况是一样的。大家对差个几秒并没有太多感知,只是 Windows 在多线操作时经常会降速到不可忍受,有时还会卡在最后 1% 无法完成。罪魁祸首是那个该死的进度条,但系统又不让关闭。
文件操作主要是复制和删除(移动可以看作复制+删除)。FastCopy 同时支持两种操作,整合得不太好;TeraCopy 不支持删除,但很好集成。
我的方法是,同时安装两个软件,然后在 TeraCopy 中勾选集成复制功能
-接管拖放操作
/默认使用 TeraCopy 复制文件
。
此时粘贴文件,TeraCopy 会弹出一个窗口,右上角有个设置,点击后可以“Edit Menu”(即修改软件目录下的 PasteMenu.ini
)。
添加几个选项,原始内容按序号顺延,FastCopy.exe
改为自己的路径:
[1] title=FastCopy - Copy - !!Just Overwrite!! path=C:\Users\YOUR_USERNAME\FastCopy\FastCopy.exe copy= cut= parameters=/auto_close /cmd=diff /srcfile="{list}" /to="{target}" [2] title=FastCopy - Move - !!Overwrite!! path=C:\Users\YOUR_USERNAME\FastCopy\FastCopy.exe copy= cut= parameters=/auto_close /cmd=move /srcfile="{list}" /to="{target}" [3] title=FastCopy - Copy (Not Overwrite) path=C:\Users\YOUR_USERNAME\FastCopy\FastCopy.exe copy= cut= parameters=/auto_close /cmd=noexist_only /srcfile="{list}" /to="{target}" [4] title=FastCopy - Copy (Keep the Newer File) path=C:\Users\YOUR_USERNAME\FastCopy\FastCopy.exe copy= cut= parameters=/auto_close /cmd=update /srcfile="{list}" /to="{target}"
再次复制或移动时,就可以默认调用 FastCopy 了。
TeraCopy 也不算纯粹的工具人,稍微复杂一些的调度用 TeraCopy 还是挺方便的。
接下来是删除,我用 AutoHotKey 接管了 Shift + Delete,代码如下:
#IfWinActive ahk_exe explorer.exe +Del:: fastCopyPath := "C:\Users\YOUR_USERNAME\FastCopy\FastCopy.exe" selectedFiles := "" for window in ComObjCreate("Shell.Application").Windows { if (window.HWND = WinExist("A")) { for item in window.document.SelectedItems selectedFiles .= """" item.Path """ " } } if selectedFiles Run, % fastCopyPath . " /force_close /cmd=delete " . selectedFiles return
从原理上讲 del / robocopy 都可以实现快速删除,但 FastCopy 默认会弹一个确认窗口,和系统自带的 Shift+Delete 操作习惯完全一致。