文档章节

5-4 8 管道符 作业控制 shell变量 环境变量配置

阿想
 阿想
发布于 2017/08/31 11:05
字数 808
阅读 31
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

8.6 管道符和作业控制

管道符: |
用法:xxx | yyy 将xxx的输出结果给yyy处理

[root@axiang-02 ~]# cat 1.txt 
xxx     Math English C++  Experiment  
Monkey  100   90     95   Good  
Cat     80    100    60   Perfect  
Dog     90    60     70   Great  
Tiger   95    85     90   Fantastic

[root@axiang-02 ~]# cat 1.txt |wc -l ; cat 1.txt |grep 95
5
Monkey  100   90     95   Good  
Tiger   95    85     90   Fantastic
  • 管道符“|”:表示把输出的内容传递给后面的命令

作业控制

  • ctrl z 将当前任务暂停并放到后台
  • jobs 查看后台的任务
  • bg [id]后台执行任务
  • fg [id]前台执行任务
  • xxx&丢到后台

8.7/8.8 shell变量

常见环境变量

PATH,HOME,PWD,LOGNAME,SSH_TTY

[root@axiang-02 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin
[root@axiang-02 ~]# cd /tmp
[root@axiang-02 tmp]# echo $HOME
/root
[root@axiang-02 tmp]# pwd
/tmp
[root@axiang-02 tmp]# echo $PWD
/tmp
[root@axiang-02 tmp]# which pwd
/usr/bin/pwd
[root@axiang-02 tmp]# logname
root
[root@axiang-02 tmp]# which logname
/usr/bin/logname

[root@lixiang01 ~]# echo $SSH_TTY 查看自己是那个终端
/dev/pts/3
[root@lixiang01 ~]# w 查看有几个终端
 10:17:53 up  1:06,  3 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.83.1     09:59   16:25   0.21s  0.21s -bash
root     pts/1    192.168.83.1     10:04   12:59   0.11s  0.11s -bash
root     pts/3    192.168.83.1     09:55    1.00s  0.71s  0.07s w

env命令

查看环境变量

[root@axiang-02 tmp]# env | tail
LANG=zh_CN.UTF-8
HISTCONTROL=ignoredups
SHLVL=1
HOME=/root
LOGNAME=root
SSH_CONNECTION=10.1.1.1 55509 10.1.1.8 22
LESSOPEN=||/usr/bin/lesspipe.sh %s
XDG_RUNTIME_DIR=/run/user/0
_=/usr/bin/env
OLDPWD=/root

set命令

查看更多变量,包括自定义变量

[root@axiang-02 ~]# aaa=axiang
[root@axiang-02 ~]# set |grep aaa
aaa=axiang

自定义变量

[root@axiang-02 tmp]# a=xxx
[root@axiang-02 tmp]# c=a;echo $c     没$不传递值
a
[root@axiang-02 tmp]# c=$a;echo $c    有$传递值
xxx
[root@axiang-02 tmp]# c='$a';echo $c  单引号脱义$
$a
[root@axiang-02 tmp]# c="$a";echo $c  双引号不脱义$
xxx


  • 变量名规则:字母、数字下划线,首位不能为数字

export命令

全局声明变量,可以备继承

[root@lixiang01 ~]# export a=axianglinux
[root@lixiang01 ~]# bash
[root@lixiang01 ~]# bash
[root@lixiang01 ~]# pstree   用pstree查看,向下生效。是脚本间变量生效
systemd─┬─NetworkManager───2*[{NetworkManager}]
        ├─agetty
        ├─anacron
        ├─auditd───{auditd}
        ├─chronyd
        ├─crond
        ├─dbus-daemon───{dbus-daemon}
        ├─firewalld───{firewalld}
        ├─irqbalance
        ├─master─┬─pickup
        │        └─qmgr
        ├─polkitd───5*[{polkitd}]
        ├─rsyslogd───2*[{rsyslogd}]
        ├─sshd─┬─sshd─┬─bash───bash───bash───pstree
        │      │      └─bash
        │      └─sshd───bash
        ├─systemd-journal
        ├─systemd-logind
        ├─systemd-udevd
        ├─tuned───4*[{tuned}]
        └─vmtoolsd───{vmtoolsd}
[root@lixiang01 ~]# echo $a
axianglinux
[root@lixiang01 ~]# unset a  取消定义
[root@lixiang01 ~]# echo $a


  • 变量只能继承,不能上传或旁传

8.9 环境变量配置文件

系统级

  1. /etc/profile 用户环境变量,交互,登录才执行,会调用bashrc。其中主要包含PATH USER LOGNAME MAIL INPUTRC HOSTNAME HISTSIZE umask
  2. /etc/bashrc 用户不用登陆,执行shell就生效,主要有umask PS1

用户级

用户家目录下有自己的环境配置文件,是隐藏的

  1. ~/.bashrc,PS1='[\033[01;32m][\u@\h \w][\033[0m]$ ' 这里定义比较合适
  2. ~/.bash_profile //自定义别名可以写这里
  3. ~/.bash_history //用于记录命令历史
  4. ~/.bash_logout //定义退出的命令,可以将一些清理工作放到这个文件钟
  • profile主要为登陆用户初始化环境,会调用同级的bashrc
  • bashrc定义的环境,不登录也生效,这里定义比较保险

扩展

bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719

阿想
粉丝 1
博文 72
码字总数 69742
作品 0
私信 提问
加载中
请先登录后再评论。
记一次失败的Perl + Nginx + FastCGI 配置过程

这两天心血来潮,不知道为什么和 Perl + Nginx + FastCGI 配置 耗上了。但是失败了,记录如下: 1)安装Nginx 1.4.3 ,我的是WINDOWS 7 系统,修改配置文件如下: location ~ .(pl|cgi|perl)?...

