Tôi đã viết một mã để nhận được một lỗi runtime cố ý:Về stdout/stderr chuyển hướng
int main()
{
int a=5;
printf("Hello World\n");
printf("a=%s\n", a);
}
Nó cung cấp cho:
$ ./error.o
Hello World
Segmentation Fault
$
Bây giờ, để ghi lại các lỗi thời gian chạy, tôi làm:
$ ./error.o > so.txt
$ ./error.o &> soe.txt
Nhưng cả hai tệp đều trống. Tại sao?
EDIT:
Tôi thực sự viết một tập lệnh để biên dịch từ xa và thực thi chương trình c. Từ các câu trả lời tôi nhận được rằng Segmentation Fault
không phải là đầu ra lỗi của chương trình. Vậy, có cách nào để nắm bắt đầu ra đó không? Ngoài ra, chương trình chỉ là một mẫu, vì vậy tôi không thể thêm các câu lệnh. Có thể làm đệm đường được thực hiện theo bất kỳ cách nào khác với chuyển hướng không?
% s cho int là sai. – Nyan
@Nyan: Tôi đang cố ý để có được lỗi seg. Tôi đang viết một kịch bản để nắm bắt các lỗi thực hiện, do đó, điều này chỉ bắt chước đầu vào có thể trong tương lai đối với tập lệnh của tôi. – lalli
Bạn đã chỉnh sửa câu hỏi về cách bật tính năng đệm đường cho các tệp được chuyển hướng. Tôi đã cập nhật câu trả lời của mình để thêm thông tin. – jjrv