[: =: unary-operaattori odottaa [kaksoiskappale]

Tähän kysymykseen on jo annettu vastauksia :

Vastaa

Testissäsi, jos komennon korvaaminen $(adb -s ...) luo monisanaisen merkkijonon, kuori käsittelee sitä syntaksivirheenä. Sinun on lainattava laajennuksia:

[ "$(adb -s ...)" = *"Is the system running?"* ] 

Lainaamattoman komennonvaihdon tulos hajoaa ja tiedostonimi huojuu samalla tavalla kuin noteeraamaton muuttujan laajennus. Laajennuksen lainaaminen välttää tämän. Sinun tapauksessasi ongelmat aiheutuvat jakamisesta.

Kun komennon korvaaminen on laajennettu, testi voi näyttää tältä:

if [ word1 word2 word3 = *"some string"* ] 

Tämä on selvästi syntaksivirhe.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *