拓扑园

  • O&M
    • Universal部署
    • PHP+VUE+Laravel相关
  • Oracle性能优化
  • Oracle项目案例
    • Oracle近期项目案例(目录)
    • Oracle实战问题解析(目录)
    • Oracle数据库名变更流程(2种方式)
    • Oracle数据库目录更换流程(使用Oracle的clone工具)
    • Oracle数据库迁移方案(目录)
    • 标准化文档系列
  • Oracle基础知识
    • LLL的Oracle培训(分类)
    • LLL的docker培训(分类)
    • 标准化文档系列--(分类)
    • Oracle核心经典分析(分类)
    • 图灵小队----(分类并包含以下文章)
    • --MySQL8.0/Oracle/Memcached/Redis等安装配置于RHEL/OL6/7/8.X系列-运行环境最优配置
    • --PG安装配置于RHEL/9X系列-运行环境最优配置
    • --自动维护任务详解-开启、关闭信息统计收集(统计信息)
    • --图灵小队—Oracle/PostgreSQL下创建一个用户测试表(自行定义数据行)
    • --图灵小队-Oracle存储过程导出表的明细_UTL_FILE(文章)
    • --图灵小队-Oracle数据库删除/卸载操作指南(文章)
    • --图灵小队-Oracle常用性能查询SQL语句(文章)
    • --图灵小队-Oracle数据库上线前检查(文章)
    • --图灵小队-Oracle常用SQL语句(文章)
    • --图灵小队—Linux/Oracle脚本/MySQL合集(持续更新)
    • --图灵小队-Oracle技巧记录(文章)
    • ADG
    • RAC
    • ASM
    • OGG
    • RMAN
    • EXPDP/IMPDP
    • 工厂数据导入导出系列
  • MySQL
    • MySQL数据库规范
    • MySQL项目案例
    • MySQL安装配置
    • MYSQL集群项目
    • MySQL常见处理
    • MySQL-Sysbench专题
    • MySQL-Percona Toolkit专题
  • Linux
    • Shell编程
    • kubernetes
    • docker
    • Linux
    • PHP
    • Nginx
    • haproxy
    • mail
    • 网站
    • 域名
    • 网址收藏
  • 数据中心
    • 新框架系统集合
    • 工作文档
    • EBS数据文件扩容
    • VMware虚拟化
    • EBS系列
    • 大数据
    • SVN
    • zabbix
    • SAP
    • 备份相关
    • FC交换机
    • SVN
  • K-Studing
    • D8-Python学习
    • Oracle/MySQl等面试题
    • LG-MySQL
    • LG-Docker/K8S
    • LG-PostgreSQL
    • LG-ORACLE_BBED
    • LG-ORACLE
    • LG-Elasticsearch(ES)+ELK
    • Oracle-19C-OCP
    • WERN_ORACLE培训
    • redis数据库
    • Nginx培训学习系列
  • 其他
    • 外研英语4年级下册-听力
    • 影视系列
    • 如何使用iTunes软件通过抓包下载旧版本的ios的app
天高任鸟飞
Oracle/MySQL数据库恢复/数据迁移/生产规范报告技术交流:TEL:18562510581(微信同号);加微信入群
  1. 首页
  2. Linux
  3. Shell编程
  4. 正文

Linux-Shell知识三两点

2024年4月23日 1215点热度 0人点赞 0条评论

目录

  • 1、shell中的字符串连接方式
  • 2、shell中的数值,变量赋值方式
  • 1、PS1/PS2/PS3/PS4环境变量的作用
    • (1)PS1变量
    • (2)PS2变量
    • (3)PS3变量
    • (4)PS4变量
  • 2、shell

1、shell中的字符串连接方式

test=test111
test=$test""33
echo test

2、shell中的数值,变量赋值方式

count=1
count=$[$count + 1]
echo $count

1、PS1/PS2/PS3/PS4环境变量的作用

