| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1873 人关注过本帖
标题:ls显示隐藏文件
只看楼主 加入收藏
s308182454
Rank: 1
等 级:新手上路
帖 子:11
专家分:4
注 册:2012-3-9
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
ls显示隐藏文件
写了个实现ls功能的程序,听说设置参数可显示隐藏文件不过不知道怎么写,请高手帮个忙
#include<stdio.h>
#include<unistd.h>
#include<sys/types.h>
#include<dirnet>
#include<sys/stat.h>
#include<fcntl.h>
#include<stdlib.h>
#include<errno.h>
#define ERR_EXIT(n) (perror(n),exit(EXIT_FAILURE))
int main(void)
{  DIR *dir=opendir(".");
    struct dir *de;
    while((de=readdir(dir))!=NULL)
     {   if(strncmp(de->d_name,"."1)==0)
      contonue;
      printf("%s\n",de->d_name);
       }
closedir(dir);
exit(EXIT_SUCCESS);
return 0;


    }




}

搜索更多相关主题的帖子: include void 
2012-07-16 19:08
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:20 
你这程序未免错的地方也太多了吧,最起码头文件 dirent.h 你就没拼对。
你只要把那个 while 里的 if 去掉就可以显示隐藏文件了。(不过你调的那个函数显然写的不正确……)

简单的就是这样。如果你想要用选项控制你这个程序的行为,那么可以用 getopt() 来分析选项。我写了一个小例子,你可以参考。详细参考 man 3 getopt

程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include <unistd.h>
#include <sys/types.h>
#include <dirent.h>

int main(int argc, char *argv[])
{
    int c, almost = 0;
    while ( (c = getopt(argc, argv, "a")) != -1) {
        switch(c) {
            case 'a': almost = 1; break;
            default: exit(EXIT_FAILURE); break;
        }
    }

    DIR *dir=opendir(".");
    struct dirent *de;

    while((de=readdir(dir)) != NULL) {
        if(!almost && strncmp(de->d_name,".", 1)==0)
            continue;
        printf("%s\n",de->d_name);
    }

    closedir(dir);
    exit(EXIT_SUCCESS);
}



[ 本帖最后由 pangding 于 2012-7-16 22:01 编辑 ]
2012-07-16 21:35
s912360101
Rank: 3Rank: 3
来 自:山西
等 级:论坛游侠
帖 子:168
专家分:147
注 册:2009-3-15
收藏
得分:0 
大婶啊

孤独是一个人的狂欢
2012-09-13 09:28
俺是你大爷
Rank: 2
等 级:论坛游民
帖 子:57
专家分:35
注 册:2019-3-12
收藏
得分:0 
ls -a
2019-03-12 12:53
快速回复:ls显示隐藏文件
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017193 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved