Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用out-file时避免换行

使用out-file时避免换行
EN

Stack Overflow用户
提问于 2010-04-20 13:44:33
回答 2查看 18K关注 0票数 17

我对我正在编写的一个小PowerShell脚本感到有点沮丧。

基本上,我循环遍历文本文件,根据正则表达式模式数组检查每一行。结果通过管道传递到文件外cmdlet,后者将结果追加到另一个文本文件中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Get-ChildItem $logdir -Recurse -Include @('*.txt') | Get-Content | ForEach-Object { 
Select-String $patterns -InputObject $_ | Out-File $csvpath -Append -Width 1000 }

我的问题是,我不能让文件外省略它在$csvpath后面的文件中创建的那些额外的换行符(每行后面三个)。我可以使用.NET框架类来实现相同的功能,但我更愿意使用纯PowerShell ;-)

任何帮助都是非常感谢的。

凯文

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-04-20 19:37:36

为什么不使用Add-Content

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gci $logdir -rec *.txt | gc | select-string $pattern | add-content $csvpath

您不需要指定宽度和-append开关,默认情况下文件大小不是双倍的(尽管您可以指定编码),而且看起来像您这样的空行没有问题。

票数 11
EN

Stack Overflow用户

发布于 2010-04-20 15:22:12

请记住,Select-String输出的是MatchInfo对象,而不是字符串-如以下命令所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gci $logdir -r *.txt | gc | select-string $patterns | format-list *

在将MatchInfo对象输出到文件之前,您要求将其隐式呈现为字符串。出于某些我不明白的原因,这会导致输出额外的空行。您可以通过指定仅将Line属性输出到文件来修复此问题,例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gci $logdir -r *.txt | gc | select-string $patterns | %{$_.Line} | 
    Out-File $csvpath -append -width 1000
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2675552

