《Linux/Unix系统编程手册》读书笔记9(文件属性),unixlinux编程实践


《Linux/Unix系统编程手册》读书笔记 目录

在Linux里,万物皆文件。所以文件系统在Linux系统占有重要的地位。本文主要介绍的是文件的属性,只是稍微提及一下文件系统,日后如果有更深入的研究一定会写出来。

下图为磁盘分区与文件系统的关系

文件系统中的文件(目录)在i-node表上都有唯一的记录(i-node)。i-node通过数据块指针指向数据块,这些数据块就是该i-node对应的文件的数据。

i-node与数据块的关系如下:

因为Linux支持很多类型的文件系统,但是每种文件系统的实现存在差异。为了解决这种差异,内核提供了虚拟文件系统,通过在应用程序与文件系统之间添加一个抽象层来让程序员在编写应用程序的时候不用考虑文件系统的种类。

初步了解文件系统后,进入正题-----文件属性

正因为万物皆文件,我们很多时候需要获取文件的信息,以便知道它是普通文件还是目录文件,或者想知道它的时间戳等信息。这时候我们可以通过stat()系统调用来获取我们想要的文件信息。

1 #include <sys/stat.h>
2 
3 int stat(const char *pathname, struct stat *statbuf);
4 int lstat(const char *pathname, struct stat *statbuf);
5 int fstat(int fd, struct stat *statbuf);

调用成功返回0,失败返回-1。文件的信息会存放到statbuf。

pathname为文件名,对于lstat,如果文件为符号链接的时候返回的为该链接的信息,而不是指向的文件。

fstat则是获取打开文件描述符对应的文件的信息。

 接着来看看stat结构的格式:

其中将st_mode与S_IFMT相与,可以得到文件类型,而st_mode的低12位为文件权限。除此之外还有时间戳需要注意,st_atime代表上次访问时间,st_mtime代表上次修改文件时间,st_ctime代表上次文件状态发生改变的时间。

我们经常会接触到文件的权限。其中用户分为3类:文件的所属者(owner),文件所属者所在的用户组,其他用户。每类的用户有3种权限:可读,可写,可执行。

 练习:

15-6:命令chmod a+rX file 的作用是对所有各类用户授予读权限,并且当file是目录或者file的任一类用户有可执行权限时,将向所有各类用户授予可执行权限。

1 #include "tlpi_hdr.h" 2 #include <unistd.h> 3 #include <stdio.h> 4 #include <sys/stat.h> 5 #include <sys/types.h> 6 7 #define READ (S_IRUSR | S_IRGRP | S_IROTH) 8 #define EXECUTE (S_IXUSR | S_IXGRP | S_IXOTH) 9 10 11 int main(int argc, char *argv[]){ 12 struct stat sb; 13 int i; 14 15 if(argc < 1 || strcmp(argv[1], "--help") == 0) 16 usageErr("%s filename...\n", argv[0]); 17 18 for(i = 1; i < argc; i++){ 19 if(stat(argv[i], &sb) == -1) 20 errExit("stat"); 21 22 if((sb.st_mode & S_IFMT) == S_IFDIR){ 23 if(chmod(argv[i], sb.st_mode | READ | EXECUTE) == -1) 24 errExit("chmod"); 25 } 26 27 if((sb.st_mode & S_IFMT) == S_IFREG){ 28 if(chmod(argv[i], sb.st_mode | READ) == -1) 29 errExit("chmod"); 30 if((sb.st_mode & S_IXUSR) || (sb.st_mode & S_IXGRP) || (sb.st_mode & S_IXOTH)) 31 if(chmod(argv[i], sb.st_mode | EXECUTE) == -1) 32 errExit("chmod"); 33 } 34 } 35 36 exit(EXIT_SUCCESS); 37 } View Code

结果:

[lan@alan tlpi]$ ls -ld dir file prog
d--------- 2 lan lan 4096 Jul 18 12:31 dir
-r-------- 1 lan lan    0 Jul 18 12:31 file
-r-x------ 1 lan lan    0 Jul 18 12:31 prog
[lan@alan tlpi]$ ./15.6 dir file prog
[lan@alan tlpi]$ ls -ld dir file prog
dr-xr-xr-x 2 lan lan 4096 Jul 18 12:31 dir
-r--r--r-- 1 lan lan    0 Jul 18 12:31 file
-r-x--x--x 1 lan lan    0 Jul 18 12:31 prog

