再会!
前几天我偶然发现了一个小“问题”......
我通过 linux-shell 学习了脚本。在那里,可以通过字符串构造命令并按原样执行它们。
例如:
#!bin/bash
LS_ARGS='-lad'
LS_CMD='ls'
CMD="$LS_CMD $LS_ARGS /home"
$CMD
但现在我不得不切换到 windows powershell:
If ( $BackgroundColor ) {
Write-Host -BackgroundColor $BackgroundColor
}
If ( $ForegroundColor ) {
Write-Host -ForegroundColor $ForegroundColor
}
If ( $ForegroundColor -AND $BackgroundColor ) {
Write-Host -ForegroundColor $ForegroundColor
-BackgroundColor $BackgroundColor
}
If ( $NoNewline ) {
If ( $BackgroundColor ) { ... }
ElseIf ( $ForegroundColor ) { ... }
ElseIf ( $ForegroundColor -AND $BackgroundColor ) { ... }
Else { ... }
}
我想你知道我的意思;)有谁知道减少这种情况的方法,例如:
[string] $LS_CMD = 'Write-Host'
[string] $LS_ARGS = '-BackgroundColor Green -NoNewLine'
[string] $CMD = "$LS_CMD C:\temp $LS_ARGS"
由于与其他语言的这些愚蠢的比较,也许我正试图改变一些不应该改变的东西。我想这样做的主要原因是因为我试图从我的脚本中减少所有不必要的条件和段落。试图让它们更清晰......如果有人可以在这里帮助我,那就太好了。
迈克尔