复制
相关文章
使用ES6模板字符串时怎么不带换行符换行代码避免eslint报max-len错误
在现代前端开发中,es6的模板字符串可以说是除了let const之外我们使用得最多的es6新特性了。然而,我们经常会遇到一个问题就是代码换行问题,以前写字符串换行时,我们都是通过 + 拼接字符串的,这样最后的拼接结果也是正常的字符串,例如
fastmock
2022/07/13
1.9K0
python编辑时怎样换行_python怎么换行输入[通俗易懂]
在python中,Python 用反斜线 (“\”) 作为续行符(换行符),这里以python3.5为例。首先运行终端或者cmd命令行(windows下)。执行python3.5的命令。
全栈程序员站长
2022/07/30
11.8K0
python编辑时怎样换行_python怎么换行输入[通俗易懂]
使用Docker时应该避免这10 件事…
容器可以解决很多问题,并且具有诸多优势,当你投身其中时便会发现其奥妙所在。 第一:容器是不可变的 - 操作系统,库版本,配置,文件夹和应用程序都包装在容器内。 您可以使用通过相同QA测试的镜像,使产品具有相同的表现。 第二: 容器是轻量级的 - 容器的内存占用很小。没有成百上千的MB,容器只会分配主进程的内存。 第三: 容器是快速的 - 你可以像一个典型的linux进程一样快速启动一个容器。只需要几秒钟,您就可以启动一个新的容器。 然而,许多用户仍然像对待典型的虚拟机那样对待容器。他们似乎都忘记了容器的重要
静一
2018/03/27
7610
使用Docker时应该避免这10 件事…
Python 换行符以及如何在 Python 输出时不换行
Python 中的换行符用于标记行的结尾和新行的开始。如果你想将输出打印到控制台并使用文件,那么你非常需要知道如何使用它。
全栈程序员站长
2022/11/01
14K0
Python 换行符以及如何在 Python 输出时不换行
使用 React Hooks 时要避免的6个错误
这个组件接收一个参数id,在useEffect中会使用这个id作为参数去请求游戏的信息。并将获取的数据保存在状态变量game中。 ​
玖柒的小窝
2021/11/28
2.4K0
使用 React Hooks 时要避免的6个错误
使用React Hooks 时要避免的5个错误!
最近开源了一个 Vue 组件,还不够完善,欢迎大家来一起完善它,也希望大家能给个 star 支持一下,谢谢各位了。
前端小智@大迁世界
2021/03/11
4.3K0
使用React Hooks 时要避免的5个错误!
怎样避免开发时的深坑
我总是听到刚入行不久的程序员这样说:知道自己要实现什么功能,同时处理逻辑和基本语法也都明白,但是就不知道该怎么写代码。如果把别人的的代码给你看,或者有人给你你一些指导,或许你能明白其中的思路。但是,在实际开发时仍然障碍重重。即使语法或逻辑都明白,也很难自己的想法转化为代码。在本文中我将会告诉大家我自己是怎么做的,还有一些解决典型问题的方法,希望能够对大家有所帮助。
疯狂的技术宅
2019/03/28
6390
怎样避免开发时的深坑
在编写异步方法时,使用 ConfigureAwait(false) 避免使用者死锁
发布于 2018-03-23 13:54 更新于 2018-03-24 05:21
walterlv
2018/09/18
7140
在编写异步方法时,使用 ConfigureAwait(false) 避免使用者死锁
当删库时如何避免跑路
删库跑路也是个老梗了,可见在运维数据库的过程中误删除数据,或者开发的代码有bug,造成数据的误删除屡见不鲜。不过现在也有许多用于恢复或预防误删除的方案,例如SQL管理系统,将要执行的SQL先交由管理员审核,然后由管理员备份一个镜像数据库,在镜像上执行该SQL,并在执行后还原镜像。这样经过层层把关就可以大大减小出现误操作的几率。
端碗吹水
2020/09/23
1K0
当删库时如何避免跑路
开始使用Vue 3时应避免的10个错误
Vue 3 稳定已经有一段时间了。许多代码库正在生产中使用它,其他人最终也必须进行迁移。我有机会与它一起工作,并记录了我的错误,这可能是你想避免的。
前端小智@大迁世界
2023/07/09
3030
开始使用Vue 3时应避免的10个错误
python换行符使用_python中怎么换行?「建议收藏」
大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。 Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
全栈程序员站长
2022/09/27
8.6K0
python换行符使用_python中怎么换行?「建议收藏」
PhpSpreadsheet生成Excel时实现单元格自动换行
PhpSpreadsheet是PHPExcel的替代版本,PHPExcel的作者已经停止了更新,今天尝试了使用PhpSpreadsheet生成Excel的时候支持单元格内的自动换行,发现用法其实差不多。
大江小浪
2019/02/22
2.7K0
PhpSpreadsheet生成Excel时实现单元格自动换行
C++核心准则F.53:非局部使用变量时避免使用值捕捉
如果捕捉的变量可以能被非局部使用,则应避免在lambda表达式中使用引用形式的捕捉。非局部使用包括返回,保存在堆中,或者传递给其他线程。
面向对象思考
2020/03/25
4620
css实现强制不换行/自动换行/强制换行
强制不换行 div{ white-space:nowrap; } 自动换行 div{ word-wrap: break-word; word-break: normal; } 强制英文单词断行 div{ word-break:break-all; } word-wrap: css的 word-wrap 属性用来标明是否允许浏览器在单词内进行断句,这是为了防止当一个字符串太长而找不到它的自然断句点时产生溢出现象。 word-break: css的 word-break 属
deepcc
2018/05/16
7.4K0
BufferedWriter使用write方法如何换行
BufferedWriter对象自带newline()方法可以换行,但如果在字符串中部换行,不想用newline()方法该如何做呢?
全栈程序员站长
2022/06/28
1.6K0
CSS实现强制不换行/自动换行/强制换行
div{word-wrap:break-word;word-break:normal;}
红芽
2020/08/19
12.8K0
JavaScript换行符的使用[通俗易懂]
其中 document.write() 输出内容中换行需要使用HTML中的标签使用</br>,在其中键入\n,不会显示,但也不会有换行效果。
全栈程序员站长
2022/08/31
2K0
JavaScript换行符的使用[通俗易懂]
实现DevOps时要避免的10个陷阱[DevOps]
在各种规模的公司中,由于技术团队定义成功的方式发生了变化,软件正越来越多地提供业务价值。它们比以往任何时候都更取决于其构建的应用程序如何为客户带来价值。门票和稳定的代价是说不,这已不再是关键价值。现在是通过与业务合作来提高开发速度。
yyx
2019/12/05
5920
实现DevOps时要避免的10个陷阱[DevOps]
点击加载更多

相似问题

使用UL时避免换行符

43

使用jquery append()或html()时避免换行

20

避免换行

23

Eclipse避免使用jmockit换行

11

避免使用AppleScript进行换行

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文