Computer >> Máy Tính >  >> Lập trình >> C ++

Liệt kê các tệp đã sửa đổi, cũ và mới được tạo trên Linux bằng C ++

Ở đây chúng ta sẽ xem cách liệt kê các tệp đã sửa đổi, các tệp cũ và mới được tạo trên nền tảng Linux bằng chương trình C ++.

Nhiệm vụ rất đơn giản. Chúng ta có thể sử dụng lệnh shell Linux để lấy các tệp theo thứ tự mong muốn. Lệnh ls –l được sử dụng để lấy tất cả các tệp ở định dạng danh sách dài. Ở đây chúng tôi sẽ thêm nhiều tùy chọn hơn để sắp xếp chúng dựa trên thời gian. (Tăng dần và giảm dần). Lệnh –t được sử dụng để sắp xếp dựa trên thời gian và –r có thể được thêm vào để đảo ngược trình tự.

Lệnh sẽ như sau:

ls –lt
ls –ltr

Chúng tôi sẽ sử dụng các lệnh này bằng cách sử dụng hàm system () trong C ++, để lấy kết quả từ mã C ++.

Mã mẫu

#include<iostream>
using namespace std;
main(){
   //Show the files stored in current directory descending order of their modification time
   cout << "Files List (First one is newest)" << endl;
   system("ls -lt"); //use linux command to show the file list, sorted on time
   cout << "\n\nFiles List (First one is oldest)" << endl;
   system("ls -ltr"); //use the previous command -r is used for reverse order
}

Đầu ra

Files List (First one is newest)
total 32
-rwxr-xr-x 1 soumyadeep soumyadeep 8984 May 11 15:19 a.out
-rw-r--r-- 1 soumyadeep soumyadeep 424 May 11 15:19 linux_mod_list.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 1481 May 4 17:03 test.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 710 May 4 16:51 caught_interrupt.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 557 May 4 16:34 trim.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 1204 May 4 16:24 1325.test.cpp
Files List (First one is oldest)
total 32
-rw-r--r-- 1 soumyadeep soumyadeep 1204 May 4 16:24 1325.test.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 557 May 4 16:34 trim.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 710 May 4 16:51 caught_interrupt.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 1481 May 4 17:03 test.cpp
-rw-r--r-- 1 soumyadeep soumyadeep 424 May 11 15:19 linux_mod_list.cpp
-rwxr-xr-x 1 soumyadeep soumyadeep 8984 May 11 15:19 a.out