Shell---常用命令、常用环境变量、PS1、语系变量、位置变量、预定义变量、数值运算

简介: 版权声明:本文为博主原创文章,转载请注明出处。 https://blog.
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/78357935

常用命令

set 查询所有正在运行的变量
- -u 当查看不存在的变量时会提示报错

unset 删除变量(不是删除值,不需要加$)

unset name

env 只查看环境变量
export 声明环境变量

export 变量名=变量值
export 变量名

常用环境变量

  • HOSTNAME: 主机名
  • SHELL:当前shell
  • TERM: 终端环境
  • HISTSIZE: 历史命令条数
  • SSH_CLIENT:记录客户端ip
  • SSH_TTY:ssh连接的终端
  • USER:当前登录的用户

PS1 变量

  • \d:日期”星期 月 日”
  • \H:显示完整的主机名
  • \t:显示24小时制时间 “HH:MM:SS”
  • \A:显示24小时制时间 “HH:MM”
  • \u:显示当前用户名
  • \w:显示当前所在目录的完整名称
  • \W:显示当前所在目录的最后一个目录
  • $:提示符

语系变量

  • locale 查询正在使用系统语系
  • locale -a 查看支持的所有语系
  • /etc/sysconfig/i18n 默认语系环境(下次开机后的环境)

  • LANG:定义系统主语系的变量

  • LC_ALL:定义整个语系的变量

位置变量

位置参数变量 作用
n|n 0代表命令本身, 1  9 代表第一到第九个参数。十以上的参数需要用大括号包含,如${10}
| 0),把所有参数当成一个整体
@| 0),把所有参数区分对待
$# 代表命令行中所有参数的个数

预定义变量

预定义变量 作用
$? 最后一次执行的命令的返回状态。如果这个 变量的值是0,证明上一个命令正确执行;如果这个变量的值为非零(由命令自己决定),则证明上一个命令执行不正确
$$ 当前进程的进程号(PID)
$! 后台运行的最后一个进程的进程号(PID)

read 用户输入

read [选项] [变量名]
- -p “提示信息”:在等待read输入时,输出提示信息
- -t 秒数 :等待用户输入,制定等待时间
- -n 字符数:直接受指定的字符数,就会执行
- -s :隐藏输入的数据


运算符

declare 声明变量类型

declare [+/-] [选项] 变量名

  • -:给变量设定类型属性
  • +:取消变量的类型属性
  • -a:数组型
  • -i:整数型
  • -x:环境变量
  • -r:只读变量
  • -p:显示指定变量的被声明类型

使用下标访问数组
- array[0] : 访问第一个
- array : 访问第一个
- array[*] :访问所有的元素

# 整形
 a=1
 b=2
 declare -i c=$a+$b
 echo $c
---
3
array[0]=a
array[1]=b

declare -a array[3]=${array[0]}${array[1]}

echo "array[0]":${array[0]}
echo "array":${array}
echo "array[*]":${array[*]}
echo "array[2]":${array[2]}

declare -p 查看变量的所有类型。如果不加变量名就表示显示所有变量的所有类型

[root@localhost test]# declare -p c
declare -i c="3"

数值运算

expr 或 let 数值运算工具

  • result= (expr num1+num2)** 或 **result=`exprnum1+$num2`
  • let “result= num1+ num2”
[root@localhost test]# a=1
[root@localhost test]# b=2
[root@localhost test]# c=$(expr $a+$b)
[root@localhost test]# echo $c
3
[root@localhost test]# let "d=$a+$b"

(()) [运算式]

[root@localhost test]# c=$(($a+$b))
[root@localhost test]# d=$[$a+$b]

变量测试

较复杂。。。


相关文章
|
4天前
|
人工智能 Shell iOS开发
AI Shell:在命令行里“对话” AI ,微软推出将 AI 助手引入命令行的 CLI 工具,打造对话式交互命令行
AI Shell 是一款强大的 CLI 工具,将人工智能直接集成到命令行中,帮助用户提高生产力。AI Shell 支持多种 AI 模型和助手,通过多代理框架提供丰富的功能和灵活的使用模式。
29 7
|
9天前
|
Java Shell Windows
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
19 1
|
1月前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
65 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
1月前
|
Shell 知识图谱
Shell printf 命令
10月更文挑战第3天
20 1
|
6月前
|
Linux
百度搜索:蓝易云【Linux系统ps命令:查看正在运行的进程】
通过这些简洁的ps命令用法,你可以方便地查看Linux系统中正在运行的进程信息。
88 1
|
6月前
|
安全 Linux 应用服务中间件
linux(三十一)系统信息命令ps查看系统进程
linux(三十一)系统信息命令ps查看系统进程
221 1
|
6月前
|
存储 监控 Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
117 0
|
5月前
|
监控 Linux 应用服务中间件
探索Linux中的`ps`命令:进程监控与分析的利器
探索Linux中的`ps`命令:进程监控与分析的利器
127 13
|
2月前
|
调度
crash命令 —— ps
crash命令 —— ps
|
3月前
|
存储 Docker 容器
在Docker中,容器退出后,通过docker ps命令查看不到,数据会丢失么?
在Docker中,容器退出后,通过docker ps命令查看不到,数据会丢失么?