操作系统用户接口实验-验证型

1.实验目的

熟悉Linux操作系统的命令接口、图形接口和程序接口。提高学生的动手能力。

2.实验内容和要求

实验内容

  1. 设计一个简单的程序;
  2. 对该程序进行编译,并运行。

实验要求

(1)熟悉登录Linux系统和退出系统的过程;
(2)使用Linux常用命令;
(3)用C语言编制一个小程序编译并执行。

3. 主要仪器设备

虚拟机:Ubuntu 16.04

4.实验步骤与调试

1.Linux系统的登录

在这里插入图片描述

这里有一点需要注意,在进入虚拟机时,默认小键盘锁打开,如果用户密码中有小键盘输入需要先打开小键盘。

2.Linux系统的基本命令

(1)ls 查看目录

Linux的ls命令有点像windows下的tree命令,查看当前目录下的文件
可选参数:
-l :列出长数据串,包含文件的属性与权限数据等
-a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
-d :仅列出目录本身,而不是列出目录的文件数据
-h :将文件容量以较易读的方式(GB,kB等)列出来
-R :连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来

(2)cd 命令

cd命令用于切换路径,可以是绝对路径,也可以是相对路径。
 
cd(不加参数)返回根目录
cd . 返回当前目录
cd .. 返回上一级目录

(3)grep命令

grep命令通常用于寻找我们所需要的信息,是linux下一个非常有用的功能
命令格式:grep [-acinv] [--color=auto] '查找字符串' filename
参数:
-a :将binary文件以text文件的方式查找数据
-c :计算找到‘查找字符串’的次数
-i :忽略大小写的区别,即把大小写视为相同
-v :反向选择,即显示出没有‘查找字符串’内容的那一行
 
“ls -l | grep -i pwn”表示在ls -l的输出中寻找 带有”pwn”字母的文件并输出

(4)rm 命令

rm命令是删除命令,在linux系统中,rm命令一定要慎用。user提权后可以用rm命令删掉linux重要的系统文件。
-f :就是force的意思,忽略不存在的文件,不会出现警告消息
-i :互动模式,在删除前会询问用户是否操作
-r :递归删除,最常用于目录删除,它是一个非常危险的参数

(5)gcc命令

gcc命令用于把一个C语言源程序文件编译成一个可执行程序。
参数:
-o :output之意,用于指定生成一个可执行文件的文件名
-c :用于把源文件生成目标文件(.o),并阻止编译器创建一个完整的程序
-I :增加编译时搜索头文件的路径
-L :增加编译时搜索静态连接库的路径
-S :把源文件生成汇编代码文件
-lm:表示标准库的目录中名为libm.a的函数库
-lpthread :连接NPTL实现的线程库
-std= :用于指定把使用的C语言的版本

 例如:
 把源文件test.c按照c99标准编译成可执行程序test
gcc -o test test.c -lm -std=c99
#把源文件test.c转换为相应的汇编程序源文件test.s
gcc -S test.c

3.编译C程序并执行

在这里插入图片描述

4.Linux系统的退出

在这里插入图片描述

5.实验结果与分析

本实验整体难度偏易,通过本实验可以逐步了解linux系统的基本命令操作,以及如何在linux系统中使用gcc对C程序进行编译,本程序是对linux操作系统学习的基础,熟练掌握linux的命令行可以帮助我们更好的适应linux。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值