52 lines
1.5 KiB
C++
52 lines
1.5 KiB
C++
|
#include <iostream>
|
||
|
#include <string>
|
||
|
#include <filesystem>
|
||
|
#include <unistd.h>
|
||
|
#include <vector>
|
||
|
#include <dirent.h>
|
||
|
#define RESET "\033[0m"
|
||
|
#define BLACK "\033[30m" /* Black */
|
||
|
#define RED "\033[31m" /* Red */
|
||
|
#define GREEN "\033[32m" /* Green */
|
||
|
#define YELLOW "\033[33m" /* Yellow */
|
||
|
#define BLUE "\033[34m" /* Blue */
|
||
|
#define MAGENTA "\033[35m" /* Magenta */
|
||
|
#define CYAN "\033[36m" /* Cyan */
|
||
|
#define WHITE "\033[37m" /* White */
|
||
|
#define BOLDBLACK "\033[1m\033[30m" /* Bold Black */
|
||
|
#define BOLDRED "\033[1m\033[31m" /* Bold Red */
|
||
|
#define BOLDGREEN "\033[1m\033[32m" /* Bold Green */
|
||
|
#define BOLDYELLOW "\033[1m\033[33m" /* Bold Yellow */
|
||
|
#define BOLDBLUE "\033[1m\033[34m" /* Bold Blue */
|
||
|
#define BOLDMAGENTA "\033[1m\033[35m" /* Bold Magenta */
|
||
|
#define BOLDCYAN "\033[1m\033[36m" /* Bold Cyan */
|
||
|
#define BOLDWHITE "\033[1m\033[37m" /* Bold White */
|
||
|
using std::cout; using std::cin;
|
||
|
using std::endl; using std::vector;
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
int main() {
|
||
|
char path[256];
|
||
|
getcwd(path, 256);
|
||
|
|
||
|
DIR *dir; struct dirent *diread;
|
||
|
vector<char *> files;
|
||
|
|
||
|
if ((dir = opendir(path)) != nullptr) {
|
||
|
while ((diread = readdir(dir)) != nullptr) {
|
||
|
files.push_back(diread->d_name);
|
||
|
}
|
||
|
closedir(dir);
|
||
|
} else {
|
||
|
perror("opendir");
|
||
|
return EXIT_FAILURE;
|
||
|
}
|
||
|
|
||
|
for (auto file : files) cout << GREEN << file << "\n" << " | " << RESET;
|
||
|
cout << endl;
|
||
|
|
||
|
return EXIT_SUCCESS;
|
||
|
}
|