Python 开发之 Linux (二)- Bash(Part A)

语言: CN / TW / HK

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第2天,点击查看活动详情

一、终端

终端(Terminal),是与计算机系统相连的一种输入输出设备,通常离计算机较远。根据功能不同,可分若干类。具有某些处理功能的终端称为灵巧终端或智能终端,这类终端有它自己的微处理器和控制电路;没有此功能的叫做哑终端,它没有微处理器。支持与计算机会话或处理的终端叫交互终端或联机终端。

终端可以理解为一个软件,通过终端可以与远程服务器进行交互或者执行一系列命令,在使用云服务器时或者在云服务器上部署生产级应用时,都是通过终端进行操作

终端有以下分类: - 设备终端:键盘、鼠标以及显示器等 - 物理终端:控制台console - 虚拟终端:tty - 图形终端:CentOS7的图形终端 - 串行终端:ttyS - 伪终端:pty,SSH远程连接

二、Bash

Shell与Shell命令

交互式接口,既终端启动后在终端设备上附加的一个交互式应用程序,也就是用户同远程服务器进行交互的媒介,交互式接口有两种,分别是: - GUI:Graphic User Interface,用户图形界面接口 - CLI:Command Line Interface,命令行接口,如Shell

Shell是一种高级程序设计语言,也是Linux系统的用户界面,Shell可以接收用户的命令并将命令送入Linux内核中去执行,Shell也被称为是Linux的命令解释器

image.png

Shell程序有多种,如Linux中最常用的bash、MacOS系统中比较好用的zsh以及其他如csh、tcsh和ksh等

bash shell是Linux标准的shell,也是Cent OS 默认的shell

打开Terminal,通过ssh命令连接云服务器 bash ssh [email protected]

终端相关命令 ```bash

查看终端号

tty

查看所有登录系统的终端

who

查看当前登录系统的终端, 也可以是who + 任意字符

who am i who a b ```

image.png

Shell相关命令 ```bash

查看当前shell类型

echo $SHELL

查看支持的shell类型

cat /etc/shells ```

image.png

命令提示符

```bash

默认的命令提示符格式, # 表示管理员、$表示普通用户

[[email protected] ~]# Linux的命令提示符存储在PS1变量中bash

输出命令提示符的格式

[[email protected] ~]# echo $PS1 [\[email protected]\h \W]\$ ```

修改命令提示符的格式,只需要修改PS1变量的值即可,其中 - \u:当前用户 - \h:当前主机名简称 - \H:主机名 - \w:当前工作目录 - \W:当前工作目录的基名 - \t:24小时时间格式 - \T:12小时时间格式 - !:命令历史数 - #:开机后命令历史数 执行以下命令 bash PS1="\[\e[1;41;33m\][\[email protected]\h \W]\\$\[\e[0m\]"

image.png 命令提示符增加了背景色并且字体变为黄色,可以应用在区分生产环境和测试环境

在PS1设置的命令提示符的格式中,\e后的[]中的1高亮显示;41表示背景颜色,41-47都是背景颜色;33m表示黄色字体

但是这种设置是临时性的,一旦重启之后,设置就失效了,如果要永久保存需要保存到文件中则需要修改.bash_profile

```bash

使用vim打开并编辑.bash_profile文件

vim .bash_profile

按下i键将PS1变量值输入到.bash_profile中即可,按下ESC,并在冒号后增加wq,表示保存并退出

```

cat命令可以查看文件

image.png