Linux程序设计 实验报告 大作业

实 验 报 告 课程名称: LINUX程序设计 学 院: 计算机学院 专 业: 软件工程 班 级: 14-3 姓 名: 张正锟 学 号: 1038

2017年 1月1日 山 东 科 技 大 学 教 务 处 制 实 验 报 告 组别 姓名 张正锟 同组实验者 实验项目名称 实验一 熟悉Linux命令 实验日期 第11周周四9,10节

教师评语 实验成绩 指导教师 实验目的 熟悉并掌握Linux操作系统基本命令 常用的普通命令 了解系统的uname,date,w命令

了解文件的ls和file命令 cat,less,head,tail,nl,wc等命令的使用 文本内容查找grep 命令 文件权限的修改chmod,chown,umask

文件夹操作:mkdir,rmdir

用户和组的管理管理 探究用户配置文件/etc/passwd, /etc/shadow /etc/passwd是用户数据库,其中的域给出了用户名、加密口令和用户的其他信息. /etc/shadow是在安装了影子(shadow)口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd 文件中的加密口令移动到/etc/shadow中,而后者只对超级用户( r o o t )可读。这使破译口令更困难,以此增加系统的安全性。 探究组配置文件组的配置文件/etc/group, /etc/gshadow

id, who, whoami,groups等命令 文件打包与压缩 tar压缩和解压 软件包管理 安装软件tree

卸载软件tree 进程管理 top命令动态显示进程状态

ps命令显示瞬时进程状态 Kill命令终止一个进程 用gedit打开一个文件并在后台运行,显示的进程号为17271,然后用kill命令杀死这个进程,观察到gedit关闭 实验总结 通过本次实验,熟悉了好多Linux下面的基本命令,可以看出Linux的命令基本上都有好多参数可选,这样就可以用一条命令完成好多任务,大大提高效率。另外还学会了当命令不会使用的时候,可以调用man来查看命令的使用方法。 实 验 报 告 组别 姓名 张正锟 同组实验者 实验项目名称 实验二Shell编程 实验日期 第12周周四9,10节

教师评语 实验成绩 指导教师 实验目的 掌握Shell命行的运行 掌握编写和执行Shell程序的步骤 掌握在Shell中使用参数和使用变量的方法 掌握表达式比较,循环结构语句和条件结构语句的写法 掌握在shell脚本中使用函数的方法 简单bash脚本 编写bash脚本

添加执行权限 运行结果

计算器:变量读入和输出 编辑程序 添加可执行权限 运行程序

比较两个数字是否相等 编写程序

添加可执行权限 运行程序

循环计算累加和 编写程序 添加可执行权限 运行程序 利用shell函数计算两数之和 编写程序

添加可执行权限 运行程序

计算数组累乘 编写程序

添加可执行权限 运行程序 实验总结 通过本次实验,我学会了shell中的各种写法,包括流程控制,循环,数组,函数等等,了解到shell在Linux是一种强大的神器,可以批量完成各种操作。 实 验 报 告 组别 姓名 张正锟 同组实验者 实验项目名称 实验三文件操作 实验日期 第13周周四9,10节

教师评语 实验成绩 指导教师 实验目标 1.熟悉cd、date、pwd、cal、who、echo、clear、passwd等常用命令。 2.掌握在用户主目录下对文件进行的操作:复制一个文件、显示文件内容、查找指定内容、排序、文件比较、文件删除等。 3.学会对目录进行管理:创建和删除子目录、改变和显示工作目录、列出和更改文件权限、链接文件等。 二、 文件操作:修改文件权限 设计一个程序,要求把系统中“/etc”目录下的passwd文件权限,设置成文件所有者可读可写,所有其他用户为只读权限。 编写C语言程序

编译执行 查看结果 从终端读写数据 文件的打开可以用open函数,即使原来的文件不存在,也可以用open函数创建文件。在打开或者创建文件时,可以指定文件的属性及用户的权限等参数。 关闭一个打开的文件,用close函数。当一个进程终止时,它所有已打开的文件都由内核自动关闭。 编写C语言程序 查看运行结果 四、文件上锁和锁的释放 1. 题目要求 设计一个程序,要求在“/root”下打开一个名为“5-11file”的文件,如果该文件不存在,则创建此文件。打开后对其加上强制性的写入锁F_WRLCK,按回车后解锁F_UNLCK,然后加上读出锁F_RDLCK,按回车后再解锁F_UNLCK。程序在终端1运行后会显示程序的进程号,再打开终端2,会提示此文件处于锁定状态,此时在终端2可以多按回车,观察程序的运行结果。然后在终端1按回车,等待终端1解锁后,在终端2才可锁定此文件,你可观察到强制性锁是独占状态,当在终端2解锁后,在终端1或2可加读出锁,在读出锁状态终端1或2的运行不需要等待,因为读出锁是处于共享状态,请编写程序并测试程序运行的结果。 分析 主程序先用open函数打开文件“5-11file”,如果该文件不存在,则创建此文件;接着调用自定义函数lock_set:先传递参数“F_WRLCK”给文件“5-11file”加锁,并打印输出给文件加锁进程的进程号,然后先传递参数“F_UNLCK”给文件“5-11file”解锁,并打印输出给文件解锁进程的进程号;在自定义函数lock_set给文件上锁语句前,加上判断文件是否上锁的语句,如果文件已经被上锁,打印输出给文件上锁进程的进程号。 编写C语言程序 执行程序 终端1: 加上写入锁的是: 5403 释放强制性锁: 5403 文件已加上写入锁,其进程号是: 5404 文件已加上写入锁,其进程号是: 5404 文件已加上写入锁,其进程号是: 5404 加上读取锁的是: 5403 释放强制性锁: 5403 终端2: 文件已加上写入锁,其进程号是: 5403 文件已加上写入锁,其进程号是: 5403 文件已加上写入锁,其进程号是: 5403 加上写入锁的是: 5404 释放强制性锁: 5404 加上读取锁的是: 5404 释放强制性锁: 5404 流文件的打开和关闭 带缓存的流文件I/O操作,是基于输入/输出(I/O)流机制的文件操作,又做文件流(File Stream)的操作。下面具体说明文件流的关闭与打开。 题目要求 设计一个程序,要求用流文件I/O操作打开文件“5-12file”, 如果该文件不存在,则创建此文件。 题目分析 带缓存的基于输入/输出(I/O)流机制的文件操作时,打开文件用fopen函数,关闭文件用fclose函数。 程序编写 运行结果 可以看到程序运行后创建了”5-12file”文件 实验总结 通过本次实验,我掌握了Linux下用C语言读写文件的方法,包括带缓存和不带缓存的方法。另外也学会了用C语言修改文件权限等知识点。可以看出Linux和C语言是浑然一体地,可以用C语言无缝地操作Linux系统。 实 验 报 告 组别 姓名 张正锟 同组实验者 实验项目名称 实验四进程控制 实验日期 第14周周四9,10节

教师评语 实验成绩 指导教师 一、 实验目标 1. 理解进程的基本概念及进程的结构 2. 学会Linux环境下进程的相关函数的应用 3. 掌握守护进程的概念、启动和建立 4. 掌握进程操作程序的编写 二、 进程简介 进程是正在执行中的程序。当我们在终端执行命令时,Linux 就会建立一个进程,而当我们的程序执行完成时,这个进程就被终止了。 Linux是一个多任务操作系统,允许多个用户使用计算机系统,多个进程并发执行。 Linux环境下启动进程有两种主要途径:手工启动和调度启动。 程序显示进程号和父进程号 在Linux环境下进程创建时,系统会分配一个唯一的数值给每个进程,这个数值就称为进程标识符(PID)。 在Linux中进程标识有进程号(PID)和它的父进程号(PPID)。其中,PID唯一地标识一个进程。PID和PPID都是非零的正整数。在Linux中获得当前进程的PID和PPID的系统调用为getpid和getppid函数。 程序编写

编译运行 可看到,每次运行的pid都是不同的。 子进程的创建 进程调用fork函数创建一个新进程,由fork创建的新进程被称为子进程(child process)。该函数被调用一次,但返回两次,两次返回的区别是子进程的返回值是0,而父进程的返回值则是新子进程的进程PID。 子进程和父进程继续执行fork之后的指令。子进程是父进程的复制品。例如,子进程获得父进程数据空间、堆和栈的复制品。注意,这是子进程所拥有的拷贝。父、子进程并不共享这些存储空间部分,通常父、子进程共享代码段 编写C语言程序

合集下载

linux的实验报告

linux的实验报告

linux的实验报告Linux的实验报告引言:Linux作为一种开源操作系统,具有广泛的应用领域和强大的稳定性,已经成为计算机科学领域中不可或缺的一部分。

在本次实验中,我们将对Linux进行深入探索和实践,以了解其基本原理和功能。

一、Linux的起源与发展Linux诞生于1991年,由芬兰大学生林纳斯·托瓦兹(Linus Torvalds)开发而成。

起初,Linux只是一个小型的个人项目,但随着时间的推移,越来越多的程序员加入其中,使得Linux逐渐成为一个强大的操作系统。

二、Linux的核心特性1. 开源性:Linux的源代码对所有人开放,任何人都可以对其进行修改和改进。

这使得Linux具有强大的灵活性和可定制性。

2. 多用户和多任务:Linux支持多用户同时登录,并能够同时处理多个任务,大大提高了工作效率。

3. 稳定性和安全性:Linux具有出色的稳定性和安全性,很少出现崩溃和漏洞。

这使得Linux成为服务器和网络设备的首选操作系统。

4. 强大的命令行界面:Linux提供了强大的命令行界面,使得用户可以通过命令行操作来完成各种任务,提高了操作的灵活性和效率。

三、Linux的实验应用在本次实验中,我们通过以下几个方面对Linux进行了实践应用。

1. 安装和配置Linux操作系统首先,我们需要选择适合的Linux发行版,并进行安装和配置。

在安装过程中,我们需要选择合适的分区方案、安装软件包和设置用户账户等。

通过这一步骤,我们熟悉了Linux的安装过程和基本配置。

2. 熟悉Linux的文件系统Linux的文件系统与Windows有所不同,我们需要了解Linux的文件结构和文件路径。

在实验中,我们通过命令行界面进入不同的目录,创建和删除文件,以及修改文件权限等操作,深入了解了Linux的文件系统。

3. 学习Linux的基本命令Linux的命令行界面是其最大的特点之一,我们需要掌握一些基本的命令来完成各种任务。

linux实验报告

linux实验报告

目录实验一Linux基本操作一、实验目的1、掌握linux操作系统的登录与其他基本口令2、掌握linux操作系统的基本命令二、实验内容1、linux命令的格式2、Linux命令的输入、修改、执行、分类、联机帮助3、Linux文件操作三、实验环境安装有Fedora操作平台的计算机一台四、实验过程与结果分析一、linux基本操作由于实验中我们使用的不是root权限,所以对于一些用户建立,关机等都没有相应的权限。

1)登录1.控制台登录提供用户名与密码方可登录2.远程登录这部分由于实验环境所限为进行练习2)修改口令Password pass3)退出4)关机与重启关机:shutdown now重启:reboot二、linux命令这部分主要是练习主要的命令格式(命令格式为:命令名选项一选项二…参数一参数二… )命令的输入与修改,命令的执行等等,这些操作也都及其简单。

主要是用以下几个命令1)$who$who –q /*显示登录用户名和用户数*/$who am I /*显示当前用户和登录时间*/2)echo命令:$ echo Hello! */显示字符串中的参数字符串/*-n /*输出字符串后不换行*/3)data命令用法示例:$date …+Today is %D,now is %r‟ /*显示今天的日期,和现在的时间*/$date …%B %d,%Y‟ /*显示月日年*/4)cal /*显示当年当月的日历*/三、文件操作Linux文件通常是由字母、数字、“.”、“_”和“-”字符组成。

在对大量文件进行操作时可以使用通配符。

个人觉得文件的通配符非常的重要,使用起来及其方便,主要的通配符有以下几种:?:匹配任意单个字符* :匹配0或多个任意字符[ ]:匹配方括号中列出的字符集中的任意单个字符集例如:输出所有以.c结尾的文件$ echo *.c对文件的操作主要有创建新文件,对文件权限的操作,文件的转移等等,命令操作如下所示:1)文件的创建1.cat > newfile2.vi newfile2)文件的权限文件主要有权限有读权限、写权限、执行权限、无权限四种3) 常用文件操作的命令1.文件显示:cat 、more、less2.文件复制、删除和移动cp、rm、mv3.文件内容的统计和排序wc、sort4.改变文件的存取权限chmod5.改变文件的时间标签touch6.设置文件掩码umask7.文件查找、搜索find、grep四、目录操作目录操作是本章最重要的内容,它结合文件操作,用户必须熟练使用在各种目录下进行文件操作。

理工大学Linux实验报告

理工大学Linux实验报告

实验名称实验一Linux操作系统定制安装实验地点博学楼实验时间4月16日网络实验室一、实验目的和要求⑴通过对Linux 操作系统的定制安装,建立对Linux操作系统的初步认识,为后续实验的进行提供基础平台。

⑵掌握Linux操作系统的虚拟机定制安装。

⑶熟悉Linux文件目录结构二、实验内容和原理实验内容:利用虚拟机软件定制安装Linux操作系统,熟悉安装过程中各个选项的意义。

实验原理:虚拟机可以说是一种软件,也可以说是一种技术,它允许用户在一台主机上虚拟出多台计算机,每台虚拟的计算机都可以有自己的硬件及软件配置。

三、主要仪器设备PC机、VMware Player、Redhat/Ubuntu/Fedora四、操作方法与实验步骤⑴安装VMware Player⑵在VMware Player当中创建一个新的虚拟机,指定安装包的路径。

⑶安装定制Redhat Enterprise Linux 5.0说明:⑴对软件开发和和网络服务包进行定制。

⑵选择samba服务、nfs服务、tftp服务、Telnet服务和FTP服务⑶关闭系统防火墙、禁用SELinux服务。

⑷手动设置系统分区。

五、实验数据记录和处理1、安装Ubuntu进入界面:2、选择tftp服务3、对软件开发和网络服务包进行定制,都选择老的软件开发和老的网络服务器4、关闭系统防火网5、禁用SELinux服务六、实验结果与分析七、讨论、心得通过这次实验,在自己电脑的虚拟机上安装好了Ubuntu的镜像文件,并在Ubuntu下写了一些简单的命令,深深地感觉在虚拟机上运行Ubuntu远远要比双系统下方便得多,尤其是在两种不同系统下来回切换。

由于电脑上之前就已经安装过虚拟机,所以,实验报告中未对虚拟机的安装加以赘述。

实验名称实验二熟悉Linux系统的基本命令实验时间4月18日实验地点博学楼网络实验室一、实验目的和要求⑴熟悉Linux命令格式⑵学会如何获取命令帮助信息⑶熟练掌握Linux常用命令⑷掌握GCC命令的使用及其常用参数的含义二、实验内容和原理实验内容:系统设置命令、文件及文件夹操作命令、压缩与解压缩命令、自动补全与历史命令、管道与重定向命令、GCC命令的使用三、主要仪器设备PC机、装有Linux操作系统的虚拟机四、操作方法与实验步骤⑴练习以下常用命令的使用shutdown、reboot、logout、exit、useradd、userdel、su、cd、ls、touch、mkdir、cp、rm、rmdir、mv、more、less、man、du、find、clear、grep、cat、history、tar、unzip、chmod、管道命令|以及重定向命令⑵举例说明管道命令| 的使用⑶举例说明重定向命令<、<<、>、>>的使用⑷编写一个C的源程序,并用gcc进行编译,练习使用gcc的各个参数,理解参数的意义五、实验数据记录和处理1.cd、ls 、mkdir 新建hello文件夹2.cp 复制a到hello文件夹3.rm移除hello 中的a文件4.rmdir移除hello文件夹5.mv更改文件名字、移动文件6.du -b 以字节为单位显示cache目录的大小7.find / -name lolo搜索当前目录下名为lolo的文件8.grep 在lan/b.txt文件里查找字符3,并输出行号-n;输出b.txt内容9.grep重定向追加>>六、讨论、心得本次实验室是熟悉Linux的基本操作命令。

linux编程实验报告

linux编程实验报告

linux编程实验报告篇一:Linux程序设计实验报告《Linux程序设计》实验报告安徽工业大学计算机学院XX年6月1实验一 Linux基本命令的使用1、实验目的学习和掌握Linux的基本命令。

2、实验内容和步骤步骤1:以user_login用户身份并使用telnet登录Linux服务器,按照提示创建自己的账户和口令。

步骤 2:使用新创建的用户账户和口令登录Linux系统,察看登录后的界面。

步骤3:使用pwd命令察看当前的工作目录,然后用ls 命令查看当前目录下的内容,尝试使用-a,-l,-F,-A,-lF等不同选项并比较不同之处。

步骤4:在当前目录下建立一个名为test的新目录,然后将工作目录切换到test下,尝试将/etc目录下的文件passwd拷贝到该目录下(cp 源文件目的目录)。

察看当前目录下的passwd文件的属主和文件权限。

2步骤5:尝试向当前目录下的passwd文件和/etc/passwd 文件分别写入一些新内容(可使用echo “字符串” >>文件的命令),看看操作能否成功,如果不能成功,请说明原因。

用cat命令浏览文件password的内容,用more命令进行浏览翻页操作,再用less命令浏览文件的内容。

比较这几个命令的不同之处步骤6:用ls命令查看test下文件的权限,用mv命令更改文件password的文件名为test.txt,尝试用chown和chgrp更改文件的属主为root、组为root,看看能否成功,不成功,请说明原因。

尝试用chomd将文件权限为“-rw-------”。

看看能否成功,不成功,请说明原因。

3步骤7:用rm命令删除test目录下的所有文件,再用rmdir命令删除test目录。

(想一想有没有一条命令将目录及目录下的所有文件删除,写出这条命令)步骤8:使用ps命令查看当前系统内的进程,并利用man命令获取ps命令的参数,写出获取当前终端进程执行情况的ps命令。

linux操作系统实验报告

linux操作系统实验报告

linux操作系统实验报告第一篇:linux操作系统实验报告Linux实验报告一一、实验步骤及内容1.虚拟机软件的安装(1)先准备虚拟机安装包。

(2)更改安装路径:“D: VMwareVMware Workstationvmware.exe”(3)输入序列号:ctrl+v,在安装过程中不能进行复制剪切操作。

(4)不能重新启动,才能继续安装汉化版D: vmwarevmware workstation2.新建一个虚拟机并进行配置(1)单击新建虚拟机虚拟机的类型选择:典型安装选择客户端操作系统:linux虚拟机的名字及位置根据需要网络类型选择:,桥接。

指定的磁盘容量删除软驱:双击floppy—remove虚拟内存设置:双击memory—1024MB设置linux的安装文件:选择安装镜像文件—指定第一个安装文件—就可以啦!之后会提示安装第二个安装文件就进行选择第二个中间鼠标切换用CTRL+ALT。

3.安装LINUX操作系统(1)要确定鼠标是否在虚拟机的激活状态下:敲回车不需要检测安装文件选择skip进入linux的安装前的配置选项:选择安装的语言—中文简体键盘:--默认鼠标:--默认安装类型:--workstation磁盘分区:--自动分区引导程序:默认网络配置:默认防火墙:无防火墙支持的语言:中文时区:亚洲-上海密码:root123456安装的软件包:全部。

二.在已有虚拟机软件的基础上安装LINUX的技巧。

(1)新建虚拟机—典型安装—linux ,red hat linux---给虚拟机命名,并且指定安装位置d:red hat linux---桥接---10G。

(2)在刚才建立的虚拟机上安装linux系统.(3)配置要安装的linux系统的安装文件iso镜像文件(4)选择配置好linux镜像文件刚才建立的虚拟机,启动虚拟机,开始安装。

三.实验总结充分了解linux系统的安装,学会新建虚拟机,在虚拟机上安装linux系统.和一些简单的技巧并对此门课程有了一定的兴趣。

linux编程实验报告

linux编程实验报告

linux编程实验报告Linux编程实验报告一、引言在计算机科学领域中,Linux操作系统一直以其开源、稳定和灵活的特性而受到广泛关注和使用。

作为一名计算机科学专业的学生,我有幸参与了一项关于Linux编程的实验,并在此报告中分享我的实验结果和心得体会。

二、实验目的本次实验的目的是通过编写Linux程序,熟悉Linux操作系统的基本命令和编程环境。

具体而言,我们需要使用C语言编写一个简单的程序,实现文件的读取、写入和修改等功能,并在Linux环境下进行测试和验证。

三、实验过程1. 环境准备在开始实验之前,我们首先需要确保已经安装了Linux操作系统,并具备基本的命令行操作能力。

此外,我们还需要安装C语言编译器,以便能够编译和运行我们的程序。

2. 编写程序根据实验要求,我们需要编写一个程序,实现文件的读写功能。

在编写程序之前,我们先进行了详细的需求分析和设计,确定了程序的基本架构和功能模块。

3. 调试和测试在编写完程序之后,我们进行了一系列的调试和测试工作,以确保程序的正确性和稳定性。

我们使用了一些常见的测试用例,包括读取已存在的文件、写入新文件以及修改已有文件等情况,并对程序的输出结果进行了验证。

四、实验结果经过多次的调试和测试,我们最终得到了一个功能完善、稳定可靠的程序。

该程序能够准确地读取、写入和修改文件,并能够处理各种异常情况,如文件不存在、权限不足等。

五、实验心得通过参与这次实验,我收获颇多。

首先,我对Linux操作系统的理解更加深入了。

在实验过程中,我学会了使用Linux的命令行工具,熟悉了Linux的文件系统和权限管理机制。

其次,我对C语言的编程能力也得到了提升。

在编写程序的过程中,我学会了使用C语言的文件操作函数和错误处理机制,提高了自己的编程技巧。

此外,我还意识到编程实践的重要性。

通过亲自动手编写程序,我不仅仅是理论上了解了Linux的一些特性,更重要的是深入了解了其背后的设计原理和实现细节。

Linux程序设计实验报告

《Linux程序设计》实验指导书实验类别:课内实验实验课程名称:Linux程序设计实验室名称:软件工程专业实验室实验课程编号: N03140112总学时:32 学分: 2适用专业:软件工程先修课程:Linux操作系统、C程序设计实验在教学培养计划中地位、作用:通过讲授Linux的操作使用、系统结构和Linux环境下的程序设计,使学生对Linux 操作系统获得一个全面的认识和掌握。

一方面,学生通过学习系统程序设计,能够复习操作系统中的基本概念,对文件管理、进程控制有更深入的理解;另一方面,学生学会在Linux 环境下工作,进一步熟悉C语言程序设计和数据结构的知识,编写进行系统维护的脚本文件和实用化的大型应用程序,如网络应用程序。

同时,本课程为学生进一步学习其它后续课程(如高级操作系统、Linux内核源代码分析、嵌入式系统等)打下基础。

《Linux程序设计》实验大纲Linux Program Design课程类别:学科专业教育课程课程名称:Linux程序设计开课单位:软件学院课程编号:N03140112总学时:32 学分:2适用专业:软件工程先修课程:程序设计基础一、实验教学目标熟练掌握shell编程、熟练使用linux系统、掌握进程控制和进程间通信,学会编写网络程序,学会在linux环境中编写web程序。

养成一种良好的程序设计风格。

二、实验环境Linux三、实验教材及参考书:[1] 实验指导书(自编讲义)[2]《Linux环境C程序设计》徐诚高莹婷等清华大学出版社2010.1[3]《linux入门到精通》刘忆智清华大学出版社2010.1四、实验成绩评定方式根据学生在实验过程中的认真程度、上机结果验收情况以及实验报告撰写质量,进行综合评定。

五、实验项目及学时分配六、实验内容及要求实验一 Linux基本命令的使用1、实验目的(1)学习和掌握Linux的基本命令(2)增强学生对Linux的学习兴趣2、实验内容(1)linux的登录操作(2)常用基本命令的使用实验二 Shell程序设计1、实验目的(1).Shell程序设计中变量的使用;(2).理解通道的概念并初步掌握它的使用方法;(3).掌握算术操作、字符串操作、逻辑操作、文件操作;(4).掌握if then fi、if then elif fi、case、while、for等控制语句;(5).在shell脚本中使用函数;2、实验内容(1).通过对shell程序的调试,理解变量$#,$0,$1,$2,$3,$@的含义;(2).Shell顺序程序设计;(3).Shell分支程序与多分支程序设计;(4).Shell循环程序设计。

linux实验报告

linux实验报告Linux 实验报告一、实验目的本次 Linux 实验旨在深入了解和掌握 Linux 操作系统的基本命令和操作,熟悉文件系统管理、用户和权限管理、进程管理等重要内容,提高对 Linux 系统的实际应用能力。

二、实验环境1、操作系统:Ubuntu 2004 LTS2、终端工具:gnometerminal三、实验内容及步骤(一)文件和目录操作1、打开终端,使用`pwd`命令查看当前工作目录。

2、使用`mkdir`命令创建一个名为“test”的新目录。

3、切换到“test”目录,使用`cd test`命令。

4、在“test”目录中,使用`touch file1txt`命令创建一个名为“file1txt”的空文件。

5、使用`ls`命令查看当前目录下的文件和目录列表。

6、使用`cat`命令查看“file1txt”文件的内容(此时应为空)。

7、使用`echo "This is a test file"> file1txt`命令向“file1txt”文件中写入内容。

8、再次使用`cat file1txt`命令查看文件内容,确认写入成功。

(二)文件权限管理1、使用`ls l`命令查看“file1txt”文件的权限信息。

2、使用`chmod u+rwx,g+rw,o+r file1txt`命令修改文件权限,为所有者赋予读写执行权限,为所属组赋予读写权限,为其他用户赋予读权限。

3、再次使用`ls l`命令查看权限修改结果。

(三)用户和组管理1、使用`sudo adduser user1`命令创建一个新用户“user1”。

2、使用`sudo addgroup group1`命令创建一个新组“group1”。

3、使用`sudo usermod aG group1 user1`命令将用户“user1”添加到组“group1”中。

4、使用`id user1`命令查看用户“user1”的信息,确认所属组添加成功。

Linux程序设计实验报告

《Linux程序设计》实验指导书实验类别:课内实验实验课程名称:Linux程序设计实验室名称:软件工程专业实验室实验课程编号: N03140112总学时:32 学分: 2适用专业:软件工程先修课程:Linux操作系统、C程序设计实验在教学培养计划中地位、作用:通过讲授Linux的操作使用、系统结构和Linux环境下的程序设计,使学生对Linux 操作系统获得一个全面的认识和掌握。

一方面,学生通过学习系统程序设计,能够复习操作系统中的基本概念,对文件管理、进程控制有更深入的理解;另一方面,学生学会在Linux 环境下工作,进一步熟悉C语言程序设计和数据结构的知识,编写进行系统维护的脚本文件和实用化的大型应用程序,如网络应用程序。

同时,本课程为学生进一步学习其它后续课程(如高级操作系统、Linux内核源代码分析、嵌入式系统等)打下基础。

《Linux程序设计》实验大纲Linux Program Design课程类别:学科专业教育课程课程名称:Linux程序设计开课单位:软件学院课程编号:N03140112总学时:32 学分:2适用专业:软件工程先修课程:程序设计基础一、实验教学目标熟练掌握shell编程、熟练使用linux系统、掌握进程控制和进程间通信,学会编写网络程序,学会在linux环境中编写web程序。

养成一种良好的程序设计风格。

二、实验环境Linux三、实验教材及参考书:[1] 实验指导书(自编讲义)[2]《Linux环境C程序设计》徐诚高莹婷等清华大学出版社2010.1[3]《linux入门到精通》刘忆智清华大学出版社2010.1四、实验成绩评定方式根据学生在实验过程中的认真程度、上机结果验收情况以及实验报告撰写质量,进行综合评定。

五、实验项目及学时分配六、实验内容及要求实验一 Linux基本命令的使用1、实验目的(1)学习和掌握Linux的基本命令(2)增强学生对Linux的学习兴趣2、实验内容(1)linux的登录操作(2)常用基本命令的使用实验二 Shell程序设计1、实验目的(1).Shell程序设计中变量的使用;(2).理解通道的概念并初步掌握它的使用方法;(3).掌握算术操作、字符串操作、逻辑操作、文件操作;(4).掌握if then fi、if then elif fi、case、while、for等控制语句;(5).在shell脚本中使用函数;2、实验内容(1).通过对shell程序的调试,理解变量$#,$0,$1,$2,$3,$@的含义;(2).Shell顺序程序设计;(3).Shell分支程序与多分支程序设计;(4).Shell循环程序设计。

LINUX大作业

Linux系统编程大作业一、实验题目实现一个FTP服务系统二、实验目的通过该实验,掌握Linux环境下的多线程/进程编程技术、文件操作、用户权限管理、进程间通信技术三、实验要求基于客户/服务器交互模式,采用TCP/IP通信协议,实现一个支持远程文件传输的客户/服务器软件,支持文件的上传和下载。

其中客户端软件命名为myftp,服务器软件命名为ftpserver,具体功能需求如下:(一)服务器1)启动方式。

执行ftpserver [IP地址] port启动FTP服务。

其中IP地址为可选项。

若不提供服务器IP地址,FTP服务将自动绑定到本地网络的IP。

2)用户认证与权限管理。

为FTP客户提供基于用户名/密码认证的服务模式,只有授权用户才可以访问FTP服务。

与此同时,对文件/目录的访问,也实现基于授权的访问机制,即只有授权用户才可以对指定文件进行读写操作。

用户只有在具备写权限操作的目录上才能上传文件。

(可直接集成Linux服务器系统的用户管理)3)并行执行功能。

为提高系统性能,服务器将采用多进程/线程技术响应客户请求。

当客户通过身份验证后,服务器将创建一个新的进程/线程来响应用户请求,提供服务。

4)服务器支持的客户文件操作。

登录成功后,客户可在服务器执行以下操作:创建/删除目录(mkdir/rmdir)、显示当前路径(pwd)、切换目录(cd)、查看当前目录下的所有文件(ls)、上传单个/多个文件(put/mput)、下载单个/多个文件(get/mget)。

5)服务传输模式。

支持二进制(默认)及ASCII传输模式。

用户可通过执行binary/ascii 命令切换传输模式。

6)站点计数与用户管理功能。

统计服务器站点的当前活动用户数及自运行以来的访客总数。

系统管理员可在服务器软件运行终端窗口执行以下命令:A)count current:当前活动用户数B)c ount all:显示系统访客总数C)l ist:显示当前在线的所有用户的用户名D)kill username:强制删除某个用户。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档