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

持续创作,加速成长!这是我参与「掘金日新计划 · 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命令连接云服务器

ssh root@ip
复制代码

终端相关命令

# 查看终端号
tty
# 查看所有登录系统的终端
who
# 查看当前登录系统的终端, 也可以是who + 任意字符
who am i
who a b
复制代码

image.png

Shell相关命令

# 查看当前shell类型
echo $SHELL

# 查看支持的shell类型
cat /etc/shells
复制代码

image.png

命令提示符

# 默认的命令提示符格式, # 表示管理员、$表示普通用户
[root@izuf625ohgv1507j8fsuwaz ~]#
复制代码

Linux的命令提示符存储在PS1变量中

# 输出命令提示符的格式
[root@izuf625ohgv1507j8fsuwaz ~]# echo $PS1
[\u@\h \W]\$
复制代码

修改命令提示符的格式,只需要修改PS1变量的值即可,其中

  • \u:当前用户
  • \h:当前主机名简称
  • \H:主机名
  • \w:当前工作目录
  • \W:当前工作目录的基名
  • \t:24小时时间格式
  • \T:12小时时间格式
  • !:命令历史数
  • #:开机后命令历史数

执行以下命令

PS1="\[\e[1;41;33m\][\u@\h \W]\\$\[\e[0m\]"
复制代码

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

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

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

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

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

cat命令可以查看文件

image.png

猜你喜欢

转载自juejin.im/post/7104296789461139486
今日推荐