实验目的:
掌握如何利用结构体struct stat以及stat函数、fstat函数以及lstat函数判断Linux文件的类型、权限及其它属性。
设计程序,判断指定文件的类型、权限以及最后一次的访问时间。其中指定文件可以作为程序的运行参数在命令行指定,并可以是任意类型的文件(例如普通文件、目录、块设备文件、链接文件等)。参考如下的程序运行结果完成该题。
提示:main函数使用形式参数,例如int main(int argc, char *argv[])
第一次运行:
第二次运行(希冀平台上需要将tty1改为tty):
第三次运行
如何解决如下程序运行结果与ls命令显示不相符的情形?(提示:注意stat函数与lstat函数的区别)
答:当文件是一个符号链接时,stat获取的是该链接指向的原文件信息,lstat获取的是该符号链接本身的信息
编写程序
给出实现该任务的源代码、运行结果的截图,并写出实验体会(可选)。
文件的读写操作
实验目的
巩固文件的不带缓冲流的读写方法
实验任务与要求
编写程序,将当前目录下的文件夹dir1下的普通文件file拷贝至当前目录下的文件夹dir2中(先自建dir1、file、dir2)。要求:不能使用system函数或exec系列函数。
编写程序
给出实现该任务的源代码、运行结果的截图。
实验目的
熟悉Linux下不带缓存的文件I/O操作。
实验任务与要求
第1题:
设计一个程序,要求打开文件“pass”,如果没有该文件,新建该文件,权限设置为文件的所有者具有只读权限;如果该文件存在,则清空其内容。
第2题:
设计一个程序,要求新建一个文件“hello”,利用write函数将“Linux下C程序设计”字符串写入该文件。