📄 mdir.c
字号:
/*********************************************************************
* File: mdir.c
* Author: Embest J.Zhao 2005.2.21
* Desc: directory operation
* History:
*********************************************************************/
#include <unistd.h>
#include <fcntl.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>
DIR *f_pDir; /* DIR pointer */
struct dirent *f_pDirent; /* declare a DIRENT opinter*/
char f_szcBuf[100]; /* DIR buf */
void getpwd(void)
{
/* get the current directory */
if(getcwd(f_szcBuf, sizeof(f_szcBuf)) == NULL)
{
printf("getcwd error.\n");
exit(0);
}
else
printf("pwd = %s\n", f_szcBuf);
}
void showdir(void)
{
/* display the current directory */
/* open dir file */
if((f_pDir = opendir(f_szcBuf)) == NULL)
{
printf("open dir error.\n");
exit(0);
}
/* read dir file */
printf("[ "];
f_pDirent = readdir(f_pDir);
while(f_pDirent != NULL)
{
printf("%s ", f_pDirent->d_name);
f_pDirent = readdir(f_pDir);
}
printf(")\n");
/* close dir file */
closedir(f_pDir);
}
int main(void)
{
char *pPath = "dir1";
/* display current directory */
getpwd();
/* display func */
showdir();
/* creat dir */
if(mkdir(pPath, 0777) == -1)
{
printf("mkdir %s error\n", pPath);
exit(0);
}
else
{
printf("mkdir %s success\n", pPath);
showdir();
}
/* change current dir */
if(chdir("dir1") == -1)
{
printf("chdir error\n");
exit(0);
}
else
{
printf("chdir success\n");
getpwd();
showdir();
}
/* delete dir */
/* back to the top dir */
if(chdir("..") == -1)
{
printf("chdir error\n");
exit(0);
}
else
{
if(rmdir(pPath) == -1)
{
printf("rmdir %s error\n", pPath);
exit(0);
}
else
{
printf("rmdir %s success\n", pPath);
getpwd();
showdir();
}
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -