1.linux基础及C高级实验手册

合集下载

实验1:Linux下C语言编程实践

实验1:Linux下C语言编程实践

实验1 linux c语言编程实践一、实验目的1.掌握Linux环境下C程序的编辑、编译、运行等操作;2.掌握多文件的编译及连接;3.初步掌握gdb调试方法;二、实验任务与要求1.在Linux环境下C程序的编辑、编译与运行;2.多文件的编译及连接;3.应用gdb调试程序;三、实验工具与准备计算机PC机,Linux Ubuntu操作系统四、实验步骤与操作指导1.调试下列程序。

程序通过创建一个小型函数库,它包含两个函数,然后在一个示例程序中调用其中一个函数。

这两个函数分别是pro1和pro2。

按下面步骤生成函数库及测试函数库。

步骤1 为两个函数分别创建各自的源文件(将它们分别命名为pro1.c和pro2.c)。

[root@localhost root]# vi pro1.c#include <sdtio.h>void pro1(int arg){printf(“hello:%d\n”,arg) ;}[root@localhost root]# vi pro2.c#include <sdtio.h>void pro2(char *arg){printf(“您好:%s\n”,arg) ;}步骤2 分别编译这两个文件,生成要包含在库文件中的目标文件。

这通过调用带有-c 选项的gcc编译器来实现,-c选项的作用是阻止编译器创建一个完整的程序,gcc将把源程序编译成目标程序,文件名为以.o结尾。

如果此时试图创建一个完整的程序将不会成功,因为还未定义main函数。

[root@localhost root]# gcc -c pro1.c pro2.c[root@localhost root]# ls *.opro1.o pro2.o步骤3 现在编写一个调用pro2函数的程序。

首先,为库文件创建一个头文件lib.h。

这个头文件将声明库文件中的函数,它应该被所有希望使用库文件的应用程序所包含。

linuxc编程实验指导书

linuxc编程实验指导书

《UNIX/LINUX》实验指导书一、实验目的UNIX/LINUX是一门应用性很强的课程,上机实验是该课程的重要环节。

本实验是结合《UNIX/LINUX》课程的学习而开设的实验。

本实验目的如下:1. 通过上机实验,加深对UNIX操作系统理论知识的进一步理解,增强对UNIX操作系统的感性认识和实际操作能力;2. 通过使用具体的LINUX操作系统,熟悉LINUX的工作环境,掌握其安装、配置与基本操作技术。

3. 熟悉常用的shell命令,掌握shell编程技术。

4. 熟悉LINUX环境下C语言应用程序开发的基本过程,熟悉基本库函数的使用,具有初步的应用程序设计能力。

二、适应专业计算机科学与技术专业三、实验学时数10学时四、实验内容及学时安排实验一:基本Shell命令练习实验目的:熟悉Red Hat Linux 9.0的操作环境;了解图形与命令行式两种操作方法;掌握基本Shell 命令的使用。

学时数:2学时实验内容:基本Shell命令实验要求:1.熟悉Red Hat Linux 9.0的操作环境,掌握登录、退出系统等基本操作与过程;2.了解图形与命令行式两种操作方法;3.基本Shell命令练习。

实验二:Shell编程实验目的:理解Shell程序的设计方法;熟悉Shell程序的编辑、运行、调试方法与过程。

学时数:2学时实验内容:考勤模拟Shell程序设计实验要求:编写一考勤模拟Shell脚本程序完成实验内容所述任务,并能上机正确运行与显示结果。

实验三:文件管理实验目的:熟悉LINUX环境下C语言应用程序开发的基本步骤;完成简单文件管理C应用程序的开发。

学时数:2学时实验内容:文件复制程序设计实验要求:1.熟悉Linux下最常用的C语言编译器GCC的基本使用方法;2.编写文件复制C语言程序,完成实验内容规定所述任务,并能上机正确编译与运行。

实验四:进程通信实验目的:熟悉LINUX中典型进程通信方式;完成简单进程通信应用程序的开发。

linux-实验指导手册-常用命令

linux-实验指导手册-常用命令

实验一Linux常用命令(一)1、Shell环境和Shell命令格式如果实验用计算机上Linux以图形方式启动,登录系统后打开终端窗口。

方法:桌面:右键菜单-Terminal(终端);或:主菜单-系统工具-Terminal(终端)。

命令格式:command [-option(s)] [option argument(s)] [command argument(s)]步骤1:使用who命令步骤2:使用date命令步骤3:使用上下健提取历史命令who,执行。

2、文件系统操作命令(1)改变目录命令:cd 目标目录路径步骤1:使用绝对路径依次进入Linux根目录下的所有子目录。

例如:cd /usr/bin步骤2:使用绝对路径依次进入用户目录。

步骤3:使用相对路径进入子目录1)使用绝对路径进入/lib目录2)使用相对路径进入/lib/i868目录3)使用相对路径退回到/lib目录(2)列出并观察目录中的文件步骤1:进入任意目录,使用无参数ls命令列出并观察其中所有文件;步骤2:进入任意目录,使用通配符列出其中部分文件;例如:cd /binls c*步骤3:使用-l选项,列出目录中文件的各种属性,并观察识别这些属性。

步骤4:直接列出子目录中的文件。

例如:ls i868步骤5:仅列出子目录本身(-d)步骤6:使用-F选项,显示文件类型标志。

步骤7:使用-a或-A选项,观察结果有什么变化。

步骤8:综合使用以上选项。

(3)目录的创建与删除步骤1:在用户目录中,使用相对路径创建一个任意名称的目录,如“tmp”。

mkdir tmp步骤2:删除该目录rmdir tmp步骤3:在根目录中,使用绝对路径在用户命令中创建一个子目录。

mkdir ~/tmp步骤4:删除该目录rmdir ~/tmp步骤5:使用-p参数一次创建多级目录。

如:mkdir ~/tmp/dir1步骤6:使用-p参数删除多级目录。

如:cd ~rmdir tmp/dir1(4)文件和目录拷贝命令:cp步骤1:从/usr/include目录中,任选一个文件拷贝到用户目录的tmp子目录中mkdir ~/tmpcp /usr/include/signal.h ~/tmp步骤2:从/usr/include目录中,任选一个文件拷贝到用户目录的tmp子目录中,并改变其文件名。

linux基本命令实验报告

linux基本命令实验报告

linux基本命令实验报告《Linux基本命令实验报告》在计算机领域,Linux操作系统一直以其高度的自由度和强大的功能而备受推崇。

作为一名计算机爱好者或者从事相关行业的人士,熟练掌握Linux基本命令是必不可少的。

本实验报告将介绍一些常用的Linux基本命令,并通过实验来展示它们的用法和效果。

首先,我们来介绍一些常用的文件操作命令。

在Linux系统中,我们可以使用“ls”命令来列出当前目录下的所有文件和文件夹;使用“cd”命令来切换目录;使用“mkdir”命令来创建新的文件夹;使用“touch”命令来创建新的文件;使用“rm”命令来删除文件或文件夹等。

通过实验,我们可以验证这些命令的功能和用法。

其次,我们将介绍一些常用的系统管理命令。

在Linux系统中,我们可以使用“ps”命令来查看当前系统中正在运行的进程;使用“top”命令来动态查看系统的运行状态;使用“kill”命令来终止某个进程的运行等。

这些命令在系统管理和故障排查中起着至关重要的作用,通过实验,我们可以验证它们的实际效果。

最后,我们将介绍一些常用的网络操作命令。

在Linux系统中,我们可以使用“ping”命令来测试网络连接是否通畅;使用“ifconfig”命令来查看当前系统的网络配置信息;使用“ssh”命令来远程登录其他计算机等。

这些命令在网络管理和故障排查中也扮演着重要的角色,通过实验,我们可以验证它们的实际效果。

通过本次实验,我们深入了解了Linux基本命令的用法和效果,掌握了一些常用的文件操作、系统管理和网络操作命令,为我们在Linux系统下的工作和学习提供了有力的支持。

希望本实验报告能够对大家有所帮助,也希望大家能够继续深入学习和实践,不断提升自己在Linux领域的技能水平。

LINUX基础实验报告

LINUX基础实验报告

LINUX基础实验报告实验⼀:主要是介绍Linux系统概况,⽆运⾏代码。

实验⼆:Linux的基本操作重要知识点[Tab]使⽤Tab键来进⾏命令补全,Tab键⼀般键盘是在字母Q旁边,这个技巧给你带来的最⼤的好处就是当你忘记某个命令的全称时你可以只输⼊它的开头的⼀部分然后按下Tab键就可以得到提⽰或者帮助完成,当然不⽌补全命令,补全⽬录,补全命令参数都是没问题的。

Ctrl+c键⽤来强⾏终⽌当前程序。

⼀些其他常⽤快捷键按键作⽤Ctrl+d键盘输⼊结束或退出终端Ctrl+s暂定当前程序,暂停后按下任意键恢复运⾏Ctrl+z将当前程序放到后台运⾏,恢复到前台为命令fgCtrl+a将光标移⾄输⼊⾏头,相当于Home键Ctrl+e将光标移⾄输⼊⾏末,相当于End键Ctrl+k删除从光标所在位置到⾏末Alt+Backspace向前删除⼀个单词Shift+PgUp将终端显⽰向上滚动Shift+PgDn将终端显⽰向下滚动通配符是⼀种特殊语句,主要有星号(*)和问号(?),⽤来对对字符串进⾏模糊匹配(⽐如⽂件名,参数名)。

当查找⽂件夹时,可以使⽤它来代替⼀个或多个真正字符;当不知道真正字符或者懒得输⼊完整名字时,常常使⽤通配符代替⼀个或多个真正的字符。

终端⾥⾯输⼊的通配符是由 Shell 处理的,不是由所涉及到命令语句处理的,它只会出现在命令的“参数值”⾥(它不⽤在命令名称⾥,命令不记得,那就⽤Tab补全)。

当 Shell 在“参数值”中遇到了通配符时,Shell 会将其当作路径或⽂件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进⾏代换(路径扩展);否则就将该通配符作为⼀个普通字符传递给“命令”,然后再由命令进⾏处理。

总之,通配符实际上就是⼀种 Shell 实现的路径扩展功能。

在通配符被处理后, Shell 会先完成该命令的重组,然后再继续处理重组后的命令,直⾄执⾏该命令。

Shell 常⽤通配符:字符含义*匹配 0 或多个字符匹配任意⼀个字符[list]匹配 list 中的任意单⼀字符[!list]匹配除list 中的任意单⼀字符以外的字符[c1-c2]匹配 c1-c2 中的任意单⼀字符如:[0-9] [a-z]{string1,string2,...}匹配 sring1 或 string2 (或更多)其⼀字符串{c2..c2}匹配 c1-c2 中全部字符如{1..10}在linux命令⾏中获取帮助使⽤man 命令通常情况下,man ⼿册⾥⾯的内容都是英⽂的,这就要求你有⼀定的英⽂基础。

Linux下c语言编程实验讲义

Linux下c语言编程实验讲义

课程名:Linux下c语言编程专业:08嵌入式系统工程专试验1:Linux系统基本shell指令试验2:gcc编译器与多文件交叉包含试验3:库文件的创建与使用试验4:linux系统程序调试-行列式求值程序试验5:进程与线程程序调试试验6:TCP程序与试验7:UDP程序试验1 Linux系统基本shell指令实验一Linux系统基本文件操作试验目的:掌握Linux系统常见的文件操作指令;掌握Linux系统常见的文件形式;试验设备PC机、虚拟机、redhat9,桌面环境KDE试验原理一、Linux系统常见的文件形式(一)为便于用户识别文件形式,操作系统一般使用扩展名来标示文件类型。

文件扩展名是文件名的最后一个点之后的部分(在文件sneakers.txt中,“txt”是文件的扩展名)。

