在里面电源外壳,我可以使用此命令获取当前文件夹中的项目
ls | ft name >list.txt
但如果我list.txt
打开微软办公软件.然后我们可以看到每行都有可能有一个空白字符
那么如何删除这些空白呢?
答案1
由于它的Format-Table
工作是正确地按列排列数据,因此您不应该对尾随空格感到惊讶。
顺便说一句,重定向其输出会创建带有 BOM 的 UTF16 文件(Msword 可以解释)
与 uSlackr 的版本类似:
(gci).Name | sc list.txt
在 Linux/MacOS 上使用 PowerShell 时,我倾向于避免使用特定于操作系统的别名,而是使用 PowerShell 别名 - 因此没有dir
/ls
但gci
或Get-ChildItem
答案2
Powershell 正在对您的表格应用一些格式,包括填充。此命令将稍微清理文件,但会丢失标题。
ls |foreach {$_.ToString()} |set-content list.txt
答案3
就像 @uSlackr 所说的那样,使用时 Powershell 会附加不必要的格式Format-Table
。这是我的解决方法:
ls | ft name > list.txt
# this writes the original results to your file
$lines = Get-Content list.txt
# this gets the results of list.txt
$lines | ForEach-Object{ echo $_.ToString().Trim()} > list.txt
# and this goes through each line and removes the leading and trailing space before writing
the result to list.txt