利用Windows命令行快速隐藏文件

个人电脑中总有一些敏感或是涉密的内容不想轻易被人看到,所以隐藏文件便变成了一定程度上的刚需。

下面介绍的利用命令行隐藏文件/文件夹的方法,相较于使用第三方软件进行加密、隐藏,优点在于方便快捷,在任何 Windows 电脑上均可立马进行操作,见效快,缺点则在于隐藏并不彻底,可防小白,难防高手。

隐藏:

在「文件浏览器」中找到你想要隐藏的文件/文件夹,下文统一用「文件」同时指代「文件以及文件夹」。在浏览器路径栏中输入 cmd 打开命令行窗口。

打开 cmd

命令行输入命令:

attrib + "你想要隐藏的文件名" +s +h (输入文件名时不要加括号)

Tips: 在输入文件名的时候可以使用 Tab 键进行 快速补全 ,即只需输入文件名的前几个字符然后接 Tab 键,这样做既可以减少输入时间也可保证输入的准确性。

来看看效果图:

文件夹隐藏效果演示

隐藏以后,文件便在「文件浏览器」中消失了,即使你将「显示隐藏的项目」勾选上,已隐藏的文件也不会显示出来,便达到了我们想要隐藏文件的目的。


显示隐藏文件时依然不显示

原理:

我们打开 「文件浏览器」---> 「查看-选项」:

打开查看选项卡

在弹出的「文件夹选项」中切换到「查看」选项卡:


「查看」选项卡

图中红框内便是我们所利用到的原理,我们再来看一看刚才进行设置时用到的命令:

attrib "文件名" +s +h

  • attrib 命令用来修改文件的属性
  • +s 参数将文件设置为系统文件
  • +h 参数将文件设置为隐藏文件

通过这个命令,我们将想要隐藏的文件属性设置为了「隐藏的系统文件」,所以自然是在「文件浏览器]中看不到它的踪影了。

普通用户一般会知道怎么显示「隐藏文件],但很少会注意到要显示「隐藏受保护的操作系统文件」,而且进行取消勾选「隐藏受保护的操作系统文件」操作时,系统会弹出一个措辞颇为严厉的警告窗口,足以将大部分普通用户吓阻回去。

还原

而如果我们想要在「文件浏览器」中重新显示被隐藏的文件,只需将「隐藏受保护的操作系统文件」取消勾选,以及将「 显示隐藏的文件、文件夹和驱动器」进行勾选即可将被隐藏的文件重新在「文件浏览器」中显示出来。抑或是你可以选择在命令行窗口中使用 ls 命令,将所有文件显示出来。

ls 命令

显示出来以后,可以利用相反的命令:

attrib "文件名" -s -h 

即可将文件恢复到隐藏前的状态。

用批处理 .bat 实现

如果你还是觉得每次隐藏、还原都要自己输入命令过于繁琐,那么你可以使用下面的 .bat 文件来帮助你轻松完成同样的效果。


批处理效果演示

在任意位置新建文本文档,将下列代码段直接复制粘贴到空文本中,将文本文档的扩展名改为 .bat 即可完成制作。

:folderhider
@echo off
title 快速隐藏/还原文件
echo 请输入数字选择需要的操作,回车确认:
:reinp
echo 1. 隐藏
echo 2. 还原
set /p hj=
if %hj%==1 goto hi
if %hj%==2 goto sh
echo 命令输入错误,请重新输入:
goto :reinp
:hi
set/p folderr=请输入你想要隐藏的文件/文件夹或直接拖放:
if exist "%folderr%" goto hider
if not exist "%folderr%" goto noexist
:noexist
echo 你输入的文件/文件夹不存在,请重新输入
goto :hi
:hider
attrib +h +s %folderr%
echo %DATE% %TIME% 隐藏了: %folderr% >>隐藏日志.txt
echo 文件已隐藏成功,按任意键离开 & pause >nul
exit
:sh
set /p showern=请输入你想要还原的文件/文件夹:
if exist "%showern%" goto shower
if not exist "%showern%" goto noexist1
:noexist1
echo 你输入的文件/文件夹不存在,请重新输入
goto :sh
:shower
attrib -h -s %showern%
echo %DATE% %TIME% 还原了: %showern% >>隐藏日志.txt
echo 文件已还原成功,按任意键离开  & pause >nul
exit 

