Tôi muốn thực hiện lệnh ls -a
sử dụng execv()
trên một máy Linux như sau:Làm cách nào để chạy 'ls' với các tùy chọn từ chương trình C?
char *const ptr={"/bin/sh","-c","ls","-a" ,NULL};
execv("/bin/sh",ptr);
Tuy nhiên, lệnh này không liệt kê các tập tin ẩn. Tôi đang làm gì sai?
Bạn sẽ nhận được gì nếu bạn thực hiện 'sh -c ls -a' (giống như' "sh" "-c" "ls" "-a" ') tại dấu nhắc trình bao? –