1、软盘 fdo光盘 hdc硬盘 sdaUsb 接口的优盘 sdb1。3. 权限的含义是什么?如何使用数字法设定文件的权限?权限的含义Linux 系统中的每个文件和目录都有相应的访问许可权限,访问权限分为只读(r),可写(w)和可执行三种。有三种不同类型的用户可对文件或目录进行访问,分别是文件所有者(u),同组用户(g)和其他用户(o)。所有的文件和目录都被创建它们的人所“拥有”,只要你是这个文件的所有者或你登录为根用户,你就拥有了改变所有者、组群和其他人权限的权利。使用数字法改变权限命令格式 chmod 权限数值 文件名说明 给指定文件赋予数值所规定的权限。在数字设定法中,每种权限设置均可用数值
2、来代表,其中 0 表示没有权限,1 表示可执行权限,2 表示可写权限,4 表示可读权限,这些值之和便可用来设立特定权限。所以数字属性的格式应为 3 个 07 的八进制数,3 个数表示的次序为 u、g 和 o。例:将文件 file6 设置为 rwxr-xx 权限,命令为:Chmod 751 file6 4什么是 I/O 重定向?(1)输入重定向 命令格式命令 文件名说明 将命令(或可执行程序)的标准输入重定向到指定的文件中。cat /etc.txt1 表示将/etc.txt1 的文件内容作为 cat 命令的输入,显示到屏幕。(2)输出重定向 说明 将命令(或可执行程序)的标准输出或标准错误输出重
3、定向到指定文件中。ls/etc /test1/etc.txt 表示将/etc 目录下的文件列表输出到文件/text1/etc.txt 中。5. 在 Linux 中挂载 u 盘并能显示其文档的中文信息,所使用的挂载命令是: 挂载 U 盘命令格式mount/dev/sda1/mnt/usb。6. 什么是 vi 的三种操作模式?vi 有 3 种基本工作模式:命令模式(Command Mode)、输入模式(Insert Mode)和末行模式(Last Line Mode)。7. 图示三种工作模式转换图。i,a,oeso输入模式末行模式:,?,/命令模式启动 vi三、实验内容(包含实验所用命令或相关程序
4、源代码)1. shell 操作命令(1) 创建名为 stu1、stu2 的 2 个用户,设置密码分别为 student1 和 student2,并将它们设为组 group1 中的成员。# useradd stu1# passwd stu1 回车后敲入密码 student1# groupadd group1# usremodggroup1 stu1 # useradd stu2 g group1# su stu2$passwd 回车后敲入密码 student2(2) 在每个用户的主目录下建立 2 个目录,分别命名为 dir1 和 dir2。stu1localhost root$ cd stu1l
5、ocalhost stu1mkdir dir1 stu1localhost stu1su stu2 stu2localhost stu2 mkdir dir2(3) 查找 stu1 用户主目录、下属各子目录的默认存取权限,并给出结论。$ cd $ ls ldir1 目录权限为:drwxr-xr-x,即目录的用户可读、写、执行,同组用户可读、执行,其他用户可读、执行。$cd .用户主目录权限为:drwx,即目录的用户可读、写、执行,同组和其他用户无任何权限。(4) 调试 pwd 和 cd 命令,回答下列关于 Linux 文件系统中目录的有关问题。 用户主目录的绝对路径如何表示?/home/stu
6、1,/home/stu2 根目录如何表示?/和分别表示什么目录?本级目录,父目录表示什么目录? 用户主目录(5) 新建用户 stu3,设置其密码为 student3,并将其设置为 group2 中成员。尔后,以 stu3 登录,在其主目录下建立名为 text 的目录,在 text 目录下再建立名为 dir1 的子目录, 并使其成为当前目录。# groupadd group2# useradd stu3 g group2 # su stu3$passwd 回车后敲入密码 student3$ mkdir text$ mkdir dir1$ cd text/dir1(6) 使用以下命令,分析下列命令
7、行的显示结果。$ catsneakers.txt buy some sneakersthen go to the coffee shop then buy some coffD$cat sneakers.txt命令将输入重定向至文件 sneakers.txt 中,cat 命令可以显示文本文件的内容。(7) 使用上题的方法,在 dir1 目录中建立 home.txt 文件,其内容为: bring the coffee hometake off shoes put on sneakersmake some coffee relax!$cd /home/stu1/dir1$cat home.txtb
8、ring the coffee home take off shoesput on sneakers make some coffee relax!ctrl+D(8) 试写出实现下列功能的 shell 命令: 将 home.txt 文件移至其上级目录中(即 text 目录下)。$mv ./home.txt. 将 home.txt 添加到 sneakers.txt 尾部形成新的文件 saturday.txt。$cat sneakers.txt saturday.txt$cat home.txt Saturday.txt 将 text 目录树从 stu3 用户主目录下移至 stu2 主目录下。$s
9、u# mv/home/stu3/text/home/stu2 将 Saturday.txt 文件从 stu1 目录中复制到 stu2 目录中。#cp /home/stu1/saturday.txt/home/stu2(9) 试画出上述命令后,用户主目录中的目录树。2. Linux C 程序开发(1) 使用 catsource 命令,建立一个包含若干空行的 source 文本文件,编写 C 程序将source 中的空行过滤后显示出来。【源程序】/程序 compact.c 如下: #include main()int len=0,i=0,j;char c,line100; while(c=getc
10、har()!=EOF)If(c!=n) linei=c; i+;if (c!= &c!=t)len+;/若该行有非空字符,则 len 长度增加elseif(len0)for(j=0;j sourcethis is line1 this is line2this is line4【运行与测试】: ./compact (2) 使用 C 语言编写一个反向打印程序,使之能够将输入文件中文本行按逆序打印出来(即后出现的文本行先打印)。【源程序】#include #include FILE *fp;char c,buf100;int i=0,len=0,j=0,k;fp=fopen(“myfile”,”w
11、+”);/新建一个文件并输入while(c=getchar()! fputc(c,fp); len+;len=len-1;while(fseek(fp,-2L,1)=0)&(jlen) c=fgetc(fp);i+; j+;/i 为每行的字符个数,j 是总的字符个数if (c=n) fread(buf,i,1,fp);for(k=0;ki;k+) printf(“%c”,bufk); fseek(fp,-i,1); if (j=len) fseek(fp,-1,1);/fgetc 读取字符后指针后移一个字符,所以要向前移fread(buf,i,1,fp);k+)printf(“%c”,bufk
12、);【运行与测试】3. 附加题使用 C 语言编写一个词频统计程序,使之能够搜索指定单词在输入文件中的出现次数。#include int main(argc,argv) int argc;char * argv;int i,flag=0;match=0; char c,*str;argv+; str=*argv; i=0;while(c=getchar()! if(istrlen(*argv)&(c=*str)&(flag=0) str+;i+; else if(i=strlen(*argv)&(c= |c=,|c=t)/如果匹配的字符个数和输入字符数相等 match+;i=0;str=*argv; if (c= |c=,|c=t) flag=0;/flag 标志表示每次从单词首部开始比较else flag=1;/flag=1 表示单词的第一个字母不匹配,无须再比较P
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1