Powinieneś naprawdę uniknąć system
. To, co robi, zależy od używanej powłoki i systemu operacyjnego, na którym się znajdujesz (twój przykład prawie na pewno nie spełni twoich oczekiwań w systemie Windows).
Jeśli naprawdę, rozpaczliwie potrzeba powołać niektóre polecenia z powłoki, można zrobić marginalnie lepiej po prostu wykonanie powłoki bezpośrednio (jak za pomocą przełącznika -c
dla bash).
Jeśli z jakiegoś powodu nie jest możliwe przede i można gwarancję program będzie tylko bieg na systemach, w których powłoka w pytaniu jest dostępny i użytkowników nie być uruchomiony cokolwiek innego ...
... wtedy można po prostu użyć połączenia system
z libc
tak samo jak ze zwykłej C. liczy się jako FFI, więc prawdopodobnie będziesz chciał patrzeć na std::ffi::CStr
.
Dziękuję bardzo! –