欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

linux下編寫ls命令 linux的ls命令怎么用

編寫程序,實現(xiàn)在Linux環(huán)境用程序?qū)崿F(xiàn)ls-l的命令?求指點迷津,急!

#include?stdio.h

創(chuàng)新互聯(lián)建站專業(yè)IDC數(shù)據(jù)服務器托管提供商,專業(yè)提供成都服務器托管,服務器租用,內(nèi)江機房主機托管內(nèi)江機房主機托管,成都多線服務器托管等服務器托管服務。

#include?sys/types.h

#include?dirent.h

#include?sys/stat.h

#include?string.h

void?do_ls(char[]);

void?dostat(char?*);

void?show_file_info(?char?*,?struct?stat?*);

void?mode_to_letters(?int?,?char[]?);

char?*?uid_to_name(?uid_t?);

char?*?gid_to_name(?gid_t?);

main(int?ac,?char?*av[])

{

if(?ac?==?1?)

do_ls(?"."?);??????????/*顯示當前目錄*/

else

while(?--ac?){

printf("%s:\n",?*++av);???/*顯示參數(shù)指定的目錄*/

do_ls(?*av?);

}

}

void?do_ls(?char?dirname[]?)

{

DIR?*dir_ptr;

struct?dirent?*direntp;

if(?(dir_ptr?=?opendir(?dirname?))?==?NULL)????????????/*打開目錄,成功則返回?DIR?結(jié)構(gòu)指針*/

fprintf(stderr,?"ls1:?cannot?open?%s\n",?dirname);

else

{

while(?(?direntp?=?readdir(?dir_ptr?)?)?!=?NULL?)

dostat(?direntp-d_name?);

closedir(?dir_ptr?);

}

}

void?dostat(?char?*filename?)

{

struct?stat?info;

if(?stat(?filename,?info?)?==?-1?)

perror(?filename?);

else

show_file_info(?filename,?info?);

}

void?show_file_info(?char?*filename,?struct?stat?*info_p?)

{

char?*uid_to_name(),?*ctime(),?*gid_to_name(),?*filemode();

void?mode_to_letters();

char?modestr[11];

mode_to_letters(?info_p-st_mode,?modestr?);??????/*模式到字符的轉(zhuǎn)換*/

printf("%s",?modestr?);???????????????????????????/*輸出模式標識符*/

printf("%4d",?(int)info_p-st_nlink);

printf("?%-8s",?uid_to_name(info_p-st_uid));

printf("%-8s",?gid_to_name(info_p-st_gid));

printf("%8ld??",?(long)info_p-st_size);

printf("%.12s?",?4?+?ctime(info_p-st_mtime));

printf("%s\n",filename);????

}

void?mode_to_letters(?int?mode,?char?str[]?)

{

strcpy(str,"----------");

if(?S_ISDIR(mode)?)?str[0]?=?'d';?????????????????/*目錄*/

if(?S_ISCHR(mode)?)?str[0]?=?'c';?????????????????/*字符文件*/

if(?S_ISBLK(mode)?)?str[0]?=?'b';?????????????????/*塊文件*/

if(mode??S_IRUSR)??str[1]?=?'r';

if(mode??S_IWUSR)??str[2]?=?'w';

if(mode??S_IXUSR)??str[3]?=?'x';

if(mode??S_IRGRP)??str[4]?=?'r';

if(mode??S_IWGRP)??str[5]?=?'w';

if(mode??S_IXGRP)??str[6]?=?'x';

if(mode??S_IXOTH)??str[7]?=?'r';

if(mode??S_IXOTH)??str[8]?=?'w';

if(mode??S_IXOTH)??str[9]?=?'x';

}

#include?pwd.h

char?*uid_to_name(?uid_t?uid?)

/*

*返回和?uid?相應的用戶名的指針

*/