下面简单列出了一些文件扩展名和它们的含义:1. 压缩的和归档的文件.bz2 —使用bzip2 压缩的文件.gz —使用gzip 压缩的文件.tar —使用tar(tape archive,磁带归档的简写)压缩的文件,又称tar 文件.tbz —用tar 和bzip 压缩的文件.tgz —用tar 和gzip 压缩的文件.zip —使用ZIP 压缩的文件,在MS-DOS 应用程序中常见。

多数为Linux 压缩的文件使用gzip 压缩,因此Linux 文件中的.zip 归档较少见。

2. 文件格式.au —音频文件.gif —GIF 图像文件.html/.htm —HTML 文件.jpg —JPEG 图像文件.pdf —文档的电子映像;PDF 代表Portable Document Format(可移植文档格式).png —PNG 图像文件(Portable Network Graphic 的简写,可移植网络图形).ps —PostScript 文件,为打印而格式化过的文件.txt —纯ASCII 文本文件.wav —音频文件.xpm —图像文件3. 系统文件.conf —一种配置文件。

Linux程序设计实验指导书---

Linux程序设计实验指导书---

《Linux程序设计实验》指导书实验1 Linux下常用命令和Vi的使用一、实验内容:1.Linux的常用基本命令,如ls、cd、mkdir、rmdir、pwd、more等。

2.联机帮助命令-man的使用。

3.Vi的基本使用方法。

二、实验目的:1.了解Linux的命令及使用格式。

2.熟悉Linux的常用命令。

三、实验步骤:1.用pwd显示当前工作目录名:pwd;如果当前目录不是root,需改变到root目录:cd/root。

2.用mkdir建立四个目录:mkdir /root/test1;mkdir /root/test2;mkdir/root/test2/abcd;mkdir /mypro。

3.用cd命令从root开始依次进入test1、test2、abcd、mypro目录,并用 pwd验证。

cd test1; pwdcd ../test2;pwdcd abcd;pwdcd ../../mypro;pwd4.用cd 命令从mypro目录返回到根目录,并用pwd命令验证。

cd /pwd5.用rmkdir命令删除子目录 abcd。

Rmdir /root/test2/abcd6.分别用ls ls –a 和ls-l查看root目录的内容。

lsls –als -l7.man 命令:(按PageUp键向上翻页PageDown向下翻页,按q退出)man ls 查看ls的帮助信息。

man cp 查看cp的帮助信息。

man mkdir 查看mkdir的帮助信息。

man rm>rm_help 用重定向生成帮助文档8.文本编辑器vi的使用①在终端里输入vi或vim,启动vi②按a或i进入vi的插入模式,这时可以在vi里输入文字了,输入如下内容:thisis my first file….③按esc键进入命令模式,输入:w/home/myfirstfile按回车保存文件,再输入:q按回车,退出vi。

④用more查看文件myfirstfile的内容:more/home/myfirstfile⑤四、实验注意:①命令一般是小写字符串。

LinuxC语言实验指导书

LinuxC语言实验指导书
Linux C 语言实验指导书
一、Vi 使用练习
1.实验目的 通过指定指令的Vi操作练习,使读者能够熟练使用Vi中的常见操作,并且熟悉Vi 的3 种模式,如果读者能够熟练掌握实验内容中所要求的内容,则表明对Vi的操作已经很熟练 了。 2.实验内容 (1)在“/root”目录下建一个名为“/Vi”的目录。 (2)进入“/Vi”目录。 (3)将文件“/etc/inittab”复制到“/Vi”目录下。 (4)使用Vi 打开“/Vi”目录下的inittab。 (5)设定行号,指出设定initdefault(类似于“id:5:initdefault”)的所在行号。 (6)将光标移到该行。 (7)复制该行内容。 (8)将光标移到最后一行行首。 (9)粘贴复制行的内容。 (10)撤销第9 步的动作。 (11)将光标移动到最后一行的行尾。 (12)粘贴复制行的内容。 (13)光标移到“si::sysinit:/etc/rc.d/rc.sysinit”。 (14)删除该行。 (15)存盘但不退出。 (16)将光标移到首行。 (17)插入模式下输入“Hello,this is Vi world!”。 (18)返回命令行模式。 (19)向下查找字符串“0:wait”。 (20)再向上查找字符串“halt”。 (21)强制退出Vi,不存盘。 分别指出每个命令处于何种模式下? 3.实验步骤 (1)mkdir /root/Vi (2)cd /root/Vi (3)cp /etc/inittab ./ (4)Vi ./inittab (5):set nu(底行模式) (6)17<enter>(命令行模式) (7)yy (8)G (9)p (10)u (11)$ (12)p
int display1 (char *string) {
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式学院实验手册linux基础及C高级实验嵌入式学院教材开发部编著(内部资料,请勿外传)嵌入式学院(2014)版权所有V3.0Linux基础实验实验一Linux常用命令的使用【实验内容】本课程要求学员对Linux基本操作命令有一定了解和掌握。

下面列出的一些常用命令作为参考。

最好针对每一个都能亲自练习、掌握。

【实验平台】PC机【实验步骤】1.ls 命令----------------------------------------------------------------------ls 以默认方式显示当前目录文件列表ls –a 显示所有文件包括隐藏文件ls –l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行----------------------------------------------------------------------2.cd 命令cd dir 切换到当前目录下的dir目录cd .. 切换到到上一级目录cd ~ 切换到用户目录,比如是root用户,则切换到/root下----------------------------------------------------------------------3.rm 命令rm file 删除某一个文件rm -rf dir 删除当前目录下叫dir的整个目录----------------------------------------------------------------------4.mv命令mv source target 将文件或者目录source更名为target----------------------------------------------------------------------5.echo 命令echo message 显示一串字符----------------------------------------------------------------------6.cat 命令cat file 显示文件的内容,和DOS的type相同cat file | more 显示文件的内容并传输到more程序实现分页显示,使用命----------------------------------------------------------------------7.du命令du 计算当前目录的容量du -sm /root 计算/root目录的容量并以M为单位----------------------------------------------------------------------8.find命令find -name <path> file 在/path目录下查找看是否有文件file----------------------------------------------------------------------9.grep命令grep -r “chars” ./ 在当前目录的所有文件查找字串chars -r表示递归查找子目录Ctrl +c 推出递归----------------------------------------------------------------------10.vi的使用vi file 编辑文件filevi原基本使用及命令:vi分为编辑状态和命令状态。

输入命令要先按ESC,退出编辑状态,然后输入命令。

常用命令有::x(退出):x!(退出不保存):w(保存文件):w!(不询问方式写入文件):r file(读文件file):%s/oldchars/newchars/g(将所有字串oldchars换成newchars)i进入编辑插入状态ESC退出编辑状态----------------------------------------------------------------------11.man 命令man ls 读取关于ls命令的帮助----------------------------------------------------------------------12.tar 命令tar -xfzv file.tgz 将文件file.tgz解压tar -zcvf file.tgz <source> 将文件或目录<source>压缩为file.tgzgzip directory.tar 将覆盖原文件生成压缩的directory.tar.gzgunzip directory.tar.gz 覆盖原文件解压生成不压缩的directory.tar。

----------------------------------------------------------------------13.文件目录管理命令su root 切换到超级用户chmod a+x file 将file文件设置为可执行,脚本类文件一定要这样设置一个,否则得用bash file才能执行chmod 666 file 将文件file设置为可读写chown user /dir 将/dir目录设置为user所有----------------------------------------------------------------------实验二:TFTP服务器配置【实验目的】通过实验,学员掌握TFTP服务配置和使用方法【实验原理】TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。

TFTP承载在UDP上,提供不可靠的数据流传输服务,不提供存取授权与认证机制,使用超时重传方式来保证数据的到达。

【实验内容】本实验通过安装和配置TFTP服务实现简单的文件传输。

【实验平台】带有Linux操作系统的PC机,并在以太网中连接。

【实验步骤】1.配置服务器端使用以下的命令,安装TFTP服务。

linux@farsight:~$ sudo apt-get install tftp-hpa tftpd-hpa 正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成推荐安装的软件包:inet-superserver下列【新】软件包将被安装:tftp-hpa tftpd-hpa xinetd共升级了0 个软件包,新安装了 3 个软件包,要卸载0 个软件包,有9 个软件未被升级。

需要下载198kB 的软件包。

解压缩后会消耗掉631kB 的额外空间。

获取:1 intrepid/main tftp-hpa 0.48-2.2ubuntu1 [24.5kB]获取:2 intrepid/main tftpd-hpa 0.48-2.2ubuntu1 [35.2kB]获取:3 intrepid/main xinetd 1:2.3.14-7ubuntu1 [139kB]下载198kB,耗时14s (13.8kB/s)正在预设定软件包 ...选中了曾被取消选择的软件包tftp-hpa。

(正在读取数据库 ... 系统当前总共安装有108543 个文件和目录。

)正在解压缩tftp-hpa (从 .../tftp-hpa_0.48-2.2ubuntu1_i386.deb) ...选中了曾被取消选择的软件包tftpd-hpa。

正在解压缩tftpd-hpa (从 .../tftpd-hpa_0.48-2.2ubuntu1_i386.deb) ...选中了曾被取消选择的软件包xinetd。

正在解压缩xinetd (从 .../xinetd_1%3a2.3.14-7ubuntu1_i386.deb) ...正在处理用于man-db 的触发器...正在设置tftp-hpa (0.48-2.2ubuntu1) ...正在设置tftpd-hpa (0.48-2.2ubuntu1) ...2.修改配置文件在/etc/default下修改tftp服务的配置文件tftpd-hpa:linux@farsight:~$ sudo vim /etc/default/tftpd-hpa# /etc/default/tftpd-hpaTFTP_USERNAME="tftp"TFTP_DIRECTORY="/tftpboot"TFTP_ADDRESS="0.0.0.0:69"TFTP_OPTIONS="-l -c -s"说明:修改项,其中TFTP_DIRECTORY处可以改为你的tftp-server的根目录,参数-c 指定了可以创建文件。

创建文件夹/tftpboot, 修改权限为7773.手动启动/停止服务用户可以通过手动去启动/停止TFTP服务器,修改配置文件后必须重新启动服务。

a) 停止包括tftp在内的网络服务,查看状态显示为“not running”。