-------先把一个小坑填了,好久没有写博客了,这段时间找实习,准备考试。。。终于忙完了。。。。值得思考的事情太多太多了。。。。打算写一篇总结,终结这半年的事。。。。

-------继续努力吧,努力以后才不会后悔。。。。继续巩固Linux系统编程,多看书,多代码,多思考!!!!!!

 

 


9篇读书笔记

  ——胡乔木:《痛惜之余的愿望》
  读书笔记范文一
  读《命运》有感
  前阵子在书城买了本书,叫《滴水藏海》,里边有300个经典的哲理故事。现在我来品味一篇小故事,叫《命运》。
  《命运》讲的是连个孩子的命运,一个被高僧占卜为“状元”,另一个为“乞丐”。二十年后,当初的“状元”成了乞丐,而“乞丐”却成了“状元”。
  上帝说:“我赋予每个人的天分之占他命运的三分之一,其余的在于他如何去把握。”
  看了这段话,我很受触动。把握,把握命运,多简单的字眼,可是又有多少人真正把握住了自己的命运呢?不必埋怨自己的天分,更不必埋怨自己的命运,因为命运掌握在自己的手中,你随时都可以改变它的!只要你愿意。

  读书笔记范文二
  读《评说玫瑰》有感
  这篇文章很早前我已在《故事会》上读过,当时我就很喜欢它,现在又反复读了几遍,印象更深了。它的名字叫《评说玫瑰》。
  短短的几句话,包含了深深的哲理。两句话语,代表了两种不同的人生观。
  玫瑰园里,有一对双胞胎和她们的母亲。双胞胎对玫瑰园的看法是这样的:“这是个坏地方!因为每朵花下面都有刺。”“这是个好地方!因为每丛刺上都有花。”
  道理很明了不同的角度看事物都会有不同的想法,这个法则可以用到任何方面,只要用积极、乐观的态度去面对一切的话,会有最好的结尾!不信,试试看吧。

  读书笔记范文三
  一个令人难以置信的道理
  “百分之九十九的烦恼不会发生。”这句话你相信吗?我犹犹豫豫的,半信半疑。
  又一起的《读者》里,就有一篇这样的文章,题目就是《百分之九十九的烦恼不会发生》,它用一个个鲜明的事例来说明这个道理,好神奇耶!
  神奇归神奇,我还是认为这是一句安慰人的话,因为这感觉有点不可思议,如果烦恼都不会发生,那还烦恼什么?如果真的是对的,那……不是太伟大了?
  我做了一个实验,写下了3个烦恼,果然,一个也没发生,实在太令我吃惊了。你一定不信,我看你可以试试。(那个烦恼一定要现实哦)

  读书笔记范文四
  读《绿屋的安妮》有感
  《绿屋的安妮》写得不错,内容也很有味道,好!
  11岁的孤儿安妮被错送到住在绿屋的一对夫妇家,因为安妮的可爱,那对夫妇收留了安妮。于是绿屋的安妮上学了,发生了许多让人又可气又可笑的故事……
  看完了这本书,我不又喜欢上了安妮这个人物形象,她活泼、大胆、可爱、聪明、善良,最重要的是她极富想象力,乐观极了,在她眼里,什么都是美好的。她爱说话,中叽叽喳喳地说个不停,我倒希望和她交朋友,有她在我永远都不会寂寞了。
  我希望能做个像安妮一样的女孩,讨人喜欢的可爱女孩。因为女孩不是因为美丽才可爱,而是因为可爱才美丽。

  读书笔记范文五
  在寒假期间,我读了美国著名作家海明威的小说《老人与海》。最令我佩服的是小说中老渔夫的意志,他让我懂得了一个人一定要有坚持不懈的精神,才能获得成功。小说通过人与自然的斗争,表达了人要勇敢地面对失败的主题。桑提亚哥在同象征厄运的鲨鱼的斗争中虽然失败了,但他并没有在厄运面前屈服,认为人虽可以暂时战败,但人的精神和意志是永远也打不垮的。“一个人并不是生来要给打败的,你尽可以把他消灭掉,可就是打不败他”,他的这句话在我心中留下了深刻的印象。小说在艺术上具有很高的概括性、寓言性和象征性。运用反衬法、内心独白来刻画人物性格,语言清澈流畅、朴素无华。
  小说描写的是一个老渔夫桑地亚哥,他是一位孤独、失败,而又英勇无畏、热爱生活、渴望胜利的老人。小说一开始,就奠定了其失败与孤独的命运基调——“他是个独自在湾流中一条平底小帆船上钓鱼的老人,......余下全文>>
 

