PowerShell Out-File向只读文件写入内容的方法

本文介绍使用PowerShell来写文件时,如果遇到只读文件,如何强制覆盖它。

D:\2.txt是一个只读文件,如果我运行一条Out-File输出语句,将得到报错提示:

代码如下:

PS C:\Users\spaybow> "" | Out-File -append d:\2.txt
Out-File : 对路径“D:\2.txt”的访问被拒绝。
所在位置 行:1 字符: 14
+ "" | Out-File <<<<  -append d:\2.txt
    + CategoryInfo          : OpenError: (:) [Out-File], UnauthorizedAccessExc
   eption
    + FullyQualifiedErrorId : FileOpenFailure,Microsoft.PowerShell.Commands.Ou
   tFileCommand

这里说的“对路径“D:\2.txt”的访问被拒绝”,就是因为这个2.txt是一个只读文件。

有时候,我们管不了那么多,必须要强制覆盖时,要怎么样才能神挡杀神、佛挡杀佛呢?幸好,Out-File还提供了一个-Force参数,这个参数加入之后,不管文件是否只读,都可以写入内容了。

代码如下:

PS C:\Users\spaybow> "" | Out-File -append -force d:\2.txt
PS C:\Users\spaybow>

不报错了就是执行成功了!

这里还需要注意一下的是,在执行完这个写文件的命令之后,再来查看一下d:\2.txt,我发现它仍然是只读的状态。这个状态并没有因为被写入了内容而被破坏。
另外,如果当前用户对文件没有写入权限,那么即使使用了-Force参数,也不能写入内容到该文件。

关于PowerShell如何向只读文件写入内容,本文就介绍这么多,希望对您有所帮助,谢谢!

(0)

相关推荐

  • PowerShell Out-File禁止覆盖文件的方法

    本文介绍使用PowerShell来写文件时,如何阻止系统自动覆盖已有的文件. 我们在使用脚本进行文件处理的时候,我们可能不希望使用Ou-File生成的文件覆盖已有的文件.那么怎么实现呢?在Out-File这个CmdLet中,有没有什么参数可以阻止Out-File不声不响的覆盖了已有的文件呢? 答案是-NoClobber参数. NoClobber参数 在Out-File输出到文件时,如果使用了-NoClobber参数,则系统遇到已有文件时,将无法执行成功.下面的例子展示了当d:\1.txt已经存在

  • PowerShell Out-File指定文件编码的方法

    本文介绍使用PowerShell如何来创建一个文本文件,并且文本文件是使用UTF-8编码的. 要创建一个UTF-8编码的文件,不是一件容易的事情.想一想C#中创建一个UTF-8编码的文件洪哥就头疼. 后来,仔细想了一下,我们可以把这个概念偷换一下.我们可以使用Out-File这个cmdlet来输入字符串到一文件的方式来创建一个文件,并且在创建文件时,指定它的编码为UTF-8即可. 也就是说,使用如下命令我们就可以得到一个UTF-8编码的空文件了. 复制代码 代码如下: PS C:\Users\s

  • PowerShell Out-File追加字符串到文件末尾的方法

    本文介绍PowerShell中如何将一个字符串输出到一个文件文件的结尾,即不覆盖原来的内容,只是附加到原文之后. 有这样一个任务:将"This is PowerShell!"这句话,附加到D:\1.txt文件之后. 面对这个任务,如果我们立即去想FileStream对象,那就错了!FileStream是.NET中的传统方法了!在PowerShell中,我们可以使用Out-File这个cmdlet来一步实现将字符串附加到一个文件之后的效果.且看下面的演示: 复制代码 代码如下: PS C

  • PowerShell Out-File向只读文件写入内容的方法

    本文介绍使用PowerShell来写文件时,如果遇到只读文件,如何强制覆盖它. D:\2.txt是一个只读文件,如果我运行一条Out-File输出语句,将得到报错提示: 复制代码 代码如下: PS C:\Users\spaybow> "" | Out-File -append d:\2.txt Out-File : 对路径"D:\2.txt"的访问被拒绝. 所在位置 行:1 字符: 14 + "" | Out-File <<&l

  • Java创建文件且写入内容的方法

    前两天在项目中因为要通过http请求获取一个比较大的json数据(300KB左右)并且保存,思来想去,最后还是决定将获取到的json数据以文件的形式保存下来,每次使用的时候去读取文件就可以了. 废话不多说了,直接上代码. 以下是代码截图,文章结尾会有完成的代码文件可供下载. 创建文件方法: 写入文件内容方法: 删除文件方法: 测试: 关于文件创建,写入内容,删除.可以根据自己的情况再稍作修改. 以下是代码类. package com.file.run; import java.io.Buffer

  • Android开发实现读取Assets下文件及文件写入存储卡的方法

    本文实例讲述了Android开发实现读取Assets下文件及文件写入存储卡的方法.分享给大家供大家参考,具体如下: 调用一个反编译的.so文件,查看起加密和解密情况,需要解析上万的数组,而so文件加密解密都是通过Byte来进行,又需要把String字符串转化为 Byte,当把数据直接写在代码中就会提示多Byte数组过大.最后把数组写到Assets文件加下,读取txt文本文件. 读取Assets方法如下: public String getFromAssets(String fileName) {

  • php逐行读取txt文件写入数组的方法 原创

    本文实例讲述了php逐行读取txt文件写入数组的方法.分享给大家供大家参考.具体如下: 假设有user.txt文件如下: user01 user02 user03 user04 user05 user06 user07 user08 user09 user10 user11 user12 逐行读取user.txt并写入数组的方法如下: $file = fopen("username.txt", "r"); $user=array(); $i=0; //输出文本中所有

  • php遍历替换目录下文件指定内容的方法

    本文实例讲述了php遍历替换目录下文件指定内容的方法.分享给大家供大家参考,具体如下: 在php中目录访问需要遍历了然后文件需要一个个打开进行访问操作了,下面我们来看一段php 替换目录下文件指定内容,具体如下: /**************************** * 获取目录下的所有文件 * [$dir] 文件夹路径 ****************************/ function deepScanDir($dir) { $fileArr = array (); $dirA

  • python查看文件大小和文件夹内容的方法

    一旦有办法处理文件路径,就可以开始搜集特定文件和文件夹的信息.os.path 模块提供了一些函数,用于查看文件的字节数以及给定文件夹中的文件和子文件夹. • 调用 os.path.getsize(path)将返回 path 参数中文件的字节数. • 调用 os.listdir(path)将返回文件名字符串的列表,包含 path 参数中的每个文件(请注意,这个函数在 os 模块中,而不是 os.path). 下面是我在交互式环境中尝试这些函数的结果: >>> os.path.getsize

  • shell之创建文件及内容的方法示例

    shell之创建文件夹: [root@vbox-nginx shell_command]# vi ./mkdir.sh #!/bin/sh parentDir="/media/sf_Project/self/smarty-frame/application/$1" fileName=$2 dirAndName=$parentDir/$fileName if [ ! -d "$dirAndName" ];then mkdir $dirAndName echo &quo

  • maven为MANIFEST.MF文件添加内容的方法

    MANIFEST.MF 打开Java的JAR文件我们经常可以看到文件中包含着一个META-INF目录, 这个目录下会有一些文件,其中必有一个MANIFEST.MF,这个文件描述了该Jar文件的很多信息,下面将详细介绍MANIFEST.MF文件的内容. 公共内容 Manifest-Version 用来定义manifest文件的版本,例如:Manifest-Version: 1.0 Created-By 声明该文件的生成者,一般该属性是由jar命令行工具生成的,例如:Created-By: Apac

  • Android中没有插入SD情况下的文件写入和读取方法

    在Android开发时会遇到如下一种场合 希望应用下载到当前应用的根目录下,而非SD卡中 然后可以随时被该应用或其他应用访问这个文件,即具有被全局读取的权限 此时可以利用上下文的本地文件输出流进行文件写入 注意要为文件赋予可写可读的权限,否则当读取该文件时会报错 FileOutputStream fos = context.openFileOutput(saveFileName, Context.MODE_WORLD_WRITEABLE | Context.MODE_WORLD_READABLE

  • Angular2里获取(input file)上传文件的内容的方法

    最近在用Angular2,需要有一个上传文件的功能,但是又不想用库,所以直接用原生的input file 标签. <input type="file" id="newUpload" > 然后想获取上传的内容,于是先想了个愚蠢的方法,先通过id获取到这个input标签,然后再获取其中上传的内容 const uploadsFile = document.getElementById(name).files[0]; 结果就报错了.然后看提示说HTMLEleme

随机推荐