13.打印文档的多份副本的命令是什么? [解答]lp –n
(四)Linux文件系统(二)
1.在用户主目录下创建名为memos的目录 [解答] 1)cd //返回用户主目录
2)mkdir memos//建立memos目录
2.用vi编辑器,在用户主目录中创建名为myfile的文件 [解答] 1)vi myfile//建立myfile文件
2)ESC-:wq //存盘退出
3.用cat命令,把myfile多次附加到新创建的名为large的文件中. [解答]一个三次附加的例子
Cat myfile>>large
X3
4.用pr命令及其选项,格式化large文件并打印 [解答] pr large>large.print
6.用cp命令把用户主目录下的所有文件复制到目录memos下 [解答]cp * ./memos
7.用ln命令创建large的另一个文件名 [解答]ln large large.old
8.用mv命令,把large更名为large.old [解答]mv large large.old
9.用mv命令,把large移到memos下 [解答]mv large memos 10.显示一个文件的后五行 [解答]tail –n 5 large 11.显示一个文件的前五行 [解答]head –n 5 large
12.把一个文件的最后30个字符存到另一个文件中 [解答]tail –c 30 large>>myfile
13.保存用户主目录中所有7天前创建的文件列表 [解答] 1)cd..
2)find ./-ctime 7 –name “*” > 7days
14.查找名为passwd的文件
[解答] find ./-name “passwd” 15.查找名为profile的文件 [解答] find ./name
16.从用户主目录开始,查找所有7天前创建的文件 [解答] find $home –atime 7
17.查找所有多于10天的文件,保存到另一个目录中
[解答] find ./ -ctime +10 –name “*” –exec cp {} .\\/backup\\/\\ \\; 18.用paste命令,将两个文件连在一起 [解答] paste large1 myfile>myfile 19.用more命令读大文件. [解答] more file
实验报告
1. 列出任意六个常用命令的格式和参数。 2. 给出查询所有sh命令的帮助命令格式。 3. 实验结果。
4. 问题分析。
思考题
1. 你在Linux操作系统上尝试安装使用过什么软件? 2. 如果忘记某个命令的用法,怎么办?
实验三
实验名称
Linux下C语言编程
实验目的
1. 学习使用Linux/UNIX shell 程序设计语言; 2. 学习使用Linux/UNIX的系统调用。
实验时间
3学时
实验内容
1.Linux下C语言程序的调试过程
a、在用户主目录下用vi编辑C语言源程序(源程序已附后),如:$vi hello.c。 b、用gcc编译C语言源程序:$gcc ./hello.c -o example
这里gcc是Linux下的C语言程序编译器,./hello.c表示待编译的源文件是当前工作目录下的hello.c,-o example表示编译后产生的目标代码文件名为example。 c、若编译不正确,则进入vi修改源程序,否则,运行目标代码:$./example 注意:
a、如果用户shell的环境变量设置得当,可省略―./‖。 b、这只是gcc最最基本的用法。
2.调试下面c语言程序,并在实验报告中说明该程序的功能。 #i nclude
int n,a[200],carry,temp,i,j,digit = 1; printf(\
scanf(\a[0] = 1;
for( i = 2; i <= n; ++i) {
for( j = 1, carry = 0; j <= digit; ++j) {
temp = a[j-1] * i + carry; a[j-1] = temp % 10; carry = temp / 10; }
while(carry) { a[++digit-1] = carry % 10; carry /= 10; } }
printf(\
for( i = digit; i >=1; --i) { printf(\
3. 编写shell程序
(1) 编写一shell程序:编辑一个C语言程序,然后对该语言进行编译,最后执行这个程序。要求C语言程序的名称不预先确定。
(2) 编写一shell程序:测试某文件是否存在且可读,若存在且可读则在屏幕上显示,然后删除;否则在屏幕上输出\!\ 4. 命令解释程序 (1)目的 :
通过本实验熟悉UNIX或Linux操作系统及C语言。熟悉系统调用的编程能力,程序中允许使用库函数。 (2)内容:
利用C语言编写一个微型命令解释程序,接受并解释以下命令: ⑴ dir 列当前目录
⑵ cop 文件1 文件2 拷贝文件 ⑶ era文件名 删除文件 ⑷ dis字符串 显示字符串 ⑸ end 结束,退出 (3)要求:
⑴ 进行命令合法性检查,若不合法,显示出错信息,等待重新输入; ⑵ 命令前后有空格为合法命令。 (4)思路:
下面各题均有编程思路,目的是给大家一些提示、借鉴。同学们可不必拘泥与此,根据自己的理解和想法去编程。
⑴ 用静态数组或二维数组形式定义命令保留字表和shell命令字表。静态数组形式如下:static char * cst [ ]=\;static char * scwt [ ]=\—l\;
⑵ 输入命令字gets(string);
⑶ 分离命令字strcspn( );strncpy( ) ⑷ 比较命令字strcmp( ); ⑸ 执行shell命令system( ); (5)、举例
DOS下定义:char cwt[ ]={\ Linux
下
定
义
:
char
scwt[
]={\
coml[30],comp[30],bak[30],\
strcmp(string1,string2) strcpy(string1,string2) strcat(string1,string2) 执行:shell system(……)
(6)、命令解释程序模拟算法流程图示例 1)简单的数据结构 ①命令保留字表CST
1 2 3 4 5 dir cop era dis end ②Shell命令字表SCWT
1 2 3 4 ls -l cp rm -f echo