使用管道字符串命令在批处理文件(.bat)中按时间对“dir like”进行排序:Get-ChildItem | Sort-Object -Property LastWriteTime,不起作用

使用管道字符串命令在批处理文件(.bat)中按时间对“dir like”进行排序:Get-ChildItem | Sort-Object -Property LastWriteTime,不起作用

我正在尝试在 Windows 中为命令行构建一个简单的批处理文件来执行“dir like”命令来列出按时间排序的目录内容,避免输入:( Get-ChildItem | Sort-Object -Property LastWriteTime整个字符串运行完美)。

我最后一次尝试是这样的(.dir.bat[前面有一个点,以区别于常规dir]):
@echo on
Get-ChildItem ^| Sort-Object -Property LastWriteTime

启动后.dir.bat

C:\>Get-ChildItem | Sort-Object -Property LastWriteTime
"Get-ChildItem" is not recognized as an internal or external command,
executable program or batch file.

我想我几乎尝试了所有方法。甚至,正如我上次尝试所显示的那样,使用、、引号、括号等| 来转义管道。^|startecho

我读到批处理解释采取|实例化操作,所以这解释了为什么以前的实验启动了一个新powershell/cmd窗口而不是执行想要的字符串命令。

答案1

首先,命令是:

Get-ChildItem | Sort-Object -Property LastWriteTime

其次,PowerShell 脚本是从.ps1文件运行的。如果您希望从 CMD/batch 运行它们,请使用以下 powershell命令:

powershell "Get-ChildItem | Sort-Object -Property LastWriteTime"

相关内容