Tôi có một chương trình chấp nhận hai tên tệp làm đối số: nó đọc tệp đầu tiên để tạo tệp thứ hai. Làm cách nào để đảm bảo rằng chương trình sẽ không ghi đè tệp đầu tiên?Cách kiểm tra xem hai tên tệp có trỏ đến cùng một tệp vật lý hay không
Hạn chế:
- Phương pháp phải tiếp tục làm việc khi sự hỗ trợ hệ thống tập tin (mềm hoặc cứng) liên kết
- quyền tập tin được cố định và nó chỉ được yêu cầu rằng các tập tin đầu tiên là có thể đọc được và tập tin thứ hai có khả năng ghi
- Nó tốt nên nền tảng trung lập (mặc dù Linux là mục tiêu chính)
Trong triết lý UNIX và Linux, một chương trình như vậy được gọi là bộ lọc. Nó thường đọc từ đầu vào tiêu chuẩn (STDIN) và ghi vào đầu ra tiêu chuẩn (STDOUT). Điều này giúp giảm bớt các chương trình như vậy vì nó ngăn chặn trách nhiệm của việc xác minh đó cho người gọi. Chương trình của bạn có thể tập trung vào thực hiện công việc của mình. –