day 24 shell 变量

8.6 管道符和作业控制

1.管道符
  • | “cmd1 | cmd2” --#将前一个命令的输出结果内容传递给后一个命令
2.作业控制
  • Ctrl +z                      --#暂停一个任务,并将该任务丢到后台(该任务依然是停止状态)
  • bg                             --#将一个任务(命令)放到后台并运行,比如vmstat -2,放到后台之后,依然会运行,并在屏幕打印; 对于一个已经用Ctrl+z暂停了的任务直接使用bg,会使之在后台继续运行
  • cmd &--#将一个任务(命令)放到后台并运行,对于新开的另一个终端无法用jobs查看到,但可查看到相关的进程(ps aux命令)
  • fg                             --#将后台的命令调到前台并运行,若有多个后台的任务,须在fg后面加上任务的id(通过jobs命令得到),如果不加,默认会调用最近的一个任务. #fg [id]
  • jobs                         --#列出已停止或后台在执行的任务,包括每个任务的id
注:
对于一个已经用Ctrl+z暂停了的任务(例如vmstat 1,后台不执行,屏幕也无打印):
  • 直接使用命令bg,会使之在后台继续执行(从暂停到执行),屏幕会打印
  • 直接使用命令fg,调到前台并执行
说明bg和fg都会让一个暂停的命令执行起来
任务在后台执行的时候,尽管某些命令(例如vmstat 1)屏幕会一直有打印,但依然可以执行其他命令(命令在后台运行的标志),而在前台执行的任务,就不能运行其他命令了,除非暂停后取消
8.7 shell变量

  • #env                                   --#列出系统环境变量
  • #set                                    --#列出系统全部变量,包括用户自定义变量
  • 变量命名规则:字母、数字和下划线的组合,首位不能为数字
  • 变量值有特殊符号时需要用单引号括起来
  • #export var=value --#使变量在当前终端(sshd)下成为一个全局变量,在子bash下echo该变量依然可得到变量值,如果在另一个终端下echo则得不到变量值,且全局变量向下(子层bash)生效,如果在子bash里export是一个变量成为全局变量,则该变量在父bash里不生效
  • #unset var --#取消变量赋值
8.8 环境变量配置文件

  • /etc/profile                      --#用户环境变量,交互,登陆后才执行
  • /etc/bashrc                     --#用户不用登录,执行shell就生效
  • ~/.bash_profile
  • ~/.bashrc
  • ~/.bash_history             --#记录历史命令的文件
  • ~/.bash_logout              --#定义用户退出后需要做的操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值