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(别名是%)去遍历它。非常方便,前面你应该已经看到“太阳”的例子了!

(0)

相关推荐

  • Powershell实现编写和运行脚本

    一个Powershell仅仅是一个包含Powershell代码的文本文件.如果这个文本文件执行,Powershell解释器会逐行解释并执行它的的语句.Powershell脚本非常像以前CMD控制台上的批处理文件.您可以通过非常简单的文本编辑工具创建Powershell脚本. 通过重定向创建脚本 如果您的脚本不是很长,您甚至可以直接在控制台中要执行的语句重定向给一个脚本文件. PS E:> '"Hello,Powershell Script"' > MyScript.ps1

  • Windows PowerShell是啥?看完本文你就懂它了

    引子 一直很羡慕Linux的命令提示符(当然他们叫Shell).正则表达式,管道,各种神奇的命令,组合起来就能高效完成很多复杂的任务.效率实在是高.流了n年的哈喇子以后,终于有幸用上了Win7,邂逅了cmd的升级版:Windows PowerShell.从此暗爽无比,原来Windows下也有这样的利器呀~ 看看下面的Windows脚本,不到15行有效代码.在Win7下只要右击脚本文件,选择Run with PowerShell,就会自动找到最占内存的10个进程,然后将它们占用的内存画成一个三维饼

  • 25个常用PowerShell命令总结

    尽管Windows PowerShell已经出现一段时间了,习惯命令行的管理员可能对了解PowerShell功能的基础很感兴趣. 下面我们看看能由Windows PowerShell完成的最常见的25个任务.不止是这些任务很简单,显示语句的命令架构和其他PowerShell命令也很简单.掌握好这些基本命令是成为PowerShell专家的必经之路. 入门级别 1. 像文件系统那样操作Windows Registry--cd hkcu: 2. 在文件里递回地搜索某个字符串--dir –r | sel

  • PowerShell 入门基础教程

    Windows PowerShell 是专为系统管理员设计的新 Windows 命令行外壳程序.该外壳程序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用. 现在win2008,win7都集成了PowerShell,系统不带PowerShell可以自行到官方下载安装即可. 下载地址:http://www.jb51.net/jiaoben/67200.html 解读: 1.什么是交互式提示? 答:交互式提示就像打开一个cmd窗口,在里面执行一个ping命令一样,它会动态的输入结果.也可以

  • 浅谈CMD和win powershell的区别

    cmd是和powershell都可以做命令行交互,批处理和powershell脚本功能也相当. 我不知道你怎么理解cmd,但下面是powershell是基于.net的,只要你足够了解.net,你可以使用她做任何你想做的事情. Windows PowerShell 是专为系统管理员设计的新 Windows 命令行 shell.Windows PowerShell 包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用. 与接受和返回文本的大多数 shell 不同,Windows PowerSh

  • Win8系统中使用PowerShell安装APPX应用命令介绍

    在Windows 8平台上,可以安装最新的LOB(业务线)应用程序,即后缀为.APPX的程序.APPX程序一般都需要开发者提交给Windows应用商店,由它审核后统一发布,其他用户通过应用商店下载安装.如果我们自己开发的一个APPX程序,我只想给自己或少部分人用,那也不必走应用商店的复杂流程,可以自己安装在自己的设备上. 本文就介绍如何使用PowerShell来安装APPX程序.当然,这里要注意,既然是APPX程序,那一定是Windows 8系统:既然是Windows 8,那一定是PowerSh

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

    在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

  • Windows Powershell 介绍和安装

    Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境.你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆. powershell需要.NET环境的支持,同时支持.NET对象.微软之所以将Powershell 定位为Power,并不是夸大其词,因为它完全支持对象.其可读性,易用性,可以位居当前所有shell之首. 当前powershell有四版本,分别为1.0,2.0,3.0 ,4.0 如果您的系统是window7或者Windows Ser

  • 使用 powershell 创建虚拟机

    在进行与 azure 相关的自动化过程中,创建虚拟主机是避不开的操作.由于系统本身的复杂性,很难用一两条简单的命令完成虚拟主机的创建.所以专门写一篇文章来记录使用 PowerShell 在 azure 上创建虚拟主机(Ubuntu 服务器). 虚拟主机虚拟主机需要与其他的一些基础性组件关联在一起才能提供可用的服务,这些组件包括:网卡.public IP 地址.虚拟网络.网络安全组.存储等.下图包含了新建一个虚机所需要的其他组件: 也就是说在我们创建虚机的同时也要把这些组件一一的创建出来. 定义变

  • Java实现查找文件和替换文件内容

    目录 一.题目描述-查找指定类型的文件 1.题目 2.解题思路 3.代码详解 4.多学一个知识点 二.题目描述-用树型结构显示路径 1.题目 2.解题思路 3.代码详解 三.题目描述-查找并替换文件内容 1.题目 2.解题思路 3.代码详解 一.题目描述-查找指定类型的文件 1.题目 题目:在操作系统中,通过文件的扩展名来区别不同类型的文件 .实现根据用户输入的扩展名,列出指定文件夹内该类型文件的文件名,文件大小和修改时间. 2.解题思路 创建一个类:FilesList FilesList类继承

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

    我只能说,使用PowerShell来读取文本文件实在是一件太简单的事情了. Get-Content,获取指定位置的项的内容. 语法:Get-Content [-Path] <文件路径> [-Path]由方括号引起,表示可以写,也可以不写:不写则默认后面是文件路径,写了就指名道姓的说后面是文件路径. 直接运行这样一个命令,PowerShell将会把文件的内容输出到控制台上,如果你是想看看文件的内容,那这样做就Perfect! 但有时候,你想玩点高难度的运作--想把文件翻开来对里面的内容进行修改,

  • 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="

  • python实现对csv文件的列的内容读取

    以下代码测试在python2.7 mac上运行成功 import csv with open('/Users/wangzhao/Downloads/test.csv', 'U') as csvfile: reader = csv.DictReader(csvfile) column = [row['Employee Name'] for row in reader] print column import csv with open('/Users/wangzhao/Downloads/test

  • java读取文件里面部分汉字内容乱码的解决方案

    java读取文件里面部分汉字内容乱码 读取一个txt文件,到代码中打印出来,发票有部分汉字的内容是乱码的. 我开始的方式是这样的, 如下,这是完全错误的,汉字是两个字节的,如果每次读固定个字节,可能会把汉字截断. 就会出现部分乱码的情况. package susq.path;​ import java.io.File; import java.io.FileInputStream; import java.io.IOException; ​ /** * @author susq * @since

  • R语言批量读取某路径下文件内容的方法

    R刚入门的时候,能够正确读取单个文件就觉得小有成就,随着时间的积累,单一文件地读取已经不能满足需求了,此时,批量地做就是解放双手地过程. 使用for循环把下载地TCGA数据读入R语言并转换成数据框 使用三个for循环来完成,这是第一个for循环. 1. 把所有数据读入在一个文件夹中 dir.create("data_in_one") #创建目标文件夹,也可右键创建 dir("rawdata/") #查看原路径的内容 for (dirname in dir("

  • python 读取文件并替换字段的实例

    如下所示: fp = open(''test2.txt','w') #打开你要写得文件test2.txt lines = open('test1.txt').readlines() #打开文件,读入每一行 for s in lines: fp.write( s.replace('love','hate').replace('yes','no')) # replace是替换,write是写入 fp.close() # 关闭文件 import os import re f_path = r'c:\a

  • python-docx文件定位读取过程(尝试替换)

    以上是开头,安装完后需要导入转载的代码读取所有docx文件中的内容发现没有读取到表格数据: from docx import Document def readDocx(docName): fullText = [] doc = docx.Document(docName) paras = doc.paragraphs for p in paras: fullText.append(p.text) return '\n'.join(fullText) 尝试精确定位第一个表格中第一个单元格的数据(

  • Python基于正则表达式实现文件内容替换的方法

    本文实例讲述了Python基于正则表达式实现文件内容替换的方法.分享给大家供大家参考,具体如下: 最近因为有一个项目需要从普通的服务器移植到SAE,而SAE的thinkphp文件结构和本地测试的有出入,需要把一些html和js的引用路径改成SAE的形式,为了不手工改,特地速成了一下Python的正则表达式和文件操作.主要要求是将某目录下的html和js里面的几个路径变量分别更改成相应的形式,匹配文件名的时候用了正则 import os import re #all file in the dir

  • 详解linux下批量替换文件内容的三种方法(perl,sed,shell)

    在建设本网站的时候,发现新建了很多的网页,突然发现,每个文件都需要进行修改一样的内容,一个一个打开很是麻烦,所以,总结了一下如何快速修改一个目录下多个文件进行内容替换.第三种方法用的不多 方法一 使用perl ,命令如下: 复制代码 代码如下: find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g' 方法二 使用sed命令如下: 复制代码 代码如下: sed -i "s/原字符串/新字符串/g" `grep 原字符串

随机推荐