实验一 Linux基本环境

  • 格式:doc
  • 大小:105.00 KB
  • 文档页数:12

实验一 Linux基本环境

一、实验目的

1.熟悉Linux下的基本操作,学会使用各种Shell命令去操作Linux,对Linux有一个感性认识。

2.学会使用vi编辑器编辑简单的C语言程序,并能对其编译和调试。

3.了解LINUX系统的安装过程。

二、实验学时

2学时

三、实验内容

1.完成LINUX系统的登录,启动终端,使用adduser在超级用户下为自己创建一个用户。

2.登录自己的用户,使用who命令和whoami命令查看当前用户名称。

3.进行下列操作并记录结果(要求:结果记录在实验报告中)。

1)运行pwd命令,确定你当前的工作目录。

2)利用以下命令显示当前工作目录的内容: ls –l

3)运行以下命令: ls –al

4)使用mkdir命令建立一个子目录subdir

5)使用cd命令,将工作目录改到根目录(/)上。

6)使用ls-l命令列出/dev的内容。

7)使用不带参数的命令cd改变目录,然后用pwd命令确定你当前的工作目录是哪里?

8)使用命令cd../..,你将工作目录移到什么地方?

4.在LINUX下查看你的文件。

1)利用cd命令,将工作目录改到你的主目录上。

2)将工作目录改到你的子目录subdir,然后运行命令: date > file1 将当前日期和时间存放到新建文件file1中。

3)使用cat命令查看file1文件的内容。

4)利用man命令显示date命令的用法: man date

5. 编写能输出“Hello world!”问候语的C程序,并在终端中编译、执行。要求记录所使用的命令及结果。

6.编写一个程序:显示信息“Time for Play!”,并能在后台运行一段时间(自定义)后,弹出信息提醒用户。要求记录所使用的命令及结果。(提示:使用sleep(s)函数)

四、实验参考

(一)Linux基本命令介绍 在Linux中进行命令行输入操作的界面叫做“终端”,成功进入Linux系统后,在桌面上点击鼠标右键,选择“终端”选项,即可弹出“终端”窗口。或者使用键盘上的组合键CTRL+ALT+F1打开终端。显示终端提示符

[root@localhost~]#

其中,root表示当前用户为系统管理员用户,localhost表示主机名;~表示当前所在的目录,此处表示位于当前用户的主目录下;#表示超级用户的提示符,(如果是普通用户命令提示符为$)。(注意Linux命令区分大小写。)

1.在超级用户下为自己创建一个用户。

(1)先检查要创建的用户有无重名。

#gedit /etc/passwd --弹出根目录下etc文件夹中文本文件passwd的内容,这文件的主要内容包含了所有用户登录名清单;为所有用户指定了主目录;在登录时使用的shell程序名称等。该文件还保存了用户口令;给每个用户提供系统识别号,每行都采用了相同的格式:

name:password:uid:gid:comment:home:shell

具体含义如下:

name:用户登录名

password:用户口令。此域中的口令是加密的。如果这里为空表示该用户登录时不需要口令。

uid:指定用户的UID。用户登录后,系统通过该值辨别用户。

Gid:如果系统要对相同的一群人赋予相同的权限,使用该值。

Comment:用来保存用户真实姓名和个人细节。

Home:指定用户的主目录的绝对路径。

Shell:如果用户登录成功,则要执行命令的绝对路径放在这一区域中。它可以是任意命令。

(2)创建用户名

#adduser aaa --创建名为aaa的用户,可通过passwd文件查看创建情况

#passwd aaa --设置aaa用户密码(既可用于增加也可用于修改密码)

终端会显示

Changing password for user aaa

New UNIX password:

输入密码,(注意密码不会显示出来),输入完成按回车,出现如下提示:

Retype new UNIX password:

再次输入,两次密码相同则会出现如下提示:

passwd:all authentication tokens updated successfully.

(3)登录新用户

#su aaa

登录成功则显示如下提示符;

[aaa@localhost root]$

(4)查看当前使用用户

Linux是多用户操作系统,因此提供了6个虚拟终端,可以同时打开多个终端,并使用不同的用户登录。同时可以使用who命令查看当前登录的所有用户,也可以使用whoami命令查看自己的用户名。通过exit命令可以退出当前用户。

$who

2.linux下的帮助命令

Linux提供了两种帮助命令,man和help。Help主要是简单的帮助,是hardcode进程里的,而man是查看使用手册,内容较为详细。具体使用方法如下:

#man ls --查看ls命令的使用方法,按回车键翻页,按Q键退出。

#help --可输出最常用的命令,具体用法可查man

#ls –help --查看ls最简单用法,如果滚动比较快可以使用#ls –help|less或#ls

–help|more,通过回车键翻页查看,按Q键退出。

(二)linux目录操作,(linux目录结构介绍见附件1)

所有完整的目录路径都起源于根“/”,但当前工作路径中的文件可以直接引用不加路径,或基于当前路径下的子路径。

1.pwd 显示当前目录绝对路径

2.cd改变当前目录

cd / --回到根目录;

cd .. --回到上层目录;

cd~ --进入个人的主目录

cd../.. --跳到目前目录的上上两层

cd - --返回上次所在的目录

范例 : 跳到 /usr/bin/ :

#cd /usr/bin

3.ls 列出目前工作目录所含之档案及子目录

ls 按字母顺序列出当前目录中所有非隐藏文件;

ls –a 按字母顺序列出当前目录中所有文件,包括隐藏文件(头部带“.”的文件)

ls –l 查看当前目录所有文件包括当前目录和父目录,包括长度、拥有者和权限;

ls -r 将档案以相反次序显示(原定依英文字母次序)

ls -t 将档案依建立时间之先后次序列出

ls -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)

ls -F 在列出的档案名称后加一符号;例如可执行档则加 "*", 目录则加 "/"

ls -R 若目录下有档案,则以下之档案亦皆依序列出

范例:

列出目前工作目录下所有名称是 s 开头的档案,愈新的排愈后面 :

#ls -ltr s*

将 /bin 目录以下所有目录及档案详细资料列出 :

# ls -lR /bin

列出目前工作目录下所有档案及目录;目录于名称后加 "/", 可执行档于名称后加 "*" :

#ls -AF

4.cat 显示文档

cat命令将文件内容输出到终端上显示。范例:使用cat命令查看文件/etc/hosts的内容。

#Cat /etc/hosts

5.将命令输出重定向到文件中

可以使用“〉”将输出重定向到其他地点。 范例:

(1)建立新文件file1并将当前日期和时间存放到新建文件file1中,并显示。

#date > file1

#Ls

#Cat file1 //显示file1的文件内容

(2)列出/etc/sysconfig/rhn的内容,并重定向到lsout.txt文件中。

#ls /etc/sysconfig/rhn > lsout.txt

#cat lsout.txt

(3)利用cal命令将本月的日历保存到file2.txt文件中,

#cal //察看cal命令输出

#cal > file2.txt //重定向

#ls

#cat file2.txt //显示文件内容。

6.mkdir 建立目录

参数:-p 确保目录名称存在,不存在的就建一个。

范例:

在工作目录下,建立一个名为 AAA 的子目录 :

#mkdir AAA

在工作目录下的 BBB 目录中,建立一个名为 Test 的子目录。若 BBB 目录原本不存在,则建立一个。(注:本例若不加 -p,且原本 BBB目录不存在,则产生错误。)

#mkdir -p BBB/Test

7.mv 将一个档案移至另一档案,或将数个档案移至另一目录。

参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。

范例:

将档案 aaa 更名为 bbb :

mv aaa bbb

将所有的C语言程序移至 Finished 子目录中 :

mv -i *.c Finished

8.cp 将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录

参数:

-a 尽可能将档案状态、权限等资料都照原状予以复制。

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

范例:

将档案 aaa 复制(已存在),并命名为 bbb :

cp aaa bbb

将所有的C语言程序拷贝至 Finished 子目录中 :

cp *.c Finished

9.rm 删除文件和目录

rm hello 删除hello而不提示确认;

rm –i hello 提示用户确认之后删除hello

rm –r test/ 删除目录时递归删除目录下所有文件和子目录

10. rmdir 删除空的目录。