Soluzione 1:
Il -
è un parametro per -f
opzione, che significa accettare l'input dallo standard input invece che da un file con nome. Centinaia di comandi UNIX/Linux hanno opzioni come questa.
Soluzione 2:
Il -
carattere può essere inteso come un segnaposto per l'output del comando che viene reindirizzato ( utilizzando |
carattere ). Usandolo, istruiamo in modo molto specifico il comando successivo (a cui viene reindirizzato l'output), dove dovrebbe essere posizionato l'output standard del primo comando (è il risultato dell'esecuzione), in altre parole come dovrebbe essere preso o analizzato .
Quindi, piuttosto che reindirizzare il risultato di:
kubectl create secret generic test --from-file=appsettings.json --dry-run -oyaml
(che guarda caso è un manifest yaml)
direttamente a:
kubectl apply -f
che non sa cosa fare con tale input (poiché si aspetta un file dopo -f
flag), indichiamo molto precisamente dove si adatta:
kubectl apply -f -
In questo caso, istruiamo kubectl apply
comando che l'output reindirizzato dal comando precedente dovrebbe essere preso invece di un file, che è previsto dopo aver fornito -f
bandiera.