说明:

  • 默认设置为会自动生成一个「隐藏日志」的 TXT 文件来记录你隐藏及还原的操作,如需取消此功能,直接删除代码中含有「隐藏日志」的两行代码即可。
  • 可以直接拖放文件到窗口内

小结

整个方法的原理以及过程其实十分简单,说白了就是利用了「文件浏览器」对于系统文件出于安全考虑,默认不显示在「文件浏览器]中的特性而已。就方法本身而言,安全系数并不高,但因为你可以将想要隐藏的文件任意命名,以及放在任意路径之下,导致外人基本没有可能找到其藏身之处,也就谈不上后续的破解了。所以综合考虑下来,这个方法具有其实用性以及可行性。

时间: 2024-11-02 11:42:27

利用Windows命令行快速隐藏文件的相关文章

利用PHP命令行模式采集股票趋势信息_php实例

话不多说,下面直接来看实现代码. 主要函数只有一个类实现(stock.class.php): <?php class StockClass{ public $stockId; public function __construct($stockId){ $this -> stockId = $stockId; } private function getUrl(){ return "http://stockpage.10jqka.com.cn/" . $this ->

利用PHP命令行模式采集股票趋势信息

话不多说,下面直接来看实现代码. 主要函数只有一个类实现(stock.class.php): <?php class StockClass{ public $stockId; public function __construct($stockId){ $this -> stockId = $stockId; } private function getUrl(){ return "http://stockpage.10jqka.com.cn/" . $this ->

怎样从Windows命令行启动MySQL

要想从命令行启动MySQLd服务器,你应当启动控制台窗口(或"DOS window")并输入命令: C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld 根据系统中MySQL安装位置的不同,前面的例子中使用的路径也不同. 在非NT版本的Windows中,在后台启动mysqld.也就是,服务器启动后,你应当可以看见后面的命令提示.如果你用该方法在Windows NT.2000.XP或2003中启动服务器,服务器则在前台运行,

windows命令行修改ip地址

  windows命令行修改ip地址 在管理员模式下输入如下命令 即可设置静态ip地址: netsh int ip set addr "本地连接" static ip mask gateway

Windows命令行环境变量的快捷配置

  如下图: 现在我们通过命令行这种更加快捷的方式来配置.在Windows 命令行命令set用于查看和设置命令行环境的环境变量. 1)查看全部环境变量 Set 2)查看指定名称的环境变量,比如查看classpath Set PropertiesName 如果指定的名称不存在,则会报错. 并且查看的时候,还可以匹配查看. 3)修改环境变量 Set PropertiesName = Value 4 )创建心的环境变量 Set NewPropertiesName = Value 当环境变量不存在的时候

windows命令行中java和javac、javap使用详解(java编译命令)_java

如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行.进入如图所示的画面: 可知,当前默认目录为C盘Users文件夹下的Administrator文件夹.一般而言,我们习惯改变当前目录.由于windows有磁盘分区,若要跳到其他磁盘,例如E盘,有几种方法: 1.输入命令: pushd 路径(此命令可将当前目录设为所希望的任一个已存在的路径) 2.输入命令: e:  转移到e盘,然后再输入 cd 转移到所希望的已知路径. 如图: 希望在windows命令行下使用jav

Windows命令行命令集锦

原文:Windows命令行命令集锦 转自:http://www.me2wg.com/bbs/forum.php?mod=viewthread&tid=15830 winver---------检查Windows版本  wmimgmt.msc----打开windows管理体系结构(WMI)  wupdmgr--------windows更新程序  wscript--------windows脚本宿主设置  write----------写字板  winmsd---------系统信息  wiaac

python 读写-python 调用windows 命令行

问题描述 python 调用windows 命令行 def start(count): log_name ='c:log' +str(count) cmd = 'c:tooltool.exe > ' + log_name os.popen(cmd) 在windows环境下执行tool.exe重定向 循环处理多了 会报错 close failed in file object destructor:IOError: [ERROR 0] Error请问是什么原因? 解决方案 导出的文件打开失败?或者

数据库-windows命令行指令输入密码命令

问题描述 windows命令行指令输入密码命令 现在有个问题就是我需要在命令行执行mysql的一条指令可以将本地的sql文件直接读取到数据库中.直接在命令行执行的时候回车后会让你输入数据库密码.输入完成后即可执行成功.现在我想把这一步骤写在一个dat文件中.请问应该使用什么命令?最好能把可执行的命令写出来.谢谢大神们 现在要执行的语句是:mysql -u root -p sa<c:1.sql 解决方案 用mysqlimport导入数据库