# Lab-1 熟悉类Linux系统的命令

# 本节导读

通过练习掌握Linux一般命令格式,掌握有关文件和目录操作的常用命令,学会使用vi编辑器建立、编辑、显示及加工处理文本文件。

# 实验内容

# 简单命令的使用

使用以下命令,看看系统会输出什么:

date命令:显示或设置系统的日期或时间

cal命令:显示公元1-9999年中任意一年或任意一个月的日历

who命令:列出所有正在使用系统的用户、所有终端名和注册到系统的时间

clear命令:清除屏幕上的信息

如果你忘了命令对应的功能或如何使用它们,请尝试使用manhelp命令寻求帮助

# 浏览文件系统

  1. 运行pwd命令,查看当前工作目录

  2. 运行ls -l命令,尝试理解输出各字段的含义

  3. 运行ls -ai命令,看看发生了什么变化,尝试理解输出各字段的含义

  4. 使用cd命令,将工作目录更改到根目录上

$ cd /

再次运行ls -l命令,查看该目录下有哪些东西,了解各目录的作用

  1. 这时如果直接使用cd命令,当前路径是什么?尝试使用相应命令查看并验证

  2. 使用mkdir建立一个子目录subdir

$ mkdir subdir
  1. 子目录创建成功了吗?让我们使用ls命令查看,并将工作目录更改到subdir
$ ls
$ cd subdir

# 对文件和目录操作

  1. 运行date > file1,然后运行cat file1,我们将看到什么信息?
$ date > file1
$ cat file1
  1. 尝试运行cat subdir,会有什么结果?如果回到上一个目录,再次运行,又会有什么结果?为什么?
$ cat subdir
$ cd ../
  1. 运行man date >>file1,我们能看到什么?再运行cat file1,又看到什么?
$ man date >>file1
$ cat file1
  1. 利用ls -l file1,该文件链接计数是多少?运行ln file1 ../fa,再运行ls -l file1,看链接计数有无变化?
$ ls -l file1
$ ln file1 ../fa
  1. 用cat命令显示fa文件内容,注意fa文件所在位置,理解ln命令的作用是什么。

  2. 尝试显示file1的前10行,后10行。

# 尝试使用多种方法
$ head -10 file1
$ cat file1 | tail -n 10
  1. 运行cp file1 file2,然后ls -l,会看到什么?运行mv file2 file3,然后ls -l,又看到什么?运行cat f*,结果如何?
$ cp file1 file2
$ mv file2 file3
$ cat f*
  1. 运行rm file3,然后ls -l,结果如何?
$ rm file3
$ ls –l

# vi编辑器的使用

  1. 建立一个文件,如file.c。输入一个C语言程序的各行内容,故意制造几处错误。

这里有多种方式,你可以通过touch 文件名来建立空白文件,接着在对应文件夹下使用vi 文件名进行操作

或者,直接通过打开vi编辑器,进入插入模式,最后将该文件存盘。

  1. 运行gcc file.c -o myfile,编译该文件,会看到什么?尝试理解其含义。
$ gcc file.c -o myfile
  1. 重新进入vi,对该文件进行修改。然后存盘,退出vi。重新编译该文件。如果编译通过了,可以用./myfile运行该程序。

./(点斜杠)的意思是执行当前目录下的某个可执行文件

  1. 运行man date > file2,然后vi file2。使用xdd等命令删除某些文本行。使用u命令复原此前的情况。