Exemplo n.º 1
0
int main(int argc,char** argv)
{
    if(argc<2)
    {
        printf("listfile<target path\n");
        exit (1);
    }
    if(my_readir(argv[1])<0)
    exit(1);
    return 0;
}
Exemplo n.º 2
0
int main(int argc, char *argv[])
{
	if (argc < 2) {
	
		printf ("listfile <target path>\n");
		exit (1);
	
	}

	if (my_readir (argv[1]) < 0) {
	
		exit (1);
	
	}

	return EXIT_SUCCESS;
}
Exemplo n.º 3
0
int main(int argc, char * argv[])
{
	int i = 0,n;
	char a[6][20] = {"0","0","0","0","0","0"};           //存放命令,解析命令
	char filename[N][100];
//	struct stat buf;
	char name[100];
	char name1[100];
	DIR *dir;
	struct dirent *ptr;
	int j = 0;
	int k = 0;
	int l = 0;

	getcwd(name,100);
	if((dir = opendir(name)) == NULL)
	{
		printf("error\n");
		exit(1);
	}
	while((ptr = readdir(dir)) != NULL)
	{
		strcpy(filename[l], ptr->d_name);
		//printf("filename[%d]: %s",l,filename[l]);
		l++;
	}
	//sort(filename);
	for(i = 1; i < argc; i++)
	{
		strcpy(a[i],argv[i]);
	}
	if(strcmp(a[1],"ls") == 0 && a[2][0] == '0')
	{
		n = my_readir(name,filename);
	}	
	else if(strcmp(a[2],"-l") == 0 && a[3][0] == '0')
	{
		printf("ls -l\n");
		for(i = 0; i < l;i++)
		{
			if(filename[i][0] != '.')
		        	display_attribute(filename[i]);
		}
	}
	else if(strcmp(a[2],"-a") == 0 && a[3][0] == '0')
	{
		printf("ls -a\n");
		n =my_readirt(name,filename);
	}
	else if((strcmp(a[2],"-a") == 0 && strcmp(a[3],"-l") == 0 && a[4][0] == '0') ||
		(strcmp(a[2],"-l") == 0 && strcmp(a[3],"-a") == 0 && a[4][0] == '0') || 
		(strcmp(a[2],"-al") == 0 && a[3][0] == '0') ||
		(strcmp(a[2],"-la") == 0 && a[3][0] == '0'))
	{
		printf("ls -al -la\n");	
		for(i = 0; i < l; i++)
		      display_attribute(filename[i]);
	}
	else if(strcmp(a[2],"-R") == 0 && a[3][0] == '0')
	{

		printf("ls -R\n");
		getcwd(name1,100);
		my_ls_r(name1);
	
	}
	else if(a[2][0] != '0')
	{
		printf("ls <filename>\n");
	}
	else if(strcmp(a[2],"-i") == 0 && a[3][0] == '0')
	{
		n = my_readirt(name,filename);
	}
	else
	{
		printf("error1\n");
	}
	
	return 0;
}