文档库 最新最全的文档下载
当前位置:文档库 › unix实验报告

unix实验报告

unix实验报告
unix实验报告

实验报告

( 2014-- 2015年度第1学期)

名称:UNIX/LINUX体系及编程

院系:信息工程系

班级:

学号:

学生姓名:

指导教师:姜丽梅

设计周数: 3

成绩:

日期:2014年12 月10日

任务书

一、目的与要求

1.掌握UNIX/Linux系统的目录和文件管理命令。

2.掌握shell的输入输出重定向,编写shell脚本文件。

3.编写C语言程序,使用GCC编译,使用GDB调试。

4.掌握make工具,撰写makefile文件,完成C程序的自动编译。

5.要求每人能独立完成实验。

二、主要内容

1.用pwd命令显示用户主目录的路径名,用date命令查看当前日期和时间,用who 命令查看当前登录在系统中的用户列表,利用who命令选项查看当前系统中的用

户总数和系统启动时间。比较whoami 和who am i显示的结果区别,熟练使

用cat、cd、chmod、ls、cp、ln、df、ps等命令。

2.用vi编辑器,先在用户主目录中创建文件,编辑文件。并作统计文件大小,重新编辑文件。字符串替换等工作

3.用find命令查找名为passwd的文件。从用户主目录开始,查找所有1天前创建的文件。查找文件属主的文件。查找1天前被访问过的文件。

4.用重定向符和cat命令创建一个 flower脚本文件,完成如下功能。

4.1 显示用户名。显示用户当前系统中的进程。

4. 2 判断当前用户是否为root用户:若是root用户,则根据命令行参数n,清

除/var/log目录下的某个文件的内容但保留其最后的n行的内容,若没有参数,

则保留10行;若不是root用户,提示出错。

5.编写C程序,编译、运行、调试程序。用C语言程序编程实现:将输入的十进制数输出为相应的十六进制数。

6.利用UNIX的软中断信号编写一段C语言程序完成:显示数字1到100,在程序运行中如果捕获到一个SIGINT信号,则转去执行一段显示当前系统时间的程序。

考虑信号复位的情况,使程序能够实现多次被打断而多次恢复执行。

三、进度计划

四、实验成果要求

1.将操作截图贴报告中,包括命令、脚本、C代码、makefile文件及运行结果。五、考核方式

1.以实验报告作为实验成绩。

学生姓名:

指导教师:

2014年12月10日

一、实验目的和要求:

1.掌握UNIX/Linux系统的目录和文件管理命令。

2.掌握shell的输入输出重定向,编写shell脚本文件。

3.编写C语言程序,使用GCC编译,使用GDB调试。

4.掌握make工具,撰写makefile文件,完成C程序的自动编译。

5.要求每人能独立完成实验。

二、实验主要内容:

1.用pwd命令显示用户主目录的路径名,用date命令查看当前日期和时间,用who 命令查看当前登录在系统中的用户列表,利用who命令选项查看当前系统中的用

户总数和系统启动时间。比较whoami 和who am i显示的结果区别。

命令:pwd:查看当前工作路径

命令:date:查看日期时间

命令who 选项查看当前系统中的用户总数和系统启动时间

命令:whoami 和 who am i 的区别:whoami只显示当前用户的名字

2.用vi编辑器,先在用户主目录中创建文件,编辑文件。并作统计文件大小,重新编辑文件。字符串替换等工作

命令:创建hello文件:vi hello

命令:统计创建文件大小:du –h davidlinux

命令:字符串的替换:在命令模式下输入

cat hello查看文件内容如下:

可以把文件中所有的lilei替换成xiaoming。输入:%s/lilei/xiaoming/g

3.运用find命令查找passwd文件

在/目录下查找passwd文件:find / -name passwd

查找一天前所创建的文件:find /home/deno/ -atime +1

查找一天前所访问的文件:find /home/deno/ -ctime +1

查找/home/demo目录下属主是tom的文件:find -user tom

4.编写flower脚本

a.显示用户名。显示用户当前系统中的进程。

b.判断当前用户是否为root用户:若是root用户,则根据命令行参数n,清除/var/log目录下的某个文件的内容但保留其最后的n行的内容,若没有参数,

则保留10行;若不是root用户,提示出错。

文件为/var/log/cron文件。利用cat –n 查看文件一共65行。

脚本如下:

执行:bash /home/demo/flower.sh

查看/var/log/cron

5.十进制转换为十六进制:代码如下:

编译:gcc –Wall –n xd

执行:./xd

撰写makefile 文件:

Makefile:

主函数:main.c

Output.c:

Judge.c

Make自动编译编译:

执行jinzhi:

三、实验总结:

通过本次实验,我了解了linux的一些常用命令和一些基本的操作,同时也认识了linux 系统的整体结构。通过和老师同学们一起实验,提升了自己的动手能力,加强了团队协作的精神,今后我还会深入学习,更加努力认真,感谢老师的耐心和细心教导。

《Linux操作系统》实验三-权限和文件系统管理

《Linux操作系统》 实验报告 实验三:权限和文件系统管理

一、实验目的 1.Unix/Linux权限和文件管理命令; 2.Unix/Linux文件系统的使用; 3.与文件系统管理相关的其它命令。 二、实验环境 Linux操作系统 三、实验内容与实验过程及分析 (l)权限的字符串表示 使用ls -了-d 文件名查询相关文件权限 结果图为: (2) umask值与umask命令 使用命令:umask或umask –p 或 umask –S查看当前的umask值,使用umask 四位八进制数字或者符合修改umask值。 结果图为:

(3)使用权限管理命令chmod进行权限设置 为目录a1、a2修改权限(每完成一步操作都要用ls –l检查文件属性,并进行记录):

为目录a1、a2增加所有人的可进入和读写权限:chmod o+rx a1、a2 为目录a1加入同组人的写权限:chmod go+w a1 将目录a1的其他人权限递归方式设为不可读可不写不可执行:chmod -R o-rwx /root/a1 将目录a1的其他人权限递归方式设为可读可写可执行:chmod -R 777 /root/a1 结果图为:

(4)使用chown,chgrp等进行权限设置 使用权限管理命令chown,chgrp等进行权限设置(每完成一步操作都要用ls –l检查文件属性,并进行记录): 将目录a1用户主设为chown lm a1 将目录a1的组设为chgrp lm a1 将目录a1及其所有子目录的用户主设为lm,组设为chown -R lm:bin a1 结果图为:

unix操作基本命令

UNIX系统操作入门篇(一) 这篇东西是关于Unix系统操作的教程。也是Unix的入门教程。如果你有兴趣学,请看下去,保证你可以学到许多有用的东西。如果你满足于dos,windows的操作,不想对网络服务器,有任何了解的话,可以不看。因为你并不想成为计算机高手。本教程仅仅讲授Unix系统的常用命令,不涉及Unix的历史、安装和编程。如果你想得到更多的知识,请查找其他的教材。本教程参考了《精通Unix》、《Unix基础》、《Unix系统使用指南》等书,你可以在那里找到更多的知识。 准备知识: Unix是一个多任务多用户的操作系统。多任务是指可以同时运行几个不同的程序,或命令。在操作系统的术语里叫“进程”,就象在运行Windows95的时候我们可以一边听CD 一边打字,同时打印机还在工作。多用户是指一台运行Unix系统的机器可以同时具有几个不同的输入输出设备,给几个,几十个用户同时使用。不同的输入输出设备我们称为终端。Unix 给每个终端设置不同的序号以协调工作,这个序号被称为终端序号。Unix是一个根本不同于Dos的系统,无论其命令格式,用途都和Dos有很大区别。比如:目录分割符是"/",而不是"\"。具体的不同请参考其他书籍。 开始练习之前: 在开始教授Unix命令之前,请先记下这个地址:https://www.wendangku.net/doc/249488683.html,。它是一台在美国的,连上Internet的Unix主机。之所以告诉大家这个地址是因为它提供免费的帐号供大家使用。是免费的。就是说你可以先去那里申请一个帐号,然后在那里练习你所学到的Unix 命令。因为我相信不是每个朋友都可以轻松地得到Unix帐号的。在你成功的申请好帐号之后,请在你Windows95的dos窗口里输入"telnet https://www.wendangku.net/doc/249488683.html," 等待连上主机。接下来就是输入你的用户名和密码,不要告诉我这些你都不会,如果你不会的话,你是怎么连到这个网页的?现在假定你连上了主机,系统的提示符应该是"https://www.wendangku.net/doc/249488683.html,%",对这个就是提示符就象dos里的"c:\>"。接下去我将开始命令篇。 ls 你记不记得你学会的第一个Dos命令?反正我学会的第一个命令是dir:列目录和文件的命令。你学会的第一个Unix的命令也是列目录和文件的命令ls. 功能列出当前目录下的文件和目录。同Dos一样,Unix系统命令也是带参数的。ls的参数有"a","l","F"。请注意,F是大写。Unix系统里对命令的大小是严格区分的。(所以我们做网页常常会发生连接错误)同dos 不一样的地方在于,Unix命令的参数是"-"为其前导,而不是"/"。所以完整的ls命令是 ls -l -a -F或ls -laF -l:long的意思,把文件的其他资料,如文件长度,上次修改的日期等等列出来。 -a:all的意思,把本目录下所有的文件,包括隐含的文件也列出来。 -F:显示文件类型。"*"表示可执行文件,"/"表示目录,"@"表示连接。 好,请在你的机器上输入ls -l -a -F,或许这是你一生里第一个Unix命令。记住了吗? cd 变换目录,和Dos相同。如果你在cd后面没有给定目的地,则表示目的地是家目录。在unix 中有三中表示目录的符号".","..","~"。"."表示当前目录路径的位置".."表示当前路径的上一层目录,或称"父目录" "~"表示家目录,所谓家目录指系统管理员分配给你的目录,比如你的用户名是li,那么你的家目录就是在"~li",在cd后面加上"~li"就是去你的家目录。 date 显示出当前的时间和日期,记住在Unix里你是无法修改系统时间的。输出时间一般是格林

实验二实验报告

PAM和PCM编译码器系统 一、实验目的 1.观察了解PAM信号形成的过程;验证抽样定理;了解混叠效应形成的原因; 2.验证PCM编译码原理;熟悉PCM抽样时钟、编码数据和输入/输出时钟之间的关系;了 解PCM专用大规模集成电路的工作原理和应用。 二、实验内容和步骤 1.PAM编译码器系统 1.1自然抽样脉冲序列测量 (1)准备工作; (2)PAM脉冲抽样序列观察; (3)PAM脉冲抽样序列重建信号观测。 1.2平顶抽样脉冲序列测量 (1)准备工作; (2)PAM平顶抽样序列观察; (3)平顶抽样重建信号观测。 1.3信号混叠观测 (1)准备工作 (2)用示波器观测重建信号输出的波形。 2.PCM编译码器系统 2.1PCM串行接口时序观察 (1)输出时钟和帧同步时隙信号的观察; (2)抽样时钟信号与PCM编码数据测量; 2.2用示波器同时观察抽样时钟信号和编码输出数据信号端口(TP502),观测时以TP504 同步,分析掌握PCM编码输数据和抽样时钟信号(同步沿、脉冲宽度)及输出时钟的对应关系; 2.3PCM译码器输出模拟信号观测,定性观测解码信号与输入信号的关系:质量,电平, 延时。 2.4PCM频率响应测量:调整测试信号频率,定性观察解码恢复出的模拟信号电平,观测 输出信号电平相对变化随输入信号频率变化的相对关系; 2.5PCM动态范围测量:将测试信号频率固定在1000Hz,改变测试信号电平,定性观测解 码恢复出的模拟信号的质量。 三、实验数据处理与分析 1.PAM编译码器系统 (1)观察得到的抽样脉冲序列和正弦波输入信号如下所示:

上图中上方波形为输入的正弦波信号,下方为得到的抽样脉冲序列,可见抽样序列和正弦波信号基本同步。 (2)观测得到的重建信号和正弦波输入信号如下所示: 如上图所示,得到的重建信号也为正弦波,波形并没有失真。 (3)平顶抽样的脉冲序列如下所示: 上图中上方的波形为输入的正弦波信号,下方为PAM平顶抽样序列。 (4)平顶抽样的重建信号波形: 可见正弦波经过平顶抽样,最终重建的信号仍为正弦波。 (5)观察产生混叠时的重建信号的输出波形 在实验时将输入的正弦波频率调至7.5KHz,通过示波器观察得到的输入正弦波波形和输出的重建信号如下所示: 由于实验时采用的抽样频率为8KHz,所以当输入的信号频率为7.5KHz时已经不满足抽样定理的要求了,所以会产生混叠误差,导致了输出的重建波形如上图所示,不再是正弦波了。 从测量结果可以得出如下规律:随着输入正弦波信号的频率逐渐升高,输出重建波形的幅值逐渐降低。这是由于在实验电路中加入了抗混滤波器,该滤波器随着频率的升高会使处理的信号的衰减逐渐变大,所以如试验结果所示,随着输入信号频率的升高,输出信号的幅值在逐渐变小。 (7) 在不采用抗混滤波器时输入与输出波形之间的关系,得到的结果如下表所示:

实验报告(二)2014012121

北京信息科技大学 信息管理学院 实验报告 课程名称java程序设计_________ 专业___________________________ 班级/学号__________________________ 学生姓名_________________________ 实验日期_____________________________ 实验地点_____________________________ 成绩________________________________ 指导教师李春强 _______________

、实验目的 1. 掌握类、对象的定义和使用; 2. 掌握使用类圭寸装对象的属性和功能; 3?掌握对象的组合以及参数的传递; 4. 掌握类变量和实例变量,以及类方法和实例方法的区别; 5. 掌握包的定义和使用。

