我有很多文件路径存储在数据库中。我需要检查文件是否确实存在。我以前做过这个,但是丢失了脚本并需要一些帮助。
我将所有路径放在一个文本文件中,并想循环遍历它们,并检查它们是否存在。如果它们不存在,我想将不存在的路径放在日志文件中。
这样的事情:
# ! equals -not
$log = "e:\pshell\notExists.log"
$log | out-file $log
$list = Get-Content "e:\pshell\files.txt"
Foreach ($file in $list)
{
CHECK IF FILE EXISTS
IF IT DOESNT then Write-Output $file
}
一点帮助?
答案 0 :(得分:4)
测试路径?
$log = "e:\pshell\notExists.log" $log | out-file $log
$list = Get-Content "e:\pshell\files.txt"
Foreach ($file in $list)
{
If (!(test-path $file))
{
Write-Output $file
}
}
答案 1 :(得分:2)
如果inputfile是每行一个文件路径,请尝试:
$log = "e:\pshell\notExists.log"
Get-Content "e:\pshell\files.txt" | Where-Object {
#Keep only paths that does not exists
!(Test-Path $_)
} | Set-Content $log
答案 2 :(得分:0)
$log = "e:\pshell\notExists.log"
Get-Content "e:\pshell\files.txt" |
where {!(test-path $_)} |
add-content $log