1.3 Linux终端介绍 Shell提示符 Bash Shell基本语法

1)Linux终端介绍:

在图形化界面出现之前,Unix系统进行交互的唯一方式就是借助由shell所提供的文本命令行界面(command line interface,CLI)。CLI只能接受文本输入,也只能显示出文本和基本的图形输出。 随着Linux的发展,也开始出现了一系列的图形界面。 下面介绍几种终端:

1、控制台终端: 进入CIL的一种方法是让Linux系统退出图形化桌面模式,进入文本模式。这样显示器上就只有一个简单的shell CLI,跟图形化桌面出现以前一样。这种模式称作Linux控制台。
2、图形化终端 除了虚拟化终端控制台,还可以使用Linux图形化桌面环境中的终端仿真包。仿真包会在一个桌面图形化窗口中模拟控制台终端的使用。
现在有两种终端仿真器:
1)GNOME桌面的GNOME Terminal
2)KDE桌面的Konsole Terminal
例1:通过tty命令看到当前所属的虚拟终端
[root@CHENDAJIE chendajie]# tty /dev/pts/1

不同的终端所对应的编号不一样。
[chendajie@CHENDAJIE ~]$ tty /dev/pts/0

例2: 不同虚拟终端之间通讯
通过终端1向终端0发送一条信息
[root@CHENDAJIE chendajie]# tty /dev/pts/1 [root@CHENDAJIE chendajie]# echo "do your best." > /dev/pts/0 [root@CHENDAJIE chendajie]#

终端0接收到这条消息
[chendajie@CHENDAJIE ~]$ tty /dev/pts/0 [chendajie@CHENDAJIE ~]$ do your best.

例2:对所有终端广播消息:十分钟后关机。此处用到shutdown命令。
由终端1发送消息:
[root@CHENDAJIE chendajie]# shutdown +10 Shutdown scheduled for 六 2019-09-28 10:25:54 CST, use 'shutdown -c' to cancel. [root@CHENDAJIE chendajie]# Broadcast message from root@CHENDAJIE.cn (Sat 2019-09-28 10:15:54 CST):The system is going down for power-off at Sat 2019-09-28 10:25:54 CST!

此时终端0也接收到这个关机的广播
[chendajie@CHENDAJIE ~]$ tty /dev/pts/0 [chendajie@CHENDAJIE ~]$ do your best.Broadcast message from root@CHENDAJIE.cn (Sat 2019-09-28 10:15:54 CST):The system is going down for power-off at Sat 2019-09-28 10:25:54 CST!

为方便后面的操作,此处我取消了关机:
[root@CHENDAJIE chendajie]# shutdown -c

2)认识bash Shell俗称壳,它提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行
Shell实际上是一个命令解释器,它通过解释用户输入的命令并把它传输给系统内核去执行。
Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。
1.3 Linux终端介绍 Shell提示符 Bash Shell基本语法
文章图片

内部命令: 在系统启动时就调入内存,所以执行效率高
外部命令:是系统软件的功能,用户需要时才从硬盘读入内存
使用type命令可以查看当前命令是内部命令还是外部命令
[root@CHENDAJIE chendajie]# type cat cat 是 /usr/bin/cat

【1.3 Linux终端介绍 Shell提示符 Bash Shell基本语法】此处显示的是cat是/usr/bin/下的cat,属于外部命令。
[root@CHENDAJIE chendajie]# type pwd pwd 是 shell 内嵌

此处显示的是pwd为内部命令
总结: 通过SHELL,我们可以对LINUX实现哪些操作或管理:
例如:
对文件的管理(创建、删除、复制、修改)
1、对用户的管理(添加、删除)
2、相关权限的管理(授权用户对相关文件的管理,比如增删改查)
3、对磁盘的管理(分区、raid、lvm)
4、对软件的管理
5、对网络的管理
shell提示符“#” “$”号的区别
[root@CHENDAJIE chendajie]##表示的是root用户登录

[root@CHENDAJIE chendajie]# su chendajie [chendajie@CHENDAJIE ~]$#-表示的是普通用户登录

提示符内容所代表的含义如下:
用户名–@主机名–当前所在目录–(#root用户/$普通用户)
查看所有shell类型:cat /etc/shells
[chendajie@CHENDAJIE ~]$ cat /etc/shells /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bin/bash /usr/sbin/nologin /bin/tcsh /bin/csh

查看具体用户使用的哪一个shell,查看/etc/passwd文件
[chendajie@CHENDAJIE ~]$ cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin ...

如代码行所示,root用户使用的是bash,nologin一边表示为系统用户。

    推荐阅读