2017-06-20 114 views
1

下面如果所有變量都設置則返回true,否則返回false可以和數組一起使用嗎?

是否有更好的方法來做到這一點,我有以下

if [[ -n $ip ]] && [[ -n $netmask ]] && [[ -n $gateway ]] && [[ -n $dns ]]; then 

回答

2

您可以爲簡潔起見 - [[ -n $ip ]][[ $ip ]]相同。此外,您可以將所有變量放在一個[[關鍵字中,評估結果將會發生相同:

if [[ $ip && $netmask && $gateway && $dns ]]; then 
+0

這是正確的。另一種(組合的)方式如下:[[-n「$ {ip} $ {netmask} $ {gateway} $ {dns}」]] –

+0

[[-n $ ip]]與[[$ ip] ],因爲'ip ='''1返回'false'和2返回'true' – beliy

+0

@beliy IIRC,未設置且null應該產生相同的結果... – heemayl

相關問題