当我explorer.exe filename.pdf
在 WSL 下的 Ubuntu 中运行时,PDF 打开了。
但是,当我运行 时explorer.exe *.pdf
,无论是在 for 循环中还是单独运行,它都只会打开文件资源管理器而不打开 PDF。为什么会这样?我如何才能一次打开多个 PDF?
答案1
这就是 Windows 资源管理器的工作方式——据我所知,它从不接受多个文件名,即使在 CMD 或 PowerShell 下也是如此。explorer *.pdf
从 PowerShell 运行的结果与在 Ubuntu 中相同。
你提到了一个for
循环,但你没有在问题中提供任何代码。是正确的做法。以下方法对我来说很好用:
for pdf in *.pdf; do explorer.exe "$pdf"; done
或者,仅选择某些文件:
for pdf in a.pdf b.pdf; do explorer.exe "$pdf"; done
答案2
就我而言,引入睡眠对我有用。对于需要一些时间加载的应用程序,我将睡眠时间设置为更多秒。例如,
while IFS= read -r table_prefix; do
# Open the file
explorer.exe "${table_prefix}"* > /dev/null 2>&1 &
sleep 10
done < "$text_file"
这将打开单独的 Word 表格文档