三、实验要求 1. 理解java程序封装的特点,编制完整的相关java程序。 2. 编写并调试程序Iab2-1, lab2-2, lab2-3, lab2-4,掌握类和对象等基本使用方法。 四、实验准备 1?一台电脑。 2jdk开发环境。 3. java上机的基本操作。 五、实验过程 Lab2_1: package 机动车; public class user { public static void main (String args []){ vehicle v = new vehicle。; System. out .println( "机动车功率为:"+v .setPower(100)); v .speedUp(15); v .speedDow n( 8); } } public class vehicle { double speed ; int power ; void speedUp( int s){ this . speed =s; System. out .println( "机动车加速,速度为"+s); } void speedDown( int t){ this . speed =t; System. out .println( ” 机动车减速,速度为"+t);

操作系统课程设计实验报告(以Linux为例)

《操作系统课程设计》 实验报告 学号: 姓名: 苏州大学计算机科学与技术学院 2014年9月

操作系统课程设计实验报告 目录 目录 (1) 一、实验环境 (2) 二、实验报告总体要求 (2) 实验一编译L INUX内核 (3) 实验二观察L INUX行为 (7) 实验三进程间通信 (14)

操作系统课程设计实验报告 一、实验环境 Linux平台 ◆硬件平台:普通PC机硬件环境。 ◆操作系统:Linux环境,例如,红旗Linux或Red Hat Linux;启动 管理器使用GRUB。 ◆编译环境:伴随着操作系统的默认gcc环境。 ◆工作源码环境:一个调试的内核源码,版本不低于2.4.20。 二、实验报告总体要求 在2013年11月25日前提交实验报告。实验报告至少要求包含以下内容: 1.引言:概述本次实验所讨论的问题,工作步骤,结果,以及发现的意 义。 2.问题提出:叙述本篇报告要解决什么问题。注意不可以抄写实验要求 中的表述,要用自己的话重新组织我们这里所提出的问题。 3.解决方案:叙述如何解决自己上面提出的问题,可以用小标题 3.1, 3.2<等分开。这是实验报告的关键部分,请尽量展开来写。注意, 这部分是最终课程设计的基本分的部分。这部分不完成,本课程设计不会及格。 4.实验结果:按照自己的解决方案,有哪些结果。结果有异常吗?能解 释一下这些结果吗?同别人的结果比较过吗?注意,这部分是实验报告出彩的地方。本课程设计要得高分,应该在这部分下功夫。 5.结束语:小结并叙述本次课程设计的经验、教训、体会、难点、收获、 为解决的问题、新的疑惑等。 6.附录:加了注释的程序清单,注释行数目至少同源程序行数目比1: 2,即10行源程序,至少要给出5行注释。

实验二-决策树实验-实验报告

决策树实验 一、实验原理 决策树是一个类似于流程图的树结构,其中每个内部结点表示在一个属性上的测试,每个分支代表一个测试输入,而每个树叶结点代表类或类分布。数的最顶层结点是根结点。一棵典型的决策树如图1所示。它表示概念buys_computer,它预测顾客是否可能购买计算机。内部结点用矩形表示,而树叶结点用椭圆表示。为了对未知的样本分类,样本的属性值在决策树上测试。决策树从根到叶结点的一条路径就对应着一条合取规则,因此决策树容易转化成分类规则。 图1 ID3算法: ■决策树中每一个非叶结点对应着一个非类别属性,树枝代表这个属性的值。一个叶结点代表从树根到叶结点之间的路径对应的记录所属的类别属性值。 ■每一个非叶结点都将与属性中具有最大信息量的非类别属性相关联。 ■采用信息增益来选择能够最好地将样本分类的属性。 信息增益基于信息论中熵的概念。ID3总是选择具有最高信息增益(或最大熵压缩)的属性作为当前结点的测试属性。该属性使得对结果划分中的样本分类所需的信息量最小,并反映划分的最小随机性或“不纯性”。 二、算法伪代码 算法Decision_Tree(data,AttributeName) 输入由离散值属性描述的训练样本集data; 候选属性集合AttributeName。 输出一棵决策树。 (1)创建节点N; (2)If samples 都在同一类C中then (3)返回N作为叶节点,以类C标记; (4)If attribute_list为空then (5)返回N作为叶节点,以samples 中最普遍的类标记;//多数表决 (6)选择attribute_list 中具有最高信息增益的属性test_attribute; (7)以test_attribute 标记节点N; (8)For each test_attribute 的已知值v //划分samples

操作系统实验报告(包括线程,进程,文件系统管理,linux+shell简单命令)

操作系统实验报告 班级:030613 学号:03061331 姓名:裴帅帅

实验一:进程的建立 一、实验内容 创建进程及子进程,在父子进程间实现进程通信,创建进程并显示标识等进 程控制块的属性信息,显示父子进程的通信信息和相应的应答信息。 使用匿名管道实现父子进程之间的通信。 二、源程序 1、创建匿名管道 SECURITY_ATTRIBUTES sa; sa.bInheritHandle=true; sa.lpSecurityDescriptor=NULL; sa.nLength=sizeof(SECURITY_ATTRIBUTES); if(!CreatePipe(&m_hRead,&m_hWrite,&sa,0)) { MessageBox("创建匿名管道失败"); return false; } 2、创建子进程 STARTUPINFO si; ZeroMemory(&si,sizeof(STARTUPINFO)); si.cb=sizeof(STARTUPINFO); si.dwFlags=STARTF_USESTDHANDLES; si.hStdInput=m_hRead; si.hStdOutput=m_hWrite; si.hStdError=GetStdHandle(STD_ERROR_HANDLE); if(!CreateProcess(NULL,"子 进.exe",NULL,NULL,true,0,NULL,NULL,&si,&pi)) { MessageBox("创建子进程失败"); CloseHandle(m_hRead); CloseHandle(m_hWrite); m_hRead=NULL; m_hWrite=NULL; return; } 3、销毁子进程 if(m_hRead) CloseHandle(m_hRead);

SCO_UNIX系统常用命令.

SCO UNIX 系统常用命令 一. 常用系统命令 1. 登录 在login :下,输入用户名,密码,进入显示shell 名令提示符,超级用户#>,普通用户$>. 2 su #>su -oracle 3 退出 exit logout ctrl +d( 强制退出 4 passwd修改密码 5 man查命令的解释 6who 查看登录用户,包括自己。 Who am I 7finger 显示当前用户的信息。 8clear 清屏 9setcolor -n 置屏幕为normal , 黑底白字。 10wall 广播信息 wall -》回车-》输入内容-》ctrl +d mail 发送邮件

mail 接收用户名-》回车-》输入内容-》ctrl +d 11关机 shutdow n -g0 —立即关闭无需确认 haltsys reboot init 0 关机 init 6 停止系统运行并重启 12du dfspace du :显示文件目录占用的磁盘空间大小。 Dfspace: 显示空闲磁盘空间。 13scoadmin系统管理工具 14u name —显示系统信息 15env 显示更改环境设置 set 16sar系统维护的重要工具 /usr/lib/sa/sar_e nable-y 打开 /usr/lib/sa/sar_e nable—n 关闭 从14个方面报告系统的活动情况,重点监视内存和cpu的使用情况.sar -r 30 4 报告内存和交换区的使用

sar -u 30 4报告cpu的使用情况 Wio 值高表示硬盘存在IO 瓶颈 Idle 值高表示等待分配内存, 需扩内存小于30表示进程主要竞争的自源是cpu. ipcs 显示共享内存 ipcrm -m(s id 号 integrity 把文件控制数据库与文件系统中的文件, 进行比较. Fixmog 使全部的系统文件或指定的系统文件和鉴别数据库一致起来. 二. 文件目录相关命令 1 pwd 显示当前所在目录 2cd 3mkdir 创建目录 4rmdir 删除目录 5rm 删除文件 rm —r 6mv 源目标 7cp 源目标 cp -r 8ln 源目标文件的链接 9pg 文件

MATLAB实验报告实验二

实验二 MATLAB矩阵及其运算 学号:3121003104 姓名:刘艳琳专业:电子信息工程1班日期:2014.9.20 一实验目的 1、掌握Matlab数据对象的特点以及数据的运算规则。 2、掌握Matlab中建立矩阵的方法以及矩阵处理的方法。 3、掌握Matlab分析的方法。 二实验环境 PC_Windows 7旗舰版、MATLAB 7.10 三实验内容 4、1. (1)新建一个.m文件,验证书本第15页例2-1; (2)用命令方式查看和保存代码中的所有变量;

(3)用命令方式删除所有变量; (4)用命令方式载入变量z。 2. 将x=[4/3 1.2345e-6]在以下格式符下输出:短格式、短格式e方式、长格式、长格式e方式、银行格式、十六进制格式、+格式。 短格式 短格式e 长格式

长格式e方式 银行格式 十六进制格式 3.计算下列表达式的值 (1)w=sqrt(2)*(1+0.34245*10^(-6)) (2)x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a) a=3.5;b=5;c=-9.8; (3)y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a) a=3.32;b=-7.9; (4)z=0.5*exp(2*t)*log(t+sqrt(1+t*t)) t=[2,1-3i;5,-0.65];

4. 已知A=[1 2 3 4 5 ;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20],对其进行如下操作:(1)输出A在[ 7, 10]范围内的全部元素; (2)取出A的第2,4行和第1,3,5列; (3)对矩阵A变换成向量B,B=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; (4)删除A的第2,3,4行元素; (1) (2)

unix实验(操作系统)

实验一:linux常用命令 一、实验内容和要求 1、使用自己的帐户登录linux系统查看系统提示符确定自己使用的shell程序类型。 2、修改个人口令后重新登录。 3、用who命令查看当前登录在系统中的用户列表、用户总数、系统启动时间等。 4、查看当前用户的标志符及当前进程的状态。 5、用cal命令查看自己的生日是星期几。 6、将Windows下的C盘链入linux 系统的根目录下。 7、将C盘上的一个文本传递到linux下的当前用户目录下,并进行浏览查看。 8、使用mail进行电子邮件的传递与查看。 9、在系统中与其他用户对话。 10、练习允许与拒绝其他用户向自己的终端上发送信息。 二、实验结果:请同学们自己写出 1、用户使用的shell可查阅/etc/passwd文件确定。 2、修改口令的命令为:passwd 3、who –h 4、id 5、cal –m 3 –y 1990 6、mkdir/dosc mount/dev/hda1/dosc 7、cp /myexample.txt vim ./myexample.txt 8、% mail zhangming subject:hello hi,my friend! How are you! [ctrl+d] Cc: % 查看信件只需要键入‖mail‖ % mail 9、% talk zhangming 用户屏幕将分成两半,其显示:请同学们自己写 此时zhangming 回应: % talk wangyong@class 则zhangming 的屏幕就会分成两半,双方开始对话。 10、% mesg y允许其他用户向自己发送信息。 % mesg n拒绝其他用户向自己发送信息。 实验二:shell编程 一、实验内容和要求(同学们可以任意选择2题) 1、使用FOR循环语句编写一段B-shell程序,完成显示用户注册目录下a_bub、b_sub 子 目录下的所有C程序文件及其目标的列表。 2、为了便于系统管理员对磁盘分配的管理,请编写一段B-shsell程序,当文件系统/home 的占用空间量改变时给出相应的提示。要求/home占用量在系统磁盘中为: (1)小于50%时,提示“用户文件系统磁盘使用负荷量小”。 (2)大于50%,小于90%时,提示“用户文件系统磁盘使用负荷正常”。

UNIX系统常用命令

UNIX系统常用命令 UNIX系统常用命令格式: command [flags] [argument1] [argument2] ... 其中flags以-开始,多个flags可用一个-连起来,如ls -l -a 与ls -la相同。 根据命令的不同,参数分为可选的或必须的;所有的命令从标准输入接受输入,输出结果显示在标准输出,而错误信息则显示在标准错误输出设备。可使用重定向功能对这些设备进行重定向。 命令在正常执行结果后返回一个0值,如果命令出错可未完全完成,则返回一个 非零值(在shell中可用变量$?查看). 在shell script中可用此返回值作为控制逻辑的一部分。 注:不同的UNIX版本的flags可能有所不同。 1、与用户相关的命令 1.1 login (在LINUX Redhat下此命令功能与Solaris/BSD不同,执行login会退出当前任务). login: Password: 相关文件: 在下面的这些文件中设定shell运行时必要的路径,终端类型,其他变量或特殊程序. $HOME/.profile (Bourne shell, sh, bash) $HOME/.cshrc (csh, tcsh) $HOME/.tcshrc (tcsh) /etc/passwd文件中列出每个用户的shell /etc/csh.cshrc /etc/csh.login /etc/profile (Bourne shell, bash) /etc/login (Bourne shell, bash) csh: /etc/csh.cshrc和$HOME/.cshrc每次执行都会读取, 而/etc/csh.login和$HOME/.login只有注册shell才执行 修改相应文件后使用 source .cshrc使能相关修改,如果修改了path则 还需使用rehash刷新可执行文件hash表。 tcsh: $HOME/.tcshrc, 没有些文件读取.cshrc sh: /etc/profile和$HOME/.profile注册shell bash: /etc/profile和$HOME/.bash_profile注册shell读取 .bashrc交互式非注册shell才读取。

计算机操作系统体系结构实验报告

操作系统实验报告 实验目的: 随着操作系统应用领域的扩大,以及操作系统硬件平台的多样化,操作系统的体系结构和开发方式都在不断更新,目前通用机上常见操作系统的体系结构有如下几种:模块组合结构、层次结构、虚拟机结构和微内核结构。为了更好的了解计算机操作系统体系结构,以及linux 的体系结构,特作此报告。 实验内容: 计算机操作系统体系结构 一、模块组合结构 操作系统刚开始发展时是以建立一个简单的小系统为目标来实现的,但是为了满足其他需求又陆续加入一些新的功能,其结构渐渐变得复杂而无法掌握。以前我们使用的MS-DOS 就是这种结构最典型的例子。这种操作系统是一个有多种功能的系统程序,也可以看成是一个大的可执行体,即整个操作系统是一些过程的集合。系统中的每一个过程模块根据它们要完成的功能进行划分,然后按照一定的结构方式组合起来,协同完成整个系统的功能。如图1所示: 在模块组合结构中,没有一致的系统调用界面,模块之间通过对外提供的接口传递信息,模块内部实现隐藏的程序单元,使其对其它过程模块来说是透明的。但是,随着功能的增加,模块组合结构变得越来越复杂而难以控制,模块间不加控制地相互调用和转移,以及信息传递方式的随意性,使系统存在一定隐患。 二、层次结构 为了弥补模块组合结构中模块间调用存在的固有不足之处,就必须减少模块间毫无规则的相互调用、相互依赖的关系,尤其要清除模块间的循环调用。从这一点出发,层次结构的设计采用了高层建筑结构的理念,将操作系统或软件系统中的全部构成模块进行分类:将基础的模块放在基层(或称底层、一层),在此基础上,再将某些模块放在二层,二层的模块在基础模块提供的环境中工作;它只能调用基层的模块为其工作,反之不行。严格的层次结构,第N+l层只能在N层模块提供的基础上建立,只能在N层提供的环境中工作,也只能向N 层的模块发调用请求。 在采用层次结构的操作系统中,各个模块都有相对固定的位置、相对固定的层次。处在同一层次的各模块,其相对位置的概念可以不非常明确。处于不同层次的各模块,一般而言,不可以互相交换位置,只存在单向调用和单向依赖。Unix/Linux系统采用的就是这种体系结构。 在层次结构中,强调的是系统中各组成部分所处的位置,但是想要让系统正常运作,不得不协调两种关系,即依赖关系和调用关系。 依赖关系是指处于上层(或外层)的软件成分依赖下层软件的存在、依赖下层软件的运行而运行。例如,浏览器这部分软件就依赖GUI的存在和运行,GUI又依赖操作系统的存在和运行。在操作系统内部,外围部分依赖内核的存在而存在,依赖内核的运行而运行,内核又依赖HAL而运行。处在同层之内的软件成分可以是相对独立的,相互之间一般不存在相互依赖关系。 三、虚拟机结构 虚拟机的基本思想是系统能提供两个功能:①多道程序处理能力;②提供一个比裸机有更方便扩展界面的计算机。操作系统是覆盖在硬件裸机上的一层软件,它通过系统调用向位于

《UNIX常用命令大全》word版

UNIX常用命令大全[分享] apropos 用途:apropos查找使用说明的名称。 举例:apropos print(等价于man -k prink)。 arch 用途:arch获得机器体系结构的描述信息。 举例:arch。下面是arch输出的结果: sun4 将这个命令与uname进行比较。 ash 用途:ash是外壳,只用于某些系统。 举例:ash。这个命令启动ash外壳的一个实例。 at 用途:at用于确定命令执行的时刻。 举例:at 9:00am December 31。 awk 用途:awk是一种模式扫描和执行语言。 举例:awk\'{print $1}\'file.txt。这个命令执行后将打印出file.txt的第一个区域。bash 用途:bash是GNU Bourne-Again外壳。 举例:bash[options]。这个命令启动bash外壳,它是一个增强的和sh兼容的外壳。bash 的提示符为$。 biff 用途:biff通知你是否收到了邮件。 举例:biffy。这个命令叫biff通知你新邮件什么时候到达(注意,要想让biff工作,你必须同时运行 sendmail)。 cancel 用途:cancel取消挂起的打印作业。 举例:cancel23。这个命令取消23号打印作业。 cal 用途:cal显示无格式文本日历。 举例:cal。以下是命令执行后输出的列表: August 1998 cat 用途:cat将文件连接在一起并显示这些文件中的内容。 举例:cat myfile.txt。这个命令执行后显示myfile.txt中的内容。 cc 用途:cc是用于许多系统的C编译器。 举例:cc myfile.c -o myfile。这个命令执行后对myfile.c源文件进行编译并输出一个名为myfile的可执行文件。 cd 用途:cd用来改变当前目录。 举例:cd/usr/bin。这个命令执行后将当前目录更改为/usr/bin。

UNIX操作系统实验1

UNIX操作系统 实验 首都师范大学信息工程学院 系统分析与管理实验室

目录 1、UNIX安装及基本操作……………………………………… 2、UNIX编程基础………………………………………. 3、UNIX进程实验………………………………………. 4、UNIX进程间通信…………………………………….. 5、UNIX文件系统实验……………………………………….. 6、UNIX综合实验………………………………………..

实验一 UNIX安装及基本操作 一、背景知识 UNIX操作系统是一种精良的OS,可完成系统赋予OS的所有任务,与用户有良好的交互界面,在资源管理中有独到的算法和策略,开源软件使其技术有了长足发展。 UNIX核心部分设计简单且功能全面,支持多用户、多任务,文件系统可装卸,有良好的开放性及可移植性,具有强大的命令功能,具有完善的安全机制,具有网络特性等。 Linux 不同于WindowsNT、UNIX等系统,它的源代码是公开的,具有类UNIX的特点,安装和使用与UNIX相似,它实现了虚拟存贮管理,进程管理,多处理器,多文件系统,可以运行在PC平台,是一个先进的,具有生命力的操作系统,因此,课程将主要以Linux操作系统作为安装和实验的平台,UNIX操作系统的安装和使用可以参照Linux实验来完成。 二、实验目的 1) 通过安装Linux,掌握Linux安装的一般程序,了解Linux安装的发展。 2) 通过学习和练习基本命令操作,掌握Linux下命令的特点,掌握基本命令的使用。 三、工具/准备工作 在开始本实验之前,请回顾教科书的相关内容。 需要做以下准备: 1) 一台个人计算机。 2) Linux介质(光盘,网络镜像或下载网址及网络通信联接) 四、实验内容与步骤 1. Linux简介 Linux是一种能运行于多种平台(PC机、ALPHA工作站、SUN Sparc 工作站)的功能强大、与UNIX兼容的操作系统。 Linux的内核及应用软件的源代码是公开的,也是免费的。它具有众多的自由组织和商业公司的支持和参与。 学习和使用Linux要遵守GPL规则。GPL即General Public License通用公共许可协议的缩写。GNU是GNU’s Not Unix 的缩写。FSF是自由软件基金会(Free Software Foundation)的缩写。

