powershell - 文本文件是否有输出限制?
问题描述
我有 2 个脚本
script1.ps1
从服务器检索数据库/多维数据集连接。script2.ps1 调用 script1
脚本2:
$logfile = ".\log.txt"
& ".\script1.ps1" -ViewConnection "$cinput" -OutVariable xprtOut | Format-Table -Wrap | tee $logfile -Append
我注意到的有趣的事情是,我在控制台上检索并显示了大约 138 个连接,但日志文件中最多只打印了 78 个连接。
日志文件:
安慰:
为什么它会截断/不打印日志文件中的其余连接?很奇怪...
解决方案
不要将格式化的输出打印到文件中!
Format-*
cmdlet 根据当前屏幕缓冲区格式化输出,并且生成的对象填充了从文件读回时没有意义的元数据。
在写入磁盘后移动| Format-Table -Wrap
到管道的末尾: Tee-Object
& ".\script1.ps1" -ViewConnection "$cinput" -OutVariable xprtOut | tee $logfile -Append | Format-Table -Wrap
推荐阅读
- android - 使用 RecyclerView 和数据库进行双重数据维护
- java - 如何使用 DeltaSpike 和 Weld 设置 SparkJava CDI
- laravel - Laravel,多个模型之间的多对多关系
- laravel - Laravel:反向 WHERE NOT IN - 排除任何具有 id=XXX 子级的父表
- sharepoint - 如何防止 Sharepoint 添加新列表项限制超过 5 个,而不是查看项目
- c++ - strcmp 错误 'WCHAR [260]' 到 'const char *'
- jquery - 无法在演示中集成 slick-carousel
- java - 检查列表中对象的所有值是否唯一
- javascript - 如何修复无法正常工作的 ReactJS 过滤搜索
- java - androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:228) 处的 agment.onCreatePreferences