Windows 阻止DEL命令删除特定文件

Windows 阻止DEL命令删除特定文件,windows,cmd,del,Windows,Cmd,Del,我是第一学期的学生,到处都找不到运气, 我在作业中有两个基本相同的问题——或者至少我是这么想的 第一:您想保护自己不被DEL命令删除名为PROG.EXE的程序。指定一些方法来实现此操作 第二:编写一个命令,通过该命令,可以通过使用命令删除文件来保护文件Pass.log 有没有办法在cmd中保护它们不受DEL命令的影响 在windows上: 您可以将文件设置为只读。(右键单击文件->属性->常规选项卡->选中“只读”复选框) 或者使用命令:Attrib+R 1.txt 使用安全选项卡,您可以在

我是第一学期的学生,到处都找不到运气, 我在作业中有两个基本相同的问题——或者至少我是这么想的

第一:您想保护自己不被DEL命令删除名为PROG.EXE的程序。指定一些方法来实现此操作

第二:编写一个命令,通过该命令,可以通过使用命令删除文件来保护文件
Pass.log


有没有办法在cmd中保护它们不受DEL命令的影响

在windows上:

  • 您可以将文件设置为只读。(右键单击文件->属性->常规选项卡->选中“只读”复选框) 或者使用命令:
    Attrib+R 1.txt

  • 使用安全选项卡,您可以在文件的修改权限上添加“拒绝”。(右键单击文件->属性->安全选项卡->编辑每一行,检查修改附近的拒绝)

在Unix/Linux上: 您可以使用
chmod
命令删除每个人的写入权限。如
chmod-w PROG.EXE

对于第二个任务:(在windows上)
  • Attrib+R 1.txt
    命令将文件设置为只读
  • icacls 1.txt/deny:M
    命令将设置用户修改和删除的安全拒绝。您应该将您的用户而不是
  • icacls 1.txt/deny:D
    命令将仅阻止删除文件,而不阻止修改文件(即使是空文件)

是的,这样它就不再是可删除的了,我知道,对于第一个问题,这个解决方案是完美的。但对于第二个问题,他要求的是一个执行相同任务的命令,即我丢失的部分:不要在拒绝访问控制条目(ACE)中使用简单或通用的权限,如“M”、“D”和“GW”。简单和通用权限实际上是一组权限,包括所需的权限,如
同步
文件读取属性
。拒绝设置会使用户无法访问所有正常的文件。拒绝ACE应该只拒绝特定的权限,例如“DE”(删除)或“DC”(删除子项),例如
icacls”。/deny:(DC)
icacls“1.txt”/deny:(DE)
。注意,如果我们不拒绝删除包含目录(“.”)上的子项访问,用户仍然可以删除文件。类似地,在Unix中,删除文件的能力由对包含目录的写访问控制。拒绝对文件的写访问不会阻止删除它。此外,许多Unix系统都有文件属性和标志的概念,包括不可变性,但它可能需要超级用户访问。例如,在Linux中,我们可以将文件标记为不可变的,例如通过
sudo chattr+i“1.txt”
并通过
lsattr“1.txt”
读取属性。在UNIX/Linux中,您可以为每个命令创建别名,如
alias del='echo do not delete a file'
(未测试)。这将用前面提到的错误消息替换常规的
del
命令,但我不知道在Windows中是否可以这样做。