前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PowerShell实战:Get-Content命令使用详解

PowerShell实战:Get-Content命令使用详解

原创
作者头像
IT技术分享社区
发布2024-02-09 20:59:40
2250
发布2024-02-09 20:59:40
举报
文章被收录于专栏:运维运维

一、Get-Content介绍

Get-Content 主要作用是获取路径指定位置的项(文本类文件)的内容,例如文件中的文本或函数的内容。 对于文件,内容一次读取一行,并返回对象的集合,每个对象表示一行内容。

支持的格式主要包括:

文本:txt 等

脚本文件:bat、psl、vbs、sh等

后端文件:java、cs、cpp等

前端文件:html、css、js、vue、ts 等

配置文件:yml、xml、config 等

说明:

PowerShell 3.0以后的版本开始支持从项的开头或末尾获取指定数量的行。

对于包含中文字符串的话建议指定编码格式为utf8编码避免出现乱码的情况:-encoding utf8

二、语法格式

Get-Content

[-ReadCount <Int64>]

[-TotalCount <Int64>]

[-Tail <Int32>]

[-Path] <String[]>

[-Filter <String>]

[-Include <String[]>]

[-Exclude <String[]>]

[-Force]

[-Credential <PSCredential>]

[-Delimiter <String>]

[-Wait]

[-Raw]

[-Encoding <Encoding>]

[-AsByteStream]

[-Stream <String>]

[<CommonParameters>]

三、参数详解

  • -ReadCount:设置每次通过管道发送的内容行数。默认值为 1。 当值为0时一次发送所有文件内容。它的作用时影响显示内容所需要的时间,值越大第一行显示时间会变长,但合计的时间会减少,主要是针对哪些比较大的文件来说的。一般运维使用较少。
  • -TotalCount:设置文件读取的行数(从文件头开始)也可以使用 head、first 等价替代,参数值为负数会读取整个文件内容。
  • -Tail:设置文件读取的行数(从文件尾部开始),等价于last,参数值为负数会读取整个文件内容。排查日志的话使用比较频繁。
  • -Path:设置获取文件的路径,可以使用通配符,因此Get-Content 可以一次性读取多个文件或者多个目录的内容。
  • -Filter:用来设置限定 Path 参数的筛选条件。
  • -Include:包含一个或多个项作为字符串数组,同样是作为Path筛选条件使用
  • -Exclude:排除一个或多个项作为字符串数组,同样是作为Path筛选条件使用
  • -Force:可以替代只读属性或创建目录以完成文件路径(可以针对操作系统隐藏文件使用)。一般使用不多。
  • -Credential:用户凭据相关,很少使用。
  • -Delimiter:设置在读取文件时将文件划分为对象的分隔符,默认是\n。 可以使用此参数将大文件拆分为较小的文件,分隔符不被丢弃。
  • -wait:设置输出所有现有行后,使文件保持打开状态。 处于等待状态, Get-Content 每秒检查一次文件,并输出新行(如果存在)。比较常见的是tomcat日志文件,可以采用这种方式监控日志的变化,排查问题。
  • -Raw:设置忽略换行符,使得文件一行展示(会保留换行符)。
  • -Encoding:设置获取文件内容的编码格式。 默认值为 utf8NoBOM,推荐使用utf8避免出现乱码。支持的格式有(ascii、ansi、bigendianunicode、unicode、utf8等等)
  • -AsByteStream:设置文件内容应作为字节流进行读取,是6.0版本之后新增的功能参数。目前微软官方的例子运行也有异常。
  • -Stream:从文件中获取指定的备用 NTFS 文件流的内容。 输入流名称。不支持通配符。仅限Windows操作系统使用。

四、使用案例

4.1 获取文件内容

4.2 获取文件前三行内容

4.3 获取文件最后三行内容

4.4通过管道方式获取最后两行内容

注意:该方式获取速度更快,对于大文件检索非常有用。

4.5使用逗号作为分隔符

4.6 Filter方式读取多个文件

获取指定目录下所有txt后缀的文件内容

4.7 Include方式读取多个文件

使用Include获取指定目录下所有txt后缀的文件内容

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Get-Content介绍
  • 二、语法格式
  • 三、参数详解
  • 四、使用案例
    • 4.1 获取文件内容
      • 4.2 获取文件前三行内容
        • 4.3 获取文件最后三行内容
          • 4.4通过管道方式获取最后两行内容
            • 4.5使用逗号作为分隔符
              • 4.6 Filter方式读取多个文件
                • 4.7 Include方式读取多个文件
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
                http://www.vxiaotou.com