UNIX 常用命令

6.dd 删除一行文本所用的操作符 7.10x 删除10个字符所用的操作符 8.. 点重复用户最近一次文本修改 9.$ 移动光标到当前行尾 10.W 将光标向右移动一个字 11.K 将光标向上移动 12.j 将光标向下移动 13.h 将光标向左移动 14.l 将光标向右移动 15.A 在当前行尾输入文本 16.O 在当行上面添加一行 17.o 在当前行下面添加一行 18.U 撤销对当前行所做的所有修改 19.r 替换光标所在位置的字符 20./ 向前搜索指定的字符串 21.?向后搜索指定的字符串 22.:q! 不保存文件,退出vi 23.a 将输入的文本插到光标位置处 24.0(零)将光标移到当前行首 25.ls 列出当前目录的内容 26.pwd 显示当前目录的路径名 27.cd 改变当前目录到主目录 28.mkdir xyz 在当前目录下创建xyz 目录 29.ls-l 以长格式列出当前目录 30.cd.. 改变当前工作目录到当前目录的父目录(改变到了另一个目录) 31.ls-a 列出所有文件包括隐藏文件 32.cat xyz 在屏幕上显示xyz 文件的内容 33.lp xyz 在默认打印机上打印xyz文件 34.rm xyz 删除xyz文件 35.rmdir xyz 删除xyz 目录 36.cancel lp1 取消lp1打印机上的打印作业 37.lpstat 显示默认打印机的状态 38.rm-i 在删除文件之前要求确认 39.rm 删除文件 40.rmdir 删除目录 41.lp 打印文件 42.Cancel 取消打印请求 43.Lp-n 打印文件的多份副本 44.cd 改变到主目录 45.mkdir 创建目录 46.mkdir-p 创建两层目录结构 47.cd 改变到根目录下 48.cat- 在屏幕上显示文件 49.cat-- 在屏幕上显示两份文件 50.G 将光标放在文件的最后一行上 51./most查找字most 52.[Ctrl-g] 显示当前的行号 53.2dw 删除两个字 54.“x4yy 复制4行到缓冲区x中 55.66G 将光标定位到第66行 56.rx 用字母xti替换光标处的字符 57.“lp 查看缓冲区的1的内容 58.:set number 设置行号选项 59.“x5yy 保存5行到缓冲区X 60.:r!date 将日期串读入(输入)用户文件中 61.:!ls 列出当前目录 62.:ab 创建缩写 63.:unab 取消缩写68.mv xxx yyy 将xxx重命名为yyy 69.rm* 删除当前目录下的所有文件 70.ls*[1-6] 列出所有文件名以数字1-6结尾的文件 71.cp file??source 复制所有文件名以file开头,后面跟两个字符的文件 72.pr-2 myfile 以两列格式化myfile 73.pg myfile 以逐屏显示的方式浏览myfile 74.cat myfile>yyy 复制myfile到yyy 75.cat?myfile>>yyy 将所有文件名为myfile前加一个字符的文件内容加到yyy文件中 76.find.-name“file*”-print 查找所有文件名以file开头的文件 77.find-name xyz-size20-print 查找所有文件名为xyz大小为20块的文件 78.cut-f2 xyz>xxx 保存xyz文件的第2个域到xxx文件中 79.more zzz 逐屏读zzz文件 80.alias 该命令创建命令的别名 81.ls-i 列出当前目录下的文件名及其i节点号 82.echo 该命令在输出设备上显示其输出参数 83.\a 警报(响铃) \n 回车换行 \b 回退 \r回车不换行 84.echo A>>B 把A追加到B 1.编辑器:编辑器是一个工具,可以方便的创建新文件或修改旧文件 2.UNIX操作系统支持的编辑器:(行编辑器)Emase,ex,ed,(全屏编辑器)vi,view /* 3.x 删除光标出的字符 r 替换光标所在位置的字符 / 向前搜索指定的字符串 ? 向后搜索指定的字符串 h 将光标向左移动一行 A 将输入文本放在当前行的行尾 q! 不保存文件,退出vi wq 保存文件并退出vi a 将输入的文本插入到光标位置后 $ 将光标移到当前行行尾 0 将光标移到当前行行首 K 将光标向上移动一行 4.dd 删除一行 dw 删除1个字 yy 复制1行 yw 复制1个字 d$ 删除到当前行尾 :z2yy 将两行保存到缓冲区z “zp 将缓冲区z的内容复制到当前行后 “2p 将缓冲区2的内容复制到当前行后 5.G 将光标放到文件的最后一行上 /most 查找字most [Ctrl-g] 显示当前行的行号 2dw 删除两个字 j 将光标向下移动一行 “x4yy 复制4行到缓冲区x $ 将光标定位到当前行尾 0(零)将光标定位到当前行首 66G 将光标定位到第66行 x 删除光标出的字符 rx 用字母x替换光标出的字符

实验二实验报告

Java实验二:模拟小电器 班级:软件1502班姓名:李家伟学号:20151611542 一、实验目的 借助javax.swing包提供的组件并使用命令模式模拟一个带控制开关的小电器,强化对命令模式的理解。 二、实验内容 1.请创建底面为正方形的柱形类,计算柱体体积。 2.请画出程序对应的UML类图。 三、实验环境 1、PC微机; 2、Windows 操作系统; 3、JDK程序集成环境、Eclipse。 四、UML图、源代码及测试结果 1. UML图 2. 源代码 1.Pillar类(柱体) public class Pillar { Geometry bottom;

double height; Pillar(Geometry bottom,double height){ this.bottom=bottom; this.height=height; } public double getVolume(){ return bottom.getArea()*height; } } 2.Square类(正方形面积) public class Square extends Geometry{ double a; Square(double a){ this.a=a; } public double getArea(){ return a*a; } } 3.Geometry类(接口) public abstract class Geometry { public abstract double getArea(); } 4.Application(主函数) public class Application { public static void main(String args[]){ Pillar pillar; Geometry bottom; bottom=new Square(3);

操作系统模拟unix文件系统实验报告

操作系统大型实验 班级:学号:姓名: 一实验介绍…………………………………………………………………… 1.实验名称 2.实验目的 3.实验内容及要求 二实验环境…………………………………………………………………… 三实验设计…………………………………………………………………… 1.数据结构设计 2.系统流程设计 3.实现命令操作 四模块详解…………………………………………………………………… 1 .文件操作 2 .用户操作 五实验演示…………………………………………………………………… 1 .初始化磁盘块 2 .用户登录 3 .目录操作 4 .文件操作 六源代码……………………………………………………………………… 七实验心得体会…………………………………………………………………… 1.调试中遇到的问题总结 2.实验感悟

一、实验介绍 1.实验名称 操作系统大型实验 2.实验目的 完成一个 UNIX/Linux文件系统的子集的模拟实现,了解Unix文件系统的实现机制。 3.实验内容及要求 (1)文件卷结构设计 0#块可省略 I节点栈及空间为20项 块大小为512字节 卷盘块数大于100 I节点盘块数大于10块 (2)I节点结构设计 文件大小 文件联接计数 文件地址 文件拥有者 文件所属组 文件权限及类别 文件最后修改时间 其中文件地址为六项:四个直接块号,一个一次间址,一个两次间址 (3)目录结构 用16字节表示,其中14字节为文件名,2字节为I节点号 (4)用户及组结构 用户信息中包括用户名、口令,所属组,用户打开文件表 (5)文件树结构 除(4)要求外,适当考虑UNIX本身文件树结构 (6)实现功能 Ls 显示文件目录 Chmod 改变文件权限 Chown 改变文件拥有者 Chgrp 改变文件所属组 Pwd 显示当前目录 Cd 改变当前目录 Mkdir 创建子目录 Rmdir 删除子目录 Mv 改变文件名 Cp 文件拷贝 Rm 文件删除 Ln 建立文件联接 Cat 连接显示文件内容 Vi 文件写入 Mk 创建文件

UNIX命令

入门介绍和常用命令 如果文件系统磁盘空间不足,则可能出现停止服务等反常现象。 建议各现场系统环境维护人员要定期检查一下Domain所在文件系统的磁盘空间是否足够。命令: df -k df -m df -g等。 历史: BSD,SYSTEM V 主流商业版本 SUN SOLORIS IBM AIX HP-UX Tru64 UNIX LINUX 登录和用户管理 进入系统 login: passwd: 字符方式: 字符终端(console,tty) telnet,term-tools 图形方式(x-window protocal): 从主机登录; 图形终端工具(reflection,hummingbird,cygwin,etc.) Change passwd: $ passwd old password: new password: reenter new password: chsh $ chsh /bin /sh /bin /csh User informaiton defined in /etc/passwd,readonly for ordinary users.

$ man cmd $ docsearch $ wheris cmd $ which cmd Command Search Path $ echo $PATH 查看自己的用户名 $ whoami who ,w 查看当前谁在系统上 users, u 查看当前系统的用户 id 看登录用户 finger user 查看user 的信息 ps 显示当前进程状况 ps –u user 显示用户名为user 的进程状况 进程调度 后台运行 $ cmd & $ cmd1;cmd2;cmd3 $ cmd1&&cmd2&&cmd3 $ cmd1||cmd2||cmd3 从后台转到前台 $ jobs #查找 $ fg %n 定时任务 at,cron $ at time cmd $ crontab –l $ crontab –e $ crontab user # root can edit other users? crontab 重定向和管道 stdin,stdout,stderr $ cmd >file $ cmd

相关文档
相关文档 最新文档