linux@farsight:~$ sudo service tftpd-hpa stoptftpd-hpa stop/waitinglinux@farsight:~$ sudo service tftpd-hpa starttftpd-hpa start/running, process 9948b) 启动包括tftp在内的网路服务,查看状态显示为“running”。

linux@farsight:~$ sudo service tftpd-hpa start* Starting internet superserver xinetd [ OK ]linux@farsight:~$ sudo service tftpd-hpa statustftpd-hpa start/running, process 9875c) 重新启动包括tftp在内的网络服务。

linux@farsight:~$ sudo service tftpd-hpa restarttftpd-hpa start/running, process 99534.tftp服务器测试a) 登录服务器linux@farsight:~$ tftp localhost或linux@farsight:~$ tftp <主机ip>b) 从tftp服务器下载文件tftp>get <filename>c) 上传文件到tftp服务器tftp>put <filename>d) 查看帮助tftp>?或tftp>help tftp-hpa 0.48Commands may be abbreviated. Commands are:connect connect to remote tftpmode set file transfer modeput send fileget receive filequit exit tftpverbose toggle verbose modetrace toggle packet tracingliteral toggle literal mode, ignore ':' in file namestatus show current statusbinary set mode to octetascii set mode to netasciirexmt set per-packet transmission timeouttimeout set total retransmission timeout? print help informationhelp print help informatione) 退出登陆tftp>quit实验三NFS服务器配置【实验内容】NFS(Network File System)主要实现了Linux系统之间的资源共享。

相关文档
最新文档