Devo essere in grado di scrivere se il test per un grep è TRUE o FALSE in una variabile, quindi posso usarlo in seguito
Per quanto segue, se corro
defaults read com.apple.Finder | grep "AppleShowAllFiles"
sul mio sistema, ritornerebbe
AppleShowAllFiles = FALSE;
Cool. Quindi ora voglio sondare questa risposta a un test di qualche tipo. Questo è dove mi blocco.
Penso che se potessi pipe / assegnare questo output a una variabile specificata, sarei in grado di eseguire un test su di esso. Ora, diciamo, ho assegnato il valore di questo output a una variabile, in questo caso userò $ASAF
come variabile, posso eseguirlo in un test come questo
if [ $ASAF = "AppleShowAllFiles = TRUE;" ]; then
defaults write com.apple.Finder AppleShowAllFiles FALSE
killall Finder
else
defaults write com.apple.Finder AppleShowAllFiles True
killall Finder
fi
Se c'è un altro modo per farlo, sarei più che aperto alle opzioni. Non ho dovuto fare qualcosa di simile per un po ', e sono un po' perplesso. Ho visualizzato Google un po ', ma erano tutte risposte senza spiegazioni e utilizzando il valore restituito di 0
o 1
. Penso che l'output restituito assegnato a una variabile sia più appropriato, in quanto quindi posso usarlo più e più volte nello script come necessario.