#include <iostream> #include <cstring> #include <string> #include <stdlib.h> // system 命令使用头文件 #include <fstream> // 读写文件 /*------ mkdir 命令 ------*/ #include <sys/stat.h> #include <sys/types.h> #include <cstddef> using namespace std; //int cishu=1200; //int shijian=300; char DirServer[30]="/datadisk/eisc/server/"; char AnfangDir[99]="anfang"; char logname[20]="eisc_anfang_log.txt"; // 不给长度,系统默认会定义长度,会导致错误,因此需要给长度 char MkdirSh[99]="sudo mkdir -p "; char ChmodSh[99]="sudo chmod 777 -R "; int log_run() { strcat( MkdirSh, DirServer); strcat( ChmodSh, DirServer); // 注意:前面定义了变量,需要再函数里面进行赋值追加字符串,否则错误 system(MkdirSh); system(ChmodSh); cout << "\n mkdirsh is : " << MkdirSh ; cout << "\n chmodsh is : " << ChmodSh; // system("tcpdump -nn > /datadisk/eisc/server/anfang/sh/log/log.txt &"); return 0; // 终止函数,并且反馈该函数的值为0 } void mkdir_path(char *p_cMkdir) { int isCreate = mkdir(p_cMkdir,S_IRUSR | S_IWUSR | S_IXUSR | S_IRWXG | S_IRWXO); if( !isCreate ) cout << "\n [ok] create AnfangDir:" << p_cMkdir ; else cout << "\n [fall] create AnfangDir failed! error code: " << p_cMkdir << "\n \n" ; } int W_file() { char shuoming[30]="this_is_eisc_anfang_tcpdump"; ofstream setfile; setfile.open(logname); setfile << shuoming; setfile.close(); // 定义 setfile 变量为 ofsteram 输入文件流,它的值为打开文件。 将 字符串变量的值写入文件流变量; 关闭流 } int R_file ( char *lognamea, int status) { char data[999]; ifstream catfile; // ifstream 以读模式打开文件, ofstream 是写模式。 将类型赋值给变量 infile catfile.open(lognamea); // 变量打开文件 cout << "\n Reading_from_the_file: " << lognamea ; catfile >> data; // 将文件流,输入到 变量 data cout << "\n data 变量 获得文件内容: " << data << "\n \n \n 获取到 status 的值为: " << status << "\n \n"; catfile.close(); // 关闭打开的文件 return status; // 终止函数,并且反回该函数的值为0 } int panduan_xuexi(){ int status=0; if( !R_file(logname,status)) { cout << "if 默认成立条件是 非0 非空, 感叹号 ! 是非运算 条件取反,相当于 结果为 是 0 是空 条件成立"; cout << "\n [ok] 函数 R_file 返回的值为0 " ; } else { cout << "\n [fall] 函数 R_file 返回的值不为0 "; } } int main() { log_run(); strcat(DirServer, AnfangDir ); strcpy(AnfangDir,DirServer); cout << "\n AnfangDir 的值为:" << AnfangDir; // memcpy( path, DirServer,99); cout << "\n 我是main 函数 AnfangDir 接收到值:" << AnfangDir; mkdir_path(AnfangDir); W_file(); panduan_xuexi(); }