PowerShell读取文件内容、替换文件内容、读取限定行的例子_PowerShell

我只能说,使用PowerShell来读取文本文件实在是一件太简单的事情了。

Get-Content,获取指定位置的项的内容。

语法:Get-Content [-Path] <文件路径>
[-Path]由方括号引起,表示可以写,也可以不写;不写则默认后面是文件路径,写了就指名道姓的说后面是文件路径。

直接运行这样一个命令,PowerShell将会把文件的内容输出到控制台上,如果你是想看看文件的内容,那这样做就Perfect!

但有时候,你想玩点高难度的运作——想把文件翻开来对里面的内容进行修改,那后面你可以用管道来把它传出去,或者直接把它赋值给一个变量。举例如下:

复制代码 代码如下:

$file = Get-Content "d:\1.txt"

Get-Content "d:\1.txt" | %{Write-Host $_.Replace("日","太阳")} #这样就可以实现把d:\1.txt的内容,逐一输出,并把“日”字,替换为太阳。

获取文件的前N行,这也是一个有趣的事。可以用一句PowerShell来搞定。举例如下:

复制代码 代码如下:

Get-Content d:\1.txt -totalcount 100 | set-Content top100.txt

说明:这里的Set-Content top100.txt是把前面一个语句的结果,写一个新的文件——top100.txt

如果这个时候,你想获取文件的第100行,你会不会想到去做一个很复杂的循环?如果是,那说明你有很好的编程素养。但是PowerShell告诉你不用如此麻烦。举例如下:

复制代码 代码如下:

(Get-Content d:\1.txt -TotalCount 100)[-1]

说明:啥!你看到了啥?!如果你简单的看()[-1],那是不是像数组呢?-1表示最后一个数组元素,那就表示前100行的最后一行,那是不是第100行呢?!

最后要说一下,这个命令返回的是一个对象数组,可以用ForEach-Object(别名是%)去遍历它。非常方便,前面你应该已经看到“太阳”的例子了!

时间: 2024-07-30 23:26:17

PowerShell读取文件内容、替换文件内容、读取限定行的例子_PowerShell的相关文章

PowerShell包含另一个脚本文件和获取当前脚本所在目录的方法例子_PowerShell

本文介绍在PowerShell脚本中,如何获取脚本文件(.ps1文件)所在的目录.本文介绍在方法适用于PowerShell 3.0. 在PowerShell 3.0中,有一个变量可以很方便的获取脚本所在的目录.我们在e:\ps\script1.ps1和script2.ps1,内容分别如下: script1.ps1内容: 复制代码 代码如下: Write-Host "This is script1.ps1" Write-Host "Let me call script2.ps1

PowerShell中使用ArrayList实现数组插入、删除、添加例子_PowerShell

PowerShell中对数组进行插入.删除.添加数组元素的操作是很不方便,而且效率也是很低下的.那是因为数组对象本身并没有插入和删除的功能,每次的操作都是将数组整个拷贝到一个新的数组中.这个过程太消耗资源. 如果我们把Array对象转换为ArrayList对象,那一切问题都解决了.ArrayList有InsertAt()和RemoveAt()方法,所以在处理数组元素的插入和删除操作时更方便快捷,而且事实上效率也更高. $array = 1..10 [System.Collections.Arra

PowerShell中使用Get-Date获取日期时间并格式化输出的例子_PowerShell

在PowerShell中有一个Get-Date的cmdlet,使用它可以直接返回当前的日期和时间.使用-Format参数可以返回当前的年.月.日.时.分.秒等. Get-Date的直接使用 在PowerShell中直接调用Get-Date,可以返回当前的日期和时间,包括年.月.日.时.分.秒.举例如下: 复制代码 代码如下: PS C:\Users\zhanghong> Get-Date 2013年9月9日 22:26:56 Write-Host中使用Get-Date 注意:在Write-Hos

Android 读取assets和raw文件内容实例代码_Android

android之文件操作--读取assets和raw文件下的内容 1.分别创建assets文件夹和res/raw文件夹:(要注意的raw文件是在res下new,然后创建一个名字为raw的文件夹)       2.创建两个txt文件,复制到asset和raw文件夹中: 3.实现的效果: 4.实现代码: (1)布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android

python-Python 读取Latin1编码的文件,按行输出时缺失内容

问题描述 Python 读取Latin1编码的文件,按行输出时缺失内容 各位大神好,小弟最近开始接触python,在读取一个以Latin1编码的文件并按行输出到屏幕时字符串少了一部分,输出前换成其他编码还是不行. 这是直接输cat输出的内容 这是我读取后的内容 文件的读取方式是这样的 输出是这样的 麻烦各位大神帮忙看看是什么情况

java中读取一个文件一中的内容,这个文件的每行都是一个词,在文件二中查找文件一中词出现的次数

问题描述 java中读取一个文件一中的内容,这个文件的每行都是一个词,在文件二中查找文件一中词出现的次数 String lineTxt1 = new String(); String lineTxt2 = new String(); while((lineTxt1 = bufferedReader1.readLine()) != null) { while((lineTxt2 = bufferedReader2.readLine()) != null){ if(lineTxt2.indexOf(

Android 读取assets和raw文件内容实例代码

android之文件操作--读取assets和raw文件下的内容 1.分别创建assets文件夹和res/raw文件夹:(要注意的raw文件是在res下new,然后创建一个名字为raw的文件夹) 2.创建两个txt文件,复制到asset和raw文件夹中: 3.实现的效果: 4.实现代码: (1)布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="

jsp读取CSV文件如何替换csv文件?

问题描述 jsp读取CSV文件如何替换csv文件? 我遇到一个问题,csv文件内容如下: car118499ActivePreActivecar2ActivePreActivecar321138Active40712PreActivecar4ActivePreActive 我想在jsp中显示 car1 car2 car3 car418499 21138 40712

replace-利用java io逐行操作文件并替换内容

问题描述 利用java io逐行操作文件并替换内容 A文件: as1 dfg1 hjkl1 逐行读取A文件的内容,将1替换成 一 后将替换后的内容写到B文件中 解决方案 BufferedReader readBuffer = new BufferedReader(new FileReader( new File("D:/aaaa.txt"))); BufferedWriter write = new BufferedWriter(new FileWriter(new File(&quo