导航操作

服务器上没有创建太多用户,大家都是在 njucs 用户下进行操作,所以为了分开不同用户的操作,我们需要新建一个工作目录,以免产生冲突。

在不同文件中穿梭

使用 pwd 命令可以查看当前目录 (Print Working Directory)。输入命令后回车即可执行命令。

$ pwd
/home/njucs

使用 mkdir 命令创建目录 (Make Directory)

[!Tip|style:flat]

  • 为了方便管理,请以你的学号为名创建目录。对于散乱的文件,我们将全部放到 tmp 文件夹中
$ mkdir 161220096

接下来我们查看我们的文件是否被创建了。 使用 ls 命令查看目录下所有文件和文件夹 (List)

$ ls
161220096  guide  tmp

接着我们可以进入自己的工作目录(自己的文件夹)中进行玩耍了。 使用 cd 命令切换目录 (Change)

$ cd 161220096

此时我们可以确认我们的路径

$ pwd
/home/njucs/guide

Linux 常识

你可能会注意到 shell 里有一个 ~/guide 或是 ~/你的学号

终端提示符

实际上,在 linux 中对于目录有一些特别的记号:

  • ~:表示用户的 home 目录,对于 njucs 用户来说,~就是/home/njucs
  • /:表示系统根目录
  • ..:表示上级目录
  • .:表示当前目录
  • -:表示前一个工作目录

实际上,当单独输入 ls 时,执行的就是 ls .,显示了当前目录的情况。我们还可以尝试 ls ~, ls ~/tmp, ls /, ls .. 等命令。

此外,在输入一行命令并回车后,有些命令有输出,可以通过输出知道是否成功。有些命令没有输出,是否成功了呢?在 Linux 中,没有输出默认为成功了。所以以后执行命令时如果没有输出,那么基本上就是成功了。

ls 命令

在 linux 中,以.开头的文件属于隐藏文件,如果想要显示这些文件,可以考虑使用ls --all命令。

$ ls --all ~

你会发现有许多点文件。目前不用担心它们,它们是一些配置文件。在不知道用途的前提下不要随意修改或删除它们(所以隐藏了起来),否则可能会造成恢复上的困难。

[!Warning|style:flat]

  • 在本服务器上,不应删除、移动或随意修改主目录下的隐藏文件

ls 命令还可以提供关于文件的基本属性,从左到右为操作权限(drwxrwxr-x),包含文件数目(4),拥有该文件的用户和用户组(njucs njucs),文件大小(4.0K),创建日期(Mar 27 21:59),文件名。

$ ls -lh ~
drwxrwxr-x 4 njucs njucs 4.0K Mar 27 21:59 guide
drwxrwxr-x 6 njucs njucs 4.0K Mar 29 10:52 tmp
...

你也许发现了,Linux 的命令符号一定的格式。是的,Linux 的命令基本上都是由三部分构成的:

$ ls  -l --all -h  ~/tmp
  ^^  ^^^^^^^^^^^  ^^^^^

第一部分是名称,即该命令的名字。不同的名字区分了不同的命令。第二部分是参数,通常以 - 加一个字母,和 -- 加多个字母给出。每次可以添加多个参数,其中 - 加一个字母的参数可以合并。同时,一般一个参数效果会同时有 - 的短名和 -- 的长名。比如 --all-a 同义,-h--human-readable 同义。

最后一个或多个由空格隔开的参数为 ls 需要的参数。可以认为这是在调用 ls 这个函数。

故以上命令等价为

$ ls -la --human-readable ~/tmp

值得注意的是,以上只是 Linux 命令的推荐规范,偶尔有些命令并不符合(比如 - 加长字符串)。但对于大多数命令都是适用的。

其它文件查看命令

以下这些工具并非每个系统自带的,需要使用包管理工具下载,如 aptget install tree。包管理工具将在之后介绍。服务器中已经预先安装了部分工具。

tree 工具可以帮助你显示文件的结构。tree 命令的结果其实也给我们展示了 Linux 下的文件目录实际上也是一种树结构(相信学过计构(被计构折磨过)的小伙伴们都知道)。

$ tree . -L 2
# -L 参数设置显示的层数
|- guide
    |- hello
    |- makefile
    |- ...
|- mud_game
...
© CC BY-NC 4.0            Last Modified: 2021-09-16 03:35:48

results matching ""

    No results matching ""