Sto provando a scrivere del codice che esegue grep
esternamente, quindi analizza l'output. In particolare, voglio farePosso rendere readProcess eliminare le virgolette?
grep <username> *.test
ma, purtroppo,
readProcess "grep" [username, "*.test"]
sembra generare il comando con doppie virgolette gli argomenti
grep "<username>" "*.test"
ed in quanto non v'è alcun singolo file chiamato asterisk-dot-test, grep
barfs. Ci sono file con estensioni .test
.
Posso convincere lo readProcess
(o qualcosa di simile) a emettere il comando che desidero?
È un po 'scomodo che 'System.Process' non abbia un equivalente di' readProcess' che esegue l'escaping della shell. È un caso d'uso piuttosto comune. –
Questo è stato un utile indizio, grazie. La mia soluzione alternativa, che ora fa il lavoro come previsto, è scrivere il comando grep in uno script di shell, quindi richiamare lo script usando 'readProcessWithExitCode', poiché una risposta nulla è accettabile ma segnalata come fallimento da grep. – pigworker