《计算机组成原理-实验一》实验报告韶关学院数信学院2010级信息与计算科学2012年 9月实验一:本实验分三部分:1熟悉Linux常用命令(上)2 Linux下程序设计基础(中)3汇编语言与机器指令(下)(暂略)实验一熟悉Linux常用命令(上)一,实验要求:1,熟练Linux下的常用命令.2,熟练地操作linux.二,实验内容:练习使用Linux常用命令;三,实验环境:windows7的vmware的Redhat。
四,Linux下常用命令实验操作:(以下命令若权限不够,要在命令前加sudo)1. 写出下面命令每个部分含义,字符C表示命令(Command)、O表示选项(Option)、OA表示选项的参数(Option Argument)、CA表示命令的参数(Command Argument),如:C OOA O OA C A Answer$ lpr –Pspr –n 3 proposal.ps Command lineLinux命令行的语法结构:$ command [[-]option(s)] [option argument(s)] [command argument(s)]含义:● $:linux系统提示符,您的linux系统可能是其他的提示符● Command :linux命令的名字● [[-]option(s)] :改变命令行为的一个或多个修饰符,即选项● [option argument(s)] :选项的参数● [command argument(s)] :命令的参数1) ls -la convert.txt2) more convert.txt3) pwd4) cat file1 file2 file35) rm -r temp6) ping –c 3 7) telnet 138) cc -o short short.c -lbaked9) chmod u+rw file1.c10) uname –n2. 进入linux系统,在终端或命令行窗口中,输入如下linux命令,记录其输出结果1) ls2) pwd3) xy4) cd ..5) pwd6) cd7) pwd8) cd /usr/local9) ls10) cd3. 使用man命令来获得每个Linux命令的帮助手册,用man ls,man passwd,man pwd命令得到ls、passwd、pwd三个命令的帮助手册。
也可以使用:命令名--help格式来显示该命令的帮助信息,如who --help,试一下这些命令。
4. 用who 命令显示当前正在你的Linux系统中使用的用户名字:1) 有多少用户正在使用你的Linux系统?给出显示的结果2) 哪个用户登录的时间最长?给出该用户登录的时间和日期。
5. 使用下面的命令显示有关你计算机系统信息:uname(显示操作系统的名称),uname –n (显示系统域名),uname –p(显示系统的CPU名称)1) 你的操作系统名字是什么?2) 你计算机系统的域名是什么?3) 你计算机系统的CPU名字是什么?6. 使用whoami命令找到用户名。
然后使用who -a命令来看看你的用户名和同一系统其他用户的列表。
7. 使用passwd命令修改你的登录密码。
8. 在shell提示符后,输入echo $PS1并按回车键,系统怎样回答?9. 在shell提示符后,输入PS1=%并按回车键,显示屏有什么变化?10. 在shell提示符后,输入set 并按回车键,系统显示环境变量。
给出你系统中的环境变量和它的值。
下面实验用到的命令:|、man、gedit、cat、nl、head、tail、ls、cp、wc、lpr等11.创建几个大小不等的文本文件,供本实验和后面几个实验用。
用man cat >mediumFile 命令创建中等大小的文件;用man bash > largeFile 命令创建一个大文件;在创建一个名字为smallFile(命令gedit smallFile)关于学生数据的小文件,文件每行内容(蓝色字体部分)如下,注意字段之间用tab符隔开(输入前12行的内容即可):12.使用cat 和nl命令显示smallFile 文件内容并显示行号。
两个命令的输出应该完全一样。
给出完成这项任务的命令(显示的内容不需要)。
13. 用more命令显示smallFile 和mediumFile 文件内容,每屏显示10行。
给出你的命令(显示的内容不需要)。
14.显示largeFile 文件的前12行内容,显示smallFile 文件的最后5行内容,要用什么命令?哪个命令能显示smallFile 文件从第6行开始到结束,且逆序显示(tac)?给出完成这项任务的命令(显示的内容不需要)。
15. 本实验目的观察使用带-f选项的tail命令。
复制smallFile 文件,文件名为dataFile,创建一个文件名为ch7.c的c语言文件,内容如下:#include <stdio.h>main(){int i;i = 0;sleep(10);while (i < 5) {system("date");sleep(5);i++;}while (1) {system("date");sleep(10);}}现在依次运行下列三个命令。
第一个命令生成一个c语言的可执行文件,文件名为generate;第二个命令是每隔5 秒和10秒把date命令的输出追加到dataFile文件中,这个命令为后台执行,注意后台执行的命令尾部加上&字符;最后一个命令tail –f dataFile,显示dataFile文件的当前内容和新追加的数据:gcc ch7.c –o generate./generate >> dataFile &tail –f dataFile在输入tail -f 命令1分钟左右后,按<Ctrl-C>终止tail程序。
用kill -9 pid命令终止generate 后台进程的执行。
注:pid是执行generate程序的进程号;使用generate >> dataFile&命令后,屏幕打印后台进程作业号和进程号,其中第一个字段方括号内的数字为作业号,第二个数字为进程号;也可以用kill -9 %job终止generate 后台进程,job为作业号。
最后用tail dataFile命令显示文件追加的内容。
给出这些过程的你的会话。
16. 在前面你已把dataFile 文件复制为smallFile 文件的拷贝。
用ls –l命令观察这两个文件的修改时间是否一样。
它们是不同的,dataFile文件的修改时间应该是这个文件的创建时间。
什么命令能够保留这个修改时间不变呢?这两个文件的inode号是多少?再把文件名dataFile 改成(移动)newDataFile,文件newDataFile 的inode多少?与dataFile 文件的inode号是否相同,若相同,为什么?然后再把文件newDataFile移动到/tmp目录下,文件/tmp/newDataFile的inode号是多少?比较结果如何,为什么?给出完成这项任务的命令(显示的内容不需要)17.在屏幕上显示文件smallFile、mediumFile、largeFile和/tmp/newDataFile 的字节数、字数和行数。
smallFile和/tmp/newDataFile 文件应该是相同的。
你能用其它命令给出这些文件的字节数的大小吗?什么命令。
给出完成这项任务的命令(显示的内容不需要)18.退出系统.5,思考题:1)如何查看隐含文件列表?2)如何将一个目录中的所有文件拷贝到另一个目录中,包括这个目录中的隐含文件.3)如何删除一个目录包括其中的所有文件,并且不显示任何提示信息?4)什么是绝对路径?什么是相对路径?如何表示?6.附录实验结果:1、(1)ls -la convert.txt表示以长格式显示一般和隐藏的convert.tx文件和目录列表;(2)more convert.txt表示分页显示convert.tx文本文件内容;(3)pwd表示显示当前工作目录;(4)cat file1 file2 file3表示显示文本文件file1 file2 file3的内容;(5)rm -r temp表示删除temp文件以及temp目录和其下的子目录;(6)ping –c 3 表示连续3次测试网络的连通性;(7)telnet 13表示远程登录网络 13;(8)cc表示编译(9)chmod u+rw file1.c表示将file.c的权限改为该档案的拥有者有读写的权利;(10)uname –n表示输出网络节点上的主机名。
2、(1)user@ubuntu:~$ lsa.out cpi.c examples.desktop file.c largeFile Publicch7.c cpi.o file1 generate mediumFile smallFile com.txt Desktop file1.c hello.c Music Templates convert.txt Documents file2 hello.i nohup.out Videoscpi Downloads file3 hello.s Pictures workspace (2)user@ubuntu:~$ pwd /home/user(3)user@ubuntu:~$ xy Xy:找不到命令(4)user@ubuntu:~$ cd ..(5)user@ubuntu:/home$ pwd/home(6)user@ubuntu:/home$ cd(7)user@ubuntu:~$ pwd/home/user(8)user@ubuntu:~$ cd /usr/local(9)user@ubuntu:/usr/local$ lsarm eclipse games lib sbin srcbin etc include man share tomcat-6.0.29(10)user@ubuntu:/usr/local$ cd3、(1)man lsNAMEls - list directory contentsSYNOPSISls [OPTION]... [FILE]...DESCRIPTIONList information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort.Mandatory arguments to long options are mandatory for shortoptions too.-a, --alldo not ignore entries starting with .(2)man passwdNAMEpasswd - change user passwordSYNOPSISpasswd [options] [LOGIN]DESCRIPTIONThe passwd command changes passwords for user accounts. A normaluser may only change the password for his/her own account, whilethe superuser may change the password for any account. passwdalso changes the account or associated password validity period.Password ChangesThe user is first prompted for his/her old password, if one ispresent. This password is then encrypted and compared against the stored password. The user has only one chance to enter the correct password. The superuser is permitted to bypass this step so that (3)man pwdNAMEpwd - print name of current/working directorySYNOPSISpwd [OPTION]...DESCRIPTIONPrint the full filename of the current working directory.-L, --logicaluse PWD from environment, even if it contains symlinks-P, --physicalavoid all symlinks4、(1)whouser@ubuntu:~$ whouser tty7 2012-03-11 22:24 (:0)user pts/0 2012-03-11 22:42 (:0.0)(2)user tty7 2012-03-11 22:24 (:0)5、(1)Linux (2)ubuntu (3)unknown6、用户名:user用户名和同一系统其他用户的列表:系统引导2012-03-11 22:22运行级别2 2012-03-11 22:22登录tty4 2012-03-11 22:22 866 id=4登录tty5 2012-03-11 22:22 872 id=5登录tty2 2012-03-11 22:22 878 id=2登录tty3 2012-03-11 22:22 879 id=3登录tty6 2012-03-11 22:22 882 id=6登录tty1 2012-03-11 22:23 1500 id=1user + tty7 2012-03-11 22:24 旧1542 (:0)user + pts/0 2012-03-11 22:42 . 1962 (:0.0)pts/1 2012-03-11 237、更改user密码:当前UNIX密码:1234;输入新的UNIX密码:abcde;重新输入新的UNIX密码:abcde8、\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$9、多出了%,毎次按enter就多一个%。