山地人

Linux基本操作

山地人
山地人
2021-05-12

今天,我们学习一组操作Linux服务器的最基本的命令,掌握这些命令后,便可以开启你的Linux旅程,祝你一路旅途愉快。

pwd

做为你的向导,我们通过终端登录Linux服务器后,你首先需要了解的是身处何方。pwd命令,就是你当前位置的指路人,这就是我要向你介绍的第一个命令。

pwd: print working directory 打印当前的工作目录

pwd

启动终端,然后试者输入这个命令,然后按下回车,你会看到一些输出结果,那就是你当前所在的位置。

记得别输错了,当然真输入错误了,也不用担心,你不会弄坏虚拟机的,丢掉一切心理负担,重新再来一次即可😝。

试一试

启动这个终端,看到#符号后,输入pwd,最后按下回车

如果你看到了下面这样的提示,那么恭喜你成功完成了人生中第一个Linux命令,很简单吧。

# pwd
/

这里的/叫做根目录,Linux里的目录像一棵倒挂的树,最顶层的目录,就是这个更目录用一个斜杠表示。

ls

接着,你应该很想知道当前目录下,都有哪些文件。这和去一个陌生的地方旅行一样,你会问我在哪pwd,然后看看周围都有啥。这就要用到我们的第2条命令了ls

ls: list 对就是这个单词的缩写,意思是列表。把当前环境的文件像列表一样列一个清单给你。

# ls

试一试

启动终端,试试ls命令。

哈哈,如果你看到的内容和下面一样,看来你确实是跟着教程做的一点没错。为你点个赞。

要是得到的结果和下面的不一样,那检查下是否自己拼写有错误,然后重新再试一下,相信你会做对的。

# ls
bin dev home lib32 libx32 mnt proc run srv tmp var
boot etc lib lib64 media opt root sbin sys usr

这里列出的可都是linux根目录下的所有文件,每个文件都有自己存在的意义。如果你感兴趣,这个我们以后再出教程来讲这块内容。

在Linux中一切皆文件,更目录下的这些其实都是目录,当然目录在Linux里也是一种特殊的文件。

cd

好奇的你,应该会想进入到每个目录下去看一看。看看不同的目录里都放了些什么?我们的下一个命令cd就此闪亮登场了。

cd: change directory 更改目录

cd home

在Linux服务器上,每个账号都会对应一个自己的home目录。这个home目录被称为主目录,这是你这个账号的老家。既然来带Linux世界,你肯定也想回你的老家看看。

使用cd后加加个空格然后再输入home最后按下回车,你就进入了home目录

进入home目录后,你可以试试刚才学的pwdls命令,确定当前位置和周围环境。

看完了周围的一切,你可能想从home目录退出到根目录。别急依然使用cd不过这次后面要加上空格,再加两个点

cd ..

像这样,你就可以从home目录往上一级,返回到/更目录。

cdpwdls 这三个命令掌握后,你可以去到任意一个目录下了,你可以多试试,看看不同的目录里都放了些啥。

扩展

前面,我们已经知道了cdls的最基本的用法。随着你对基本用法的熟练,你会越来越不满足于这样最基础的用法,比如:你当前在/home目录, 你想查看一下根目录的情况,但又想查完之后,还是处于/home目录。

如果是之前,你可能会这么做

cd ..
ls
cd home

三条命令才完成了你的作业要求,这时,不满足现状的你想要获得更快捷的工作方式。如果ls可以指定我要查看的路径,问题就可以解决了, 于是就有了下面这个操作

ls /

ls命令后面跟一个空格,然后加上你要查询的路径,你就可以完成足不出户,却能知天下的操作。效率相比之前大大提升了,有没有。

同样,如果你在/home目录下,想要进入到 根目录下的usr目录下的bin目录下,如果是之前,你可能会这么做

cd ..
cd usr
cd bin

现在,你可以这样做

cd /usr/bin

有一次把三条命令才能干完的事情,提升为一条命令完成。直接在cd命令后空格,然后加上你要去往的绝对路径/usr/bin就可以。 当然,你也可以是用相对当前位置的相对路径的写法./../usr/bin

cd ./../usr/bin

这两种做法最终获得的效果是相同的,但是思路上却又差别。这里解释下绝对路径相对路径的概念。

  • 绝对路径:是以系统跟路径/作为起点然后一级一级往下走的路径写法/usr/bin读作根目录下的user目录下的bin目录
  • 相对路径:是相对于当前位置作为起点,然后一级一级书写的路径写法./../usr/bin读作当前位置的上一级目录下的user目录下的bin目录

