文档章节

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

阿想
 阿想
发布于 2017/08/31 11:05
字数 808
阅读 15
收藏 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

© 著作权归作者所有

共有 人打赏支持
阿想
粉丝 0
博文 72
码字总数 69742
作品 0
linux的shell基础介绍(2)

8.6 管道符和作业控制: 1、cat 1.txt |wc -l ; cat 1.txt |grep 'aaa' 2、ctrl z 暂停一个任务 3、jobs查看后台的任务 4、bg[id]把任务调到后台 5、fg[id]把任务调到前台 6、命令后面加&直接...

Gary_加油涛
2017/11/16
0
0
管道符作业控制、环境变量shell及环境变量配置文件

10月12日任务 8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件 8.6 管道符、作业控制 cat 1.txt |wc -l ; cat 1.txt |grep 'aaa' ctrl +z 暂停一个任务 -后台暂停 jobs 查看后...

zgxlinux
10/12
0
0
21.管道符,shell变量,环境变量配置文件

五周第四次课(1月11日) 8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件 扩展 bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719 简易审计系统: http://w...

Xavi2017
01/14
0
0
第5周第4课:管道符、shell变量、变量配置文件

8.6 管道符和作业控制 管道符“|” 管道符的作用在于将符号前面的结果丢给符号后面的命令。管道符后面并不是所有的命令都可以,一般针对文档操作的命令比较常用,例如cat、less、head、tai...

grassroots
01/11
0
0
shell基础--2

管道符和作业控制 管道符 把前一个命令的结果传递给后一个命令 ls wc -l (wc -l 统计个数) 作业控制 Ctrl 加 z 暂停一个任务 bg 把命令丢到后天并运行 fg把后台任务调到前台运行 jobs 查看后...

在也不会是我
01/11
2
0

没有更多内容

加载失败,请刷新页面

加载更多

IOasd

能够使用FileUtils常用方法操作文件 字符流体系介绍 : 在 IO 开发中, 我们传输最频繁的数据为字符, 而以字节的方式来传输字符数据会使程序员丧失对数据内容的判断.因为程序员只认识字符, 不认...

码农屌丝
20分钟前
0
0
创建第一个react项目

sudo npm i -g create-react-app@1.5.2 create-react-app react-app cd react-apprm -rf package-lock.jsonrm -rf node_modules #主要是为了避免报错npm installnpm start......

lilugirl
今天
3
0
在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN)

Generative Adversarial Network 是深度学习中非常有趣的一种方法。GAN最早源自Ian Goodfellow的这篇论文。LeCun对GAN给出了极高的评价: “There are many interesting recent development...

naughty
今天
0
0
搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
今天
9
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部