PowerShell逻辑运算后执行程序
链接:[url=https://pan.baidu.com/s/1szKC6g4IO-1QxbT8tatYXg]https://pan.baidu.com/s/1szKC6g4IO-1QxbT8tatYXg[/url]提取码:chcu
请高手帮忙弄个代码,由于是虚拟机的系统,之前的bat代码运行有时候会出问题. 弄个ps的试一试效果.
感谢
条件:
d:\temp\ok .只有一个 *.xlsx文件
(子文件夹有文件,忽略)
案例为:1-2中文英文_中文英文字符_2022年03月26日13时00分_中文英文字符a_中文英文字符b_1024582_22034_72[忽略符号内内容].xlsx
z p k
1,提取,all_=zpk= 1-2-1 这个文件夹名称.提取z,p,k,3个值
逻辑:
如果,以下条件 成立,执行对应程序.
模式:a
z为最大值且z>1,且z>p 且k=0 执行c:\temp\210.exe程序 并结束代码,否则继续执行
延时2秒
z为最大值且z>1,且z>p 且k=1 执行c:\temp\211.exe程序 并结束代码,否则继续执行
延时2秒
p为最大值且z>=1,且z>K 且k=0 执行c:\temp\120.exe程序 并结束代码,否则继续执行
延时2秒
k为最大值且z=0,且k>=2 且p=0 执行c:\temp\002.exe程序 并结束代码,否则继续执行
延时2秒
k为最大值且z=0,且k>p 且p>=1 执行c:\temp\012.exe程序 并结束代码,否则继续执行
延时2秒
p为最大值且z=1, 且k>=1 执行c:\temp\121.exe程序 并结束代码,否则继续执行
延时2秒
k为最大值且z=1,且k=p 执行c:\temp\122.exe程序 并结束代码,否则继续执行
exit [code]$a='d:\temp\ok'
if($(gi "$a\*.xlsx").count -lt 1 -and $(gi "$a\all_=zpk=*").name -match '\d+-\d+-\d+'){
$zpk=$matches[0] -split '-'
$z=$zpk[0]
$p=$zpk[1]
$k=$zpk[2]
$zm=$($zpk|measure -max).maximum
if($z -eq $zm -and $z -gt 1 -and $z -gt $p -and $k -eq 0){start 'c:\temp\210.exe';exit}
sleep 2
#以此类推可以自己加
# -gt -ge -lt -le -eq
# > >= < <= =
}
[/code]
页:
[1]