码迷,mamicode.com
首页 > 系统相关 > 详细

管道符和作业控制 、 shell变量 、环境变量配置文件

时间:2018-04-24 11:12:15      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:shell变量 、环境变量配置

一、管道符和作业控制
技术分享图片
管道符 |:表示把一个文件的输出的内容传递给后面的命令
grep :用来过滤指定关键词的命令
运用实例:
[root@linux-01 ~]# ls |wc -l //列出当前目录下有多少行
8
[root@linux-01 ~]# find ./ -type f //列出当前目录下的所有文件
./.bash_logout
./.bash_profile
./.bashrc
./.cshrc
./.tcshrc
./.bash_history
./.ssh/known_hosts
./.ssh/authorized_keys
./anaconda-ks.cfg.1
./2.txt
./11.txt
./.lesshst
./1.txt
./1.txt.zip
./.viminfo
./3.txt
./4.txt
[root@linux-01 ~]# find ./ -type f |wc -l //可以使用管道符来查看文件数量
17

Ctrl+z快捷键:把当前任务临时暂停下
fg n命令(foreground 前台的缩写):把刚暂停的当前任务重新启动,调用回来,n代表ID号,如调用暂停ID为1的进程,可以使用 #fg 1来进行调用
jobs :把停止的任务列出来
bg n命令(background后台的缩写):把任务丢到后台并运行,n代表ID号,如#bg 1,把进程1丢到后台并运行
#sleep 100 & 命令:指把sleep 100这一条命令丢到后台并运行,命令+&的格式
#ps aux |grep sleep //查看sleep进程

二、Shell变量
技术分享图片
#env //查看系统内置环境变量
#set //不仅查看系统内置变量,还可以查看用户自定义变量
[root@linux-01 ~]# a=111 //自定义环境变量,例如a=111
[root@linux-01 ~]# echo $a
111
#set |grep 111 //使用set命令查看自定义变量111
变量名规则:字母、数字、下划线,首位不能是数字

变量值有特殊符号是需要用单引号括起来,例如:#a=‘a b c
[root@linux-01 ~]# a=‘a b c‘
[root@linux-01 ~]# echo $a
a b c

变量的累加:例如变量a b累加
[root@linux-01 ~]# a=1
[root@linux-01 ~]# b=2
[root@linux-01 ~]# echo $a$b
12

[root@linux-01 ~]# c="a$bc" //被识别为$bc
[root@linux-01 ~]# echo $c
a
[root@linux-01 ~]# c="a$b"c //需要把$b和c分开写,变量复杂的时候用单引号或双引号
[root@linux-01 ~]# echo $c
a2c

[root@linux-01 ~]# c=a"$b"c //赋值中有复杂变量使用双引号引起来
[root@linux-01 ~]# echo $c
a2c

w 命令:查看当前登录系统的用户
[root@linux-01 ~]# w //查看当前登录系统的用户
22:20:03 up 24 min, 2 users, load average: 0.00, 0.01, 0.06
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.238.1 21:56 3.00s 0.22s 0.06s w
root pts/1 192.168.238.1 22:19 6.00s 0.06s 0.06s -bash
[root@linux-01 ~]# echo $SSH_TTY //可以查看哪个是自己登录的用户
/dev/pts/0

定义全局变量: 格式如:export b=2
[root@linux-01 ~]# export hll=linux 定义全局变量hll=linux
[root@linux-01 ~]# echo $hll
linux
[root@linux-01 ~]# bash //新打开一个子shell,直接运行#bash,echo $hll还是可以输出linux,这就是全局变量
[root@linux-01 ~]# echo $hll
linux

系统中没有pstree命令,可以使用# yum install psmisc #using psmisc package for pstree安装
技术分享图片
pstree命令可以直观查看目录结构,可以看到pstree在新的bash中运行,echo $hll,同样生效,这就是全局变量,全局变量是向下生效的,与平行的bash不生效的

unset 自定义变量名 //取消自定义变量
#bash //进入一个新的子shell

三、环境变量配置文件
技术分享图片
环境变量配置文件/etc/profile 和 /etc/bashrc属于系统层次的,一般不要进行修改;
可以修改用户家目录下的~/.bashrc ~/.bash_profile 这些属于用户层次的,可以对单个用户进行设置

[root@linux-01 ~]# vim .bash_profile //编辑家目录下的.bash_profile
[root@linux-01 ~]# source .bash_profile 或者#. .bash_profile //编辑完之后需要让配置文件立马生效,可以使用source 或者 . ,这里的.和source效果一样,都是加载配置文件配置

~/.bash_logout文件中可以定义让某个用户退出登录时删除它的命令历史,可以在这个配置文件中放一条删除历史命令的命令

关于PS1
PS1可以在
[root@linux-01 ~] //从左到右,依次是当前用户,@,主机名,当前所在目录
[root@linux-01 ~]# cd /etc/sysconfig/network-scripts/
[root@linux-01 network-scripts]# echo $PS1
[\u@\h \W]\$ // \u就是user,\h就是hostname,\W就是当前目录
#PS1=‘[\u@\h \w]\$‘ //如果将W改为小写的w,那么它就会显示绝对路径
实例:
[root@linux-01 network-scripts]# PS1=‘[\u@\h \w]\$‘ //将W改为小写的w
[root@linux-01 /etc/sysconfig/network-scripts]# //就会显示成绝对路径的

[root@linux-01 /etc/sysconfig/network-scripts]#PS1=‘<\u@\h \w> \$‘ //可以修改[ ]为< >
<root@linux-01 /etc/sysconfig/network-scripts> # //修改之后原来[ ]就变为了<>
$符号,root用户是#,其他普通用户是$
[root@linux-01 network-scripts]#PS1=‘[\033[01;32m]\u@\h[\033[00m]:[\033[01; 36m]\w[033[00m]\$] ‘ //修改颜色
技术分享图片
PS2:进入到MySQL中需要进入mysql的小终端,就进入到PS2
[root@linux-01 network-scripts]#echo $PS2

管道符和作业控制 、 shell变量 、环境变量配置文件

标签:shell变量 、环境变量配置

原文地址:http://blog.51cto.com/13669226/2107063

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!