我要读书笔记9篇,每篇200字希望大家帮帮我

1。读《命运》有感

前阵子在书城买了本书,叫《滴水藏海》,里边有300个经典的哲理故事。现在我来品味一篇小故事,叫《命运》。
《命运》讲的是连个孩子的命运,一个被高僧占卜为“状元”,另一个为“乞丐”。二十年后,当初的“状元”成了乞丐,而“乞丐”却成了“状元”。
上帝说:“我赋予每个人的天分之占他命运的三分之一,其余的在于他如何去把握。”
看了这段话,我很受触动。把握,把握命运,多简单的字眼,可是又有多少人真正把握住了自己的命运呢?不必埋怨自己的天分,更不必埋怨自己的命运,因为命运掌握在自己的手中,你随时都可以改变它的!只要你愿意 .

2。读《评说玫瑰》有感

这篇文章很早前我已在《故事会》上读过,当时我就很喜欢它,现在又反复读了几遍,印象更深了。它的名字叫《评说玫瑰》。
短短的几句话,包含了深深的哲理。两句话语,代表了两种不同的人生观。
玫瑰园里,有一对双胞胎和她们的母亲。双胞胎对玫瑰园的看法是这样的:“这是个坏地方!因为每朵花下面都有刺。”“这是个好地方!因为每丛刺上都有花。”
道理很明了不同的角度看事物都会有不同的想法,这个法则可以用到任何方面,只要用积极、乐观的态度去面对一切的话,会有最好的结尾!不信,试试看吧。

3。读《绿屋的安妮》有感

11岁的孤儿安妮被错送到住在绿屋的一对夫妇家,因为安妮的可爱,那对夫妇收留了安妮。于是绿屋的安妮上学了,发生了许多让人又可气又可笑的故事……
看完了这本书,我不又喜欢上了安妮这个人物形象,她活泼、大胆、可爱、聪明、善良,最重要的是她极富想象力,乐观极了,在她眼里,什么都是美好的。她爱说话,中叽叽喳喳地说个不停,我倒希望和她交朋友,有她在我永远都不会寂寞了。
我希望能做个像安妮一样的女孩,讨人喜欢的可爱女孩。因为女孩不是因为美丽才可爱,而是因为可爱才美丽。

.4。读《永别了武器》有感

一个告别了武器的人,不是敌人的俘虏,就是爱的俘虏.我不是不善于自我保护,实在是一个放弃自我保护的人.就如同生命的数据库,已经不需要进入的密码,随时都可以打开全部程序,可以读出全部的文件.我说的俘虏,就是这个意义上的俘虏.当我把自我放到阳光下的时侯,我明白从此不能有所伪装,隐蔽的日子一想起就令人不安.当我意识到抗拒的无奈,有多少时间无可挽回,有多少记忆渐渐从内心淡出.说到底,俘虏就是一个不能抵挡伤害的人,就是要有足够的勇气放弃希望,必须承受生存的全部压力.本来,在属于个人的空间,可以沉浸于独自的幻想,可以从尘埃里开出虚拟的花朵.而一个放弃自我保护的人是连欺骗自己都不能,只有不断地净化内心世界.

.5。《伊索寓言》读后感

《伊索寓言》通过简短的小寓言故事来体现日常生活中那些不为我们察觉的真理。这些小故事言简意赅,平易近人。不但读者众多,在文学史上也具有重大影响。作家,诗人、哲学家、平 常百姓都从得到过启发和乐趣。许多故事真可以说是家喻户晓:龟兔赛跑,牧童作剧,狼来了,狐狸吃不着葡萄说葡萄酸。到几千年后的今天,伊索寓言已成为西方寓言文学的范本。 对富人贪婪自私的揭露;对恶人残忍本性的鞭鞑;对劳动创造财富的肯定;对社会不平等的抨击;对懦弱、懒惰的讽刺;对勇敢斗争的赞美。还有许多寓言,教人如何处世,如何做人,怎样辨别是非好坏,怎样变得聪明、智慧。伊索寓言是古希腊人生活和斗争的概况、提炼和总结,是古希腊人留给后人的一笔精神遗产.

.6。《红与黑》读后感

作家笔下展现的,首先是整个法兰西社会的一个典型的窗口——小小的维里埃尔城的政治格局.贵族出生的德瑞那市长是复辟王朝在这里的最高代表......余下全文>>
 

相关内容