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

标签:
PowerShell,读取文件内容,替换文件内容,读取限定行

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。