通吃岛-低手哥
2013/10/27
1.6K
7
访问安全控制解决方案

本文是《轻量级 Java Web 框架架构设计》的系列博文。 今天想和大家简单的分享一下,在 Smart 中是如何做到访问安全控制的。也就是说,当没有登录或 Session 过期时所做的操作,会自动退回到...

黄勇
2013/11/03
3.4K
6
Flappy Bird(安卓版)逆向分析(一)

更改每过一关的增长分数 反编译的步骤就不介绍了,我们直接来看反编译得到的文件夹 方法1:在smali目录下,我们看到org/andengine/,可以知晓游戏是由andengine引擎开发的。打开/res/raw/at...

enimey
2014/03/04
6K
18
浅入浅出Android(003):使用TextView类构造文本控件

基础: TextView是无法供编辑的。 当我们新建一个项目MyTextView时候,默认的布局(/res/layout/activity_main.xml)中已经有了一个TextView: <TextView 运行效果如下: 修改其文本内容...

樂天
2014/03/22
636
1
CDH5: 使用parcels配置lzo

一、Parcel 部署步骤 1 下载: 首先需要下载 Parcel。下载完成后,Parcel 将驻留在 Cloudera Manager 主机的本地目录中。 2 分配: Parcel 下载后,将分配到群集中的所有主机上并解压缩。 3 激...

cloud-coder
2014/07/01
6.8K
1

没有更多内容

加载失败,请刷新页面

加载更多

AI复原上海民国名媛影像!1929年的小姐姐,时装精致不输现在

萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 中国最早的时装秀,是什么样的? 自修复100年前的北京影像后,微博博主@大谷Spitzer这次又用AI工具,复原了民国时期的这场「花生骚」(Fashi...

视学算法
今天
22
0
【脑电硬件】教育相关的商业可穿戴脑电设备概览

脑电是一门古老的脑成像技术,但迄今为止也依然是最具生命力的主流脑成像技术之一。这主要得益于相比其他脑成像技术,脑电设备具有便携性好,使用成本低,无创,高时间分辨率,和丰富的频率信...

好未来技术
20分钟前
27
0
米菲云仓系统开发(米菲系统)

本章阐述持续集成系统的发展历程、持续集成系统的原理,以及持续集成系统的实现过程,目的是让大家全面了解持续集成系统,更加深入的学习持续集成系统的原理,为后续章节的学习做好准备。我会...

薇fzb246724
27分钟前
55
0
传统租车服务企业,拥抱Docker,K8s,微服务之路!

走进台湾双北市的民营停车场,现在有机会看到贴有Smart2go字样的车辆停在停车场,供租用,而无论预约、取车、还车到付款,使用一站式App都能完成。这是格上汽车租赁(简称格上)从今年4月开始...

Kubernetes
今天
23
0
2020年7月Github上最热门的开源项目

7月份GitHub上最热门的开源项目排行已经出炉啦,一起来看看上榜详情吧 1 tsunami-security-scanner https://github.com/google/tsunami-security-scannerStar 5830 tsunami-security-scanne...

不卖萌的邓肯
今天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部