C语言实现的ls命令源码分享

(编辑:jimmy 日期: 2024/12/26 浏览:2)

在之前的一些看书或者学习中,一直有一种感觉有问题的态度,那就是认为看懂了,但是不动手,感觉这样看书的效果不是很大。ls命令估计是我们在linux/unix里面用的最多的一个命令了,我们就用c来简单的实现一下ls命令。

//
// ls.c
// apue
//
// Created by chenqing on 13-8-22.
// Copyright (c) 2013年 chenqing. All rights reserved.
//
 
#include "/usr/include/apue.h"
#include "dirent.h"
 
int main(int argc,char *argv[])
{
 DIR *dp ; //创建一个DIR结构的指针
    //更多信息参考http://www.gnu.org/software/libc/manual/html_node/Opening-a-Directory.html
 struct dirent *dirp;
 if (argc != 2) {
  err_sys("需要两个参数"); //err_sys 是在error.c中定义的一个函数
 }
  
 if ((dp = opendir(argv[1])) == NULL) {
  err_quit("读取目录出错了!");
 }
 while ((dirp = readdir(dp)) != NULL) {
  printf("%s\n",dirp->d_name);
 }
  
 closedir(dp);
 exit(0);
 
}

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。