在Linux系统中,PS1、PS2、PS3和PS4是特定的环境变量,它们各自在控制提示符和菜单提示信息方面发挥着不同的作用,这些PS变量在Linux系统中为用户提供了灵活的方式来定制和控制命令行的外观和行为,从而提高了用户与系统的交互体验。

注意:如果要长期永久性修改提示符,可以将修改提示符的命令添加到$Home/.bashrc或$Home/.bash_profile文件中

(1)PS1变量

主要用于设置Shell命令提示符。每当你在终端中输入命令时,所显示的字符串就是由PS1变量控制的。

可以根据自己的喜好和需要,自定义PS1变量的值,从而改变命令提示符的外观和格式。

其默认值为:[\u@\h \W]$,其表示:显示用户主机名称工作目录,可以在终端窗口输入;因为添加了颜色,所以显示的是设置颜色后的内容。

--PS1变量详解

--PS1变量可用参数

--彩色提示符

(2)PS2变量

这是第二次提示符,用于交互式的Shell中一条命令多行连接时的显示信息。当你的命令行输入长度超过一行时,系统会使用PS2提示符来继续输入。这使得用户可以轻松地在多行中输入长命令,提高命令行操作的效率。

一个非常长的命令可以通过在末尾加“ \ ”使其分行显示

PS2多行命令的默认提示符,默认值是>

(3)PS3变量

这个环境变量用于控制select命令创建的菜单提示信息。在Linux中,select命令允许用户从一系列选项中选择一个,而PS3变量则负责定义在选择过程中显示的提示符。通过定制PS3,可以让selec命令的菜单提示更符合需求。

--不使用PS3变量

[root@localhost ~]#vim ps3.sh
[root@localhost ~]#cat ps3.sh
#!/bin/bash

echo "以下是一些选项,请选择您想要的选项:"
select option in "选项1" "选项2" "退出"; do
case $option in
"选项1")
  echo "您选择了选项1"
  break
  ;;
"选项2")
  echo "您选择了选项2"
  break
  ;;
"退出")
  echo "退出脚本"
  exit 0
  ;;
*)
echo "无效的选择,请重新选择"
;;
esac
done

[root@localhost ~]#bash ps3.sh

以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 1
您选择了选项1
[root@localhost ~]#bash ps3.sh
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 2
您选择了选项2
[root@localhost ~]#bash ps3.sh
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
#? 3
退出脚本

--使用PS3变量

[root@localhost ~]#vim ps3.sh
[root@localhost ~]#cat ps3.sh
#!/bin/bash

# 设置PS3变量以自定义select命令的提示
PS3="请做出选择: "

echo "以下是一些选项,请选择您想要的选项:"
select option in "选项1" "选项2" "退出"; do
case $option in
"选项1")
  echo "您选择了选项1"
  break
  ;;
"选项2")
  echo "您选择了选项2"
  break
  ;;
"退出")
  echo "退出脚本"
  exit 0
  ;;
*)
echo "无效的选择,请重新选择"
  ;;
esac
done
[root@localhost ~]#bash ps3.sh
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 1
您选择了选项1
[root@localhost ~]#
[root@localhost ~]#bash ps3.sh
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 2
您选择了选项2
[root@localhost ~]#bash ps3.sh
以下是一些选项,请选择您想要的选项:
1) 选项1
2) 选项2
3) 退出
请做出选择: 3
退出脚本

(4)PS4变量

set -x用来修改跟踪输出的前缀,这个变量很少用

[root@localhost etc]#cd /etc/sysconfig/network-scripts/
+ cd /etc/sysconfig/network-scripts/
++ printf '\033]0;%s@%s:%s\007' root localhost /etc/sysconfig/network-scripts

2、shell

 

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2024年4月26日

admin

这个人很懒,什么都没留下

打赏 点赞
下一篇 >

COPYRIGHT © 2022 拓扑园. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鲁ICP备2021020523号

鲁ICP备2021020523号