{

struct?passwd?*getpwuid(),?*pw_ptr;

static?char?numstr[10];

if(?(?pw_ptr?=?getpwuid(?uid?)?)?==?NULL?)?{

sprintf(numstr,?"%d",?uid);??????/*沒有對應的用戶名則?uid?存入?numstr,返回后以字符串的形式打印?uid*/

return?numstr;

}

else

return?pw_ptr-pw_name;??????????/*打印用戶名*/

}

#include?grp.h

char?*gid_to_name(?gid_t?gid?)

{

struct?group?*getgrgid(),?*grp_ptr;

static?char?numstr[10];

if(?(?grp_ptr?=?getgrgid(gid)?)?==?NULL?){

sprintf(numstr,?"%d",?gid);

return?numstr;

}

else

return?grp_ptr-gr_name;

}

linux下ls命令

-rwxr-xr-x 文件權(quán)限 (具體我就不解釋了,這是linux最基本的知識,man chmod或者上網(wǎng)學習一下吧)

1 硬鏈接數(shù),一般你可以理解成子目錄數(shù)(對于普通文件,總是1,對于目錄來說,為目錄下一級子目錄的個數(shù)+2 (+2是由于 . 和 .. 的原因))

root root 分別是文件的owner (所有者)和 group (組),這也是linux最基本知識,可以man chown去了解以下)

702160 文件大小

2008-05-12 11:33 一般是最后一次修改時間

bash 文件名。

linux的ls命令

ls是list的簡寫,就是列出當前目錄內(nèi)容的意思。類似于DOS下的dir命令。用法:

ls[選項][目錄或文件]

find命令是查找的意思查找;當你知道是哪個文件,然后可以用ls查找子文件;但是當不知道是什么盤符,哪個文件夾時就可以使用find命令查找。

用法:find / -name httpd.conf,下面為一些其他用法,

find / -amin -10 # 查找在系統(tǒng)中最后10分鐘訪問的文件

find / -atime -2 # 查找在系統(tǒng)中最后48小時訪問的文件

find / -empty # 查找在系統(tǒng)中為空的文件或者文件夾

find / -group cat # 查找在系統(tǒng)中屬于 groupcat的文件

find / -mmin -5 # 查找在系統(tǒng)中最后5分鐘里修改過的文件

find / -mtime -1 #查找在系統(tǒng)中最后24小時里修改過的文件

find / -nouser #查找在系統(tǒng)中屬于作廢用戶的文件

find / -user fred #查找在系統(tǒng)中屬于FRED這個用戶的文件

希望對你能有所幫助。

linux系統(tǒng)中l(wèi)s命令是什么意思?

ls命令是linux下最常用的命令之一,ls跟dos下的dir命令是一樣的都是用來列出目錄下的文件。\x0d\x0a1. ls -a 列出文件下所有的文件,包括以“.“開頭的隱藏文件(linux下文件隱藏文件是以.開頭的,如果存在..代表存在著父目錄)。\x0d\x0a2. ls -l 列出文件的詳細信息,如創(chuàng)建者,創(chuàng)建時間,文件的讀寫權(quán)限列表等等。\x0d\x0a3. ls -F 在每一個文件的末尾加上一個字符說明該文件的類型。"@"表示符號鏈接、"|"表示FIFOS、"/"表示目錄、"="表示套接字。\x0d\x0a4. ls -s 在每個文件的后面打印出文件的大小。 size(大小)\x0d\x0a5. ls -t 按時間進行文件的排序 Time(時間)\x0d\x0a6. ls -A 列出除了"."和".."以外的文件。\x0d\x0a7. ls -R 將目錄下所有的子目錄的文件都列出來,相當于我們編程中的“遞歸”實現(xiàn)\x0d\x0a8. ls -L 列出文件的鏈接名。Link(鏈接)\x0d\x0a9. ls -S 以文件的大小進行排序

本文名稱:linux下編寫ls命令 linux的ls命令怎么用
文章路徑:http://chinadenli.net/article10/dohgcdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版搜索引擎優(yōu)化網(wǎng)站制作商城網(wǎng)站小程序開發(fā)網(wǎng)站維護

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)