【问题标题】:How to get Foldername into the output txt file of Using Out-File or ">" in Powershell?如何将文件夹名放入 Powershell 中使用 Out-File 或“>”的输出 txt 文件中?
【发布时间】:2019-02-15 13:27:13
【问题描述】:

我正在使用命令行方法将文件名内容转换为 txt 文件。

这就是我现在所拥有的。

我有 dir 命令来获取名称并排除我要输出的文件夹中的 .txt 文件。我可以使用sort-object 命令按名称对文件进行排序。我写在那里的out-file 只是为了打开我现在正在做的事情。

dir -n -exclude *.txt | sort-object | out-file -confirm .\<current foldername>.txt

但是我希望这个命令行输出它的唯一文件夹名称,因为假设地址是“..\folder\”和“..\folder2\”,我想使用out-file&gt; 命令这样它就可以在不同的多个文件类型上创建 folder.txt 和 folder2.txt。请注意,我不是在谈论 .txt 文件名的“filepath”。

【问题讨论】:

    标签: powershell directory


    【解决方案1】:

    试试这个:

    dir -n -Exclude *.txt |Sort-Object|Out-File -Confirm "$((Get-Item .).Name).txt"
    

    在“”之间构造文件名。这就是发生的事情:

    • “”表示它是一个字符串
    • 在字符串中可以嵌入表达式
    • 此处嵌入的表达式是(Get-Item .).Name,它获取当前目录的名称 (.)
    • 要将代码嵌入到字符串中,您必须采用如下格式:$(&lt;embedded code block&gt;)
    • 在嵌入代码后添加字符串文字 .txt

    【讨论】:

    • 谢谢。我运行的 -wi 给出了正确的结果。虽然在此,请您指导我最后的语法。理解其余代码对我来说有点暗淡。 "$((Get-Item .).Name).txt" 确切地说是这部分。
    • @AtaYiğitTelli 刚刚为我的回答添加了一些解释。我希望这会有所帮助。
    • 感谢@Gert 的额外解释,非常感谢
    猜你喜欢
    • 2022-01-20
    • 2015-06-29
    • 2021-10-17
    • 1970-01-01
    • 1970-01-01
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多