前言
本篇主要用来记录在 Windows 下使用命令行能做到的一些特殊技巧。
Windows 粉碎文件技巧
有时候 Windows 下会莫名出现文件无法删除的现象,即使通过 Shift+Delete 组合键也还是无法删除,这时可能需要通过一种 “文件粉碎机” 的工具才能删除,但是为了偶尔出现的这种现象而安装一个这样的工具又略显麻烦,这时只需要新建一个 Windows 批处理文件,即新建一个 txt 文本文件,并将后缀改为 .bat 即可,文件内容输入:
1 | DEL /F /A /Q \\?\%1 |
其中
DEL 表示删除文件,命令参数为: del /?
/F:表示强制刪除
/A:选择文件的属性
/Q:静默模式,在删除时不会弹出提示信息
RD 表示刪除目录,命令参数为: rd /?
/S:连带删除子目录下的文件
/Q:静默模式,在删除时不会弹出提示信息
具体用法为将待删除的文件拖拽到该 .bat 文件图标上,用该 .bat 文件打开待删除的文件即可。
但有时候即使使用上面的方法,也无法删除文件,同时还会弹出“无法删除文件,文件或目录损坏且无法读取”这样的提示,这可能是文件存储时发生错误造成的,此时需要在 Windows 命令提示符界面中输入命令 CHKDSK 盘符:/F
,盘符为需要删除的文件所在的磁盘或 U 盘,比如在 D 盘,则输入命令 CHKDSK D:/F
,如出现无法锁定的提示信息,则输入 Y
强制卸载该卷,等待一段时间,等磁盘扫描和修复完成后即可删除待删除的文件。
Windows 校验文件技巧
为确保从网络上下载的文件为原文件,一般需要对其进行 hash 校验(如 SHA1、SHA256、SHA384、SHA512、MACTripleDES、MD5、RIPEMD160 值等),一般随原文件一起释放的比较常见的 hash 值有 SHA1、SHA256 或 MD5 等,但是为了校验下载文件的 hash 值可能需要专门的第三方工具,但其实 Windows 、Linux 和 macOS 都自带了校验 hash 值的命令,通过这些命令可以直接对文件的 hash 值进行校验,而不需要使用额外的第三方工具,这里只介绍 Windows 的哈希值校验命令,其命令为 Get-FileHash
,具体使用方法如下:
1 | # []内为待校验的文件 和 所用的hash算法 |
如果觉得每次这样输入比较麻烦,可以使用参考资料[2]提供的注册表文件(.reg 后缀),双击运行,即可在鼠标右键菜单添加「文件哈希校验」,如此可以通过鼠标右键直接对文件进行 hash 校验。附其中代码如下:
1 | Windows Registry Editor Version 5.00 |
Windows 隐写文件技巧
在 Windows 下可以通过 copy
命令实现简单的文件合并,即隐写,例如:将压缩文件隐写入 jpg 文件中,将 txt 文件隐写入 jpg 文件中。这样在没改后缀名的情况下,该文件是以图片形式存在,若要恢复原有隐写文件信息,则只需要将 jpg 后缀名更改为相应文件后缀名,例如:若隐写的是 rar 文件,则只需将后缀名 .jpg 改为 .rar ,再用解压缩软件打开即可,也可以直接用解压缩软件打开相应 jpg 文件;若隐写的是 txt 文件,则需要用记事本打开该文件,通过 ctrl+end 组合键让光标定位到文件最末尾,即可看到隐写的 txt 文件内容。
具体命令如下:
1 | # 将 b.txt 隐写进 a.jpg 中,并输出为 c.jpg |
※注:图片文件要放在前面,需要隐写的信息放在后面,不然输出的图片无法正常查看和显示。
其中参数 /b
表示以二进制格式复制、合并文件,在合成图片和压缩文件等二进制文件时必须使用该参数,不然会丢失信息,从而造成合成失败,当然合成 txt 文本文件时也可以使用该参数;参数 /a
表示以 ASCII 码格式复制、合并文件,参数 /a
只适用于 txt 文本文件合并。
至于其它需要注意的就是:1、要合成的两个文件最好放在同一目录下,不然输入路径有点麻烦; 2、txt 文本文件前面最好空三行,这样它头部的内容就不会丢失。
输出的图片 c.jpg 和原图片 a.jpg 显示是一样的,看起来就是同一张图片,因此达到隐写的目的。
Win10 开启休眠方法
不知道巨硬是怎么肥事,居然 Win10 中默认电源选项中没有「休眠」选项,需要手动开启。虽然睡眠和休眠有重叠的地方,但是休眠是完全关机,再次开机时会恢复原有工作状态,更多的情况是必须要关机(因为需要考虑电量情况),相反如果有充足电力的情况下,还不如使用锁定代替睡眠,从这里的需求看还不如在默认电源选项中去掉「睡眠」选项。好了,抱怨吐槽的话就说这么多了,具体开启「休眠」的方法为:只需要在命令行(需要以管理员身份打开「命令提示符」)中输入一下命令:
1 | powercfg /H on |
回车 执行即可在电源选项中发现「休眠」选项。
Windows 新建用户命令
前一段时间电脑系统升级之后崩了,资源管理器损坏,没有任务栏,没有桌面,Win 键都无法使用,还好可以使用任务管理器,通过任务管理器调出 cmd,输入以下命令新建一个用户:
1 | # 添加用户tmp、密码123 |
通过 tmp 用户可以正常使用电脑,因此猜测应该是原来的用户系统配置文件(例如注册表文件,系统设置文件等等)损坏。系统损坏之后捣鼓了两天,这没办法修复了,即使新建用户也还是有些软件没法使用,还不如直接重装系统(系统出现问题果然重装系统才是最快的解决方案),还好可以新建用户以备份原有系统盘文件,不然就是真 gg 了。既然新建命令记录了,也顺便记录一下删除命令吧,删除用户 tmp 命令为:net user tmp /del
。
Windows 解除 U盘或移动移动硬盘被占用技巧
Windows 在弹出 U盘或移动硬盘时,有时会出现 “该设置正在使用中,请关闭可能使用该设备的所有程序或窗口,然后重试。” 的提示,导致 弹出 USB 大容量存储设备时出现问题,无法弹出。解决该问题需要知道是那个或哪些程序占用该存储设备,然后结束该进程即可。查看存储设备占用程序 Shaun 知道的有两种方法:
- 通过 “Windows 日志”。Windows 每次弹窗提示都会有相应的日志,右键计算机 ==》管理 ==》事件查看器 ==》Windows日志 ==》系统,然后在窗口左侧查找其中有黄色警告的日志信息,找到来源为 Kernel-PnP 的日志,双击该日志即可看到 “进程 ID 为 XXX 的应用程序 XXX 已停止删除或弹出设备 XXX。” 之类的信息,从而知道是哪个进程占用该存储设备,停止该进程即可正常弹出。停止进程一般通过 任务管理器 ==》详细信息,找到对应的 名称 和 PID,右键 ==》结束任务即可。
- 通过 “资源监视器”。右键计算机 ==》管理 ==》性能,打开资源监视器。然后在 “CPU” 栏中找到 “关联的句柄”,在后面的搜索栏中输入存储设备的盘符(D: 、E: 或 F: 等 ),即可显示占用程序的 名称 和 PID,随后在任务管理器中停止该进程即可。
※注: 有时只有 System 进程阻止存储设备弹出,这时可以直接关机了 :),因为 System 进程是系统核心进程,不能结束,结束之后系统会崩溃,并自动关机。当然,如果是其他进程阻止,可以用上述方法正常弹出,一般阻止存储设备弹出的都是 explorer.exe,在停止该进程后,Windows 的任务栏将会消失,所以需要在任务管理器中重新运行该任务(任务管理器 ==》文件 ==》运行新任务, 输入 “explorer” 即可)。
后记
如果以后碰到更多有意思的小技巧再继续和大家分享吧 ↖(^ω^)↗。
参考资料
[1] windows文件夹删不掉怎么办
[2] 巧在Win10右键菜单添加校验文件Hash值命令(MD5、SHA1/256等)
[5] CMD命令(添加删除管理员账户)