关闭后删除.txt文件?

时间:2017-04-12 13:36:13

标签: file powershell delete-file notepad

我希望在文件关闭后删除它。

示例:

$content | Out-File info.txt
Invoke-Item info.txt

这将打开文件info.txt,其内容为$content

现在我要做的就是,当这个文件关闭时,删除它。

知道怎么做吗?我想我需要做一些事情,比如检查info.txt是否打开,如果没有,那么运行Remove-Item info.txt

现在我使用这个“脏”的解决方案,它会在3秒后强行删除文件,让它有时间在记事本中打开:

Start-Sleep -s 3
Remove-Item -Force -ErrorAction SilentlyContinue info.txt

它仍然在记事本中打开以供查看,即使它不再存在,当我关闭文件时它已经被删除所以它有点工作但我仍然在寻找一种正确的方法来检查文件是否在删除前关闭。

2 个答案:

答案 0 :(得分:4)

试试这个:

Start-Process Notepad.exe U:\test.txt -Wait
Remove-Item U:\test.txt

答案 1 :(得分:1)

所以,由于我的声誉,我只能回答“回答”。

基本上,我的评论是“这是否需要在文本文件中打开?”

我的其他建议是做以下其中一项

$content | Out-GridView

或者

$content | Format-Table

您仍然可以看到所有数据,并且仍然可以从中复制数据而无需将文件保存到需要删除的任何位置。

这可以接受吗?