当然对于相对路径的写法,还可以省略掉./直接写成../usr/bin。系统都知道你是使用当前位置作为路径起点。

cd /usr/bin
cd ../usr/bin
cd ./../usr/bin

这三个命令对于身处/home目录的你,最终的效果是一样的,你可以灵活选用。

ls的进阶

对于ls命令,如果你觉得自己已经掌握的差不多了,那你离真相还差得很远。ls的功能远不止这些,我们之前学过的ls的用法,还是基本操作。

都只是列举一下文件名称而已,如果你想获得不同文件的更为详细的信息,你还需要使用ls的其它选项参数。

比如这条,你可以查询出/bin目录下每个文件的详细信息

# ls -l /
total 48
lrwxrwxrwx 1 root root 7 Apr 16 05:11 bin -> usr/bin
drwxr-xr-x 2 root root 4096 Apr 15 2020 boot
drwxr-xr-x 5 root root 340 May 12 01:58 dev
drwxr-xr-x 1 root root 4096 May 12 01:58 etc
drwxr-xr-x 2 root root 4096 Apr 15 2020 home
...

这里的-l选项参数,对应的英文单词应该是long,就是以长列表的格式展示信息,通俗得讲就是用比较全的文件信息展示方式来展示列表。

你还可以这样来用,让数据展示更为人性化

# ls -l -h /
total 48K
lrwxrwxrwx 1 root root 7 Apr 16 05:11 bin -> usr/bin
drwxr-xr-x 2 root root 4.0K Apr 15 2020 boot
drwxr-xr-x 5 root root 340 May 12 02:02 dev
drwxr-xr-x 1 root root 4.0K May 12 02:02 etc
drwxr-xr-x 2 root root 4.0K Apr 15 2020 home

这里又增加了一个参数-h对应的英文单词是human,意思是以人类可读的方式来展示数据。你可以对比下这种数据输出和上一种数据的展示,是不是更佳易读了。

Linux在设计这些命令和命令参数的时候,是有一定的设计哲学的。随着你对Linux命令的逐步深入,你就越发能感受Linux的美。

如何自学命令

学到这里,你可能又会产生新的困惑,这些命令还有命令的参数我可能会记不住,又或者我想知道某个命令的其他用法,这该怎么办。

确实,Linux的命令功能非常强大,强大的同时也伴随着命令的选项参数众多。那么学会自查帮助命令帮助文档,就是我们要掌握的最为关键的学习方法。

一般来说,Linux下的这些标准命令,都可以通过这样的几种选项,打开对应命令的帮助菜单

-h
--help

所以可以这样查找帮助

ls --help

但你可能通过实验,发现好像只有ls--help的快捷帮助,而pwdcd用这种方式就不行。

这就要请出我们的终极帮助工具man手册了。几乎所有的linux标准命令,都是可以在man手册上查找到详细文档说明的。

man cd

你可以使用 man+空格+命令的方式来查找学习对应的命令

我在终端里已经帮你安装好了man工具,你可以直接使用。

如何退出man手册?

man手册中直接按q键既可立即退出当前的man手册

最后,完成所有练习后,可以养成好习惯,退出终端,退出方法是exit然后按回车完美结束本次练习。

exit

回顾

本篇教程,我们都学到了哪些知识点,下面列举下本次学到的几个基本命令。

命令英文全称功能备注
pwdprint working directory查看当前路径始终打印的是你所在的当前路径
cdchange directory切换目录配合相对路径或者绝对路径使用
lslist列举路径文件-l 长格式输出 -h 人性化输出

周边概念

概念说明
相对路径以当前位置作为路径计算的起点
绝对路径以根路径作为路径计算的起点
.表示当前目录
..表示上一级目录
-h,—help一般查询命令帮助的选项参数
man 命令名称man手册查询命令帮助手册

至此,本篇教程也到了该和你说再见的时候了,我们下期再见。

学完本篇互动教程,如果你觉得体验不错,可以把网页链接发送给你的小伙伴,让他/她也来感受一下。当然,你也可以继续看看网站上其他的的互动教程,希望`idev365`能够给你带来收获。

学习教程的过程中碰到了问题,或者对idev365有什么改进意见和想法,欢迎加入idev365微信内测群,和山地人交流你的想法。