简述
Linux 操作和 Windows 有很大不同。要熟练的使用 Linux 系统,首先要了解 Linux 系统的目录结构,并掌握常用的命令,以便进行文件的操作、信息查看和系统参数配置等。Shell 是用户与操作系统进行交互的编译器,如果没有 Shell,用户将无法与系统进行交互,也就无法使用系统中相关的软件资源。充分了解并利用 Shell 的特性可以完成简单到复杂的任务调度。管道与重定向是 Linux 系统进程间的通信方式,在系统管理中起着举足轻重的作用。
命令行模式
在 Linux 中我们很少使用图形模式,为什么呢?因为大神不屑。。。O(∩_∩)O~一般斗门都是用命令行模式来进行各种操作,因为命令行模式执行速度快,而且稳定性高。而 Linux 中的命令解释器就是 Shell,这也是在使用命令前必须要了解 Shell 的原因。
为什么要先学习Shell
Linux 系统主要由四大部分组成:
用户成功登录 Linux 后,首先接触的便是 Shell。简单来说,Shell 主要有两大功能:
- 提供用户与操作系统进行交互操作的接口,方便用户使用系统中的软硬件资源。
- 提供脚本语言编程环境,方便用户完成简单到复杂的任务调度。
Linux 启动时,最先进入内存的是内核,并常驻内存,然后进行系统引导,引导的过程中启动所有进行的父进程在后台运行,直到相关的系统资源初始化完毕后,等待用户登录。用户登录时,通过登录进程验证用户的合法性。用户验证通过后根据用户的设置启动相关的 Shell,以便接收用户输入的命令并返回执行结果。
用户执行一个命令的过程:
Linux 的 Shell 有很多种,bash(Bourne Again Shell)是使用最广泛的一种,各个发行版一般将其设置为系统中默认的 Shell。许多 Linux 系统将 Shell 作为重要的系统管理工具,比如:系统的开机、关机及软件的管理。其他的 Shell 有:C Shell、Korn Shell、Bourne Shell等,其中 C Shell 主要因为其语法和 C 语言类似而得名,而 Bourne Again Shell 是 Bourne Shell 的扩展。
Linux提供的图形界面接口可以完成绝大多数的工作,而系统管理员一般更习惯于使用终端命令行进行系统的参数设置和任务管理。使用终端命令行可以方便快速地完成各种任务。
使用终端命令行需要掌握一些必要的命令,这些命令的组合不仅可以完成简单的操作,通过 Linux 提供的 Shell 还可以完成一些复杂的任务。用户在终端命令行输入一串字符,Shell 负责理解并执行这些字符串。然后把结果显示在终端上。
注意:大多数 Shell 都有命令补齐的功能。
在 Unix 的发展历史上,用户都是通过 Shell 来工作的。大部分命令都经过了几十年的发展和改良,功能强大,性能稳定。Linux 继承自 Unix,自然也是如此。此外 Linux 的图形化界面并不好,并不是所有的命令都有对应的图形按钮。在图形化界面崩溃的情况下,就更要靠 Shell 输入命令来恢复计算机了。
命令本身是一个函数(function),是一个小的功能模块。如果想要让计算机完成很复杂的事情,则必须通过 Shell 编程来实现。可以把命令作为函数,嵌入到 Shell 程序中,从而让不同的命令协同工作。
如何进入命令行
如果安装的是桌面版,有两种方式进入命令行界面:菜单方式、快捷键方式。
命令行以“[当前用户名@计算机名~]$”
为前缀,如果是 root 用户,则最后以“#”结束,如果是普通用户,则以“$”结束。
-
菜单方式
菜单方式常用的有两种选择:
单击鼠标右键,选择【在终端中打开】。
单击【应用程序】->【工具】->【终端】,打开命令行。
-
快捷键方式
大多数 Linux 版本都是用 Ctrl+Alt+F1 的形式切换到命令行,在使用 Alt+F7 切换回图形界面。如果在 VMWare 虚拟机上,再多一个 Shift 键,使用 Ctrl+Shift+Alt+F1 的形式。在 CentOS 桌面版中,我测试这几个按键都无效,这里要使用 Ctrl+Windows键+Alt+F3 切换到命令行,在使用 Ctrl+Windows键+Alt+F1 切回图形界面。
注意:因为虚拟机默认与主机之间的切换快捷键是 Ctrl+Alt 键,所以在使用有这两个键的快捷操作时,尽量不要先按这两个键,否则就会跳出虚拟机模式。