📄 globals.h
字号:
#ifndef _GLOBALS_#define _GLOBALS_#define NONE "\033[m"
#define RED "\033[0;32;31m"
#define LIGHT_RED "\033[1;31m"
#define GREEN "\033[0;32;32m"
#define LIGHT_GREEN "\033[1;32m"
#define BLUE "\033[0;32;34m"
#define LIGHT_BLUE "\033[1;34m"
#define DARY_GRAY "\033[1;30m"
#define CYAN "\033[0;36m"
#define LIGHT_CYAN "\033[1;36m"
#define PURPLE "\033[0;35m"
#define LIGHT_PURPLE "\033[1;35m"
#define BROWN "\033[0;33m"
#define YELLOW "\033[1;33m"
#define LIGHT_GRAY "\033[0;37m"
#define WHITE "\033[1;37m"#include<stdio.h>#include<sys/types.h>#include<dirent.h>#include<time.h>#include<sys/stat.h>#include<pwd.h>#include<grp.h>#include<unistd.h>#include<string.h>struct flg{ int lflg; /*0:只显示文件名,1:显示文件全部信息,2:输出目录树*/ int aflg; /*0:不显示'.','..'和以'.'开头的文件,1:显示所有文件和目录,2:显示所有文件和目录但不包括'.'和'..'*/ int oflg; /*0:字母,1:更改时间,2:大小,3:变动时间,4:存储时间,5:反向字母排序*/ int gflg; /*0:显示组名,1:不显示*/ int nflg; /*0:名显示1:用户识别码和组名替代名*/ int sflg; /*显示文件和目录大小,以块为单位*/ int hflg; /*用K,M,G来显示文件和目录大小*/ int iflg; /*输出inode*/ };void do_ls1(const char *dir, const struct flg opt_flg);void do_ls2(const char *dir, const struct flg opt_flg);void mktree(const char *dir, const struct flg opt_flg);int dostat(const char *filename, const struct flg opt_flg);void show_file_info(const char *filename, const struct stat *info, const struct flg opt_flg);void mode_to_letters(const int mode, char str[]);char *uid_to_name(uid_t uid);char *gid_to_name(gid_t gid);void print_filename(const char *filename, int mode);void print_size_kmg(const long size);int getblocks(long size);int atimesort(const void *a, const void *b);int mtimesort(const void *a, const void *b);int ctimesort(const void *a, const void *b);int blocksort(const void *a, const void *b);int revalpsort(const void *a, const void *b);void print_name1(const char *dir, const struct flg opt_flg);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -