管道符作业控制
管道符 | : 把前面命令的的输出交给后面命令的输入
暂停任务: ctrl+ z (临时暂停, 仍到后台 , 调回前台 fg)
jobs 可以把暂停的任务列出来
fg +id 号就能把相应暂停任务调回前台 fg 2
bg 把任务放到后台
sleep 1000 暂停 1000 秒
sleep 100 & 加上 & 可以把运行任务如直接放到后台执行
shell 变量
1. 命令 env 列出系统预设的全部系统变量(变量都是大写字母)
2. 命令 set 可以查看到系统预设的变量, 也可以看到用户自定义的变量
3. 自定义变量:
变量名的规则: 字母数字及下划线, 首位不能为数字
4. 变量值有特殊符号时需要用单引号括起来
(
采用双引号会出错)
使用双引号扩起一个变量时, 它会进行解释变量的值
5. 全局变量
怎么把一个自定义的变量变为全局变量?
(1)export 变量名 = 变量值
export cansheng=handsome
这样定义的变量就是全局环境变量
(这里的全局变量是向下关系的, 就是在当前终端 (bash) 生成一个全局变量, 当我们在打开一个子 shell(执行命令 bash)时, 输出这个全局变量是可以的但是在子 shell 下生成一个全局变量, 在父级打开该全局变量则无效关系不可逆转)
环境变量配置文件(工作中不常用)
1./etc/profile 和 /etc/bashrc 尽可能不去修改
要修改的话就修改用户家目录下的 profile 和 bashrc
用户家目录下的 profile 和 bashrc 是 .bash_profile 或者是 .bashrc
vim .bash_profile (这里是当前用户下的 .bash_profile)
(/etc 是系统下的 profile 是针对所有用户的)
只要执行一个 shell 脚本就会自动加载 bashrc
2.PS1 在 / etc/bashrc 下定义
PS1 和我们命令行中前面的那部分有关
PS1='[\u@\h \W]\$' 可以改: 如 PS1='\u@\h \W>\$'
拓展
1.<
.bash_profile 与 .bashrc 的区别
.bash_profile is executed for login shells, while .bashrc is executed for interactive non-login shells.
login shell 与 non-login shell 的区别
1 当你直接在机器 login 界面登陆使用 ssh 登陆或者 su 切换用户登陆时,.bash_profile 会被调用来初始化 shell 环境
Note:.bash_profile 文件默认调用. bashrc 文件
.bash_profile 中有如下内容
- if [ -f ~/.bashrc ]; then
- . ~/.bashrc
- fi
2 当你不登陆系统而使用 ssh 直接在远端执行命令,.bashrc 会被调用
3 当你已经登陆系统后, 每打开一个新的 Terminal 时,.bashrc 都会被再次调用
若要配置环境变量之类, 最保险是写在 .bashrc 文件中因为不管是登陆还是不登陆, 该文件总会被调用!
>
2. 简易审计系统: http://www.68idc.cn/help/server/linux/2014042190951.html
<
有时候我们需要对线上用户操作记录进行历史记录待出现问题追究责任人,, 但 Linux 系统自带的 history 命令用户有自行删除权限, 那怎么设置可以让用户的操作记录实时记录, 并保证普通用户无权删除呢? 本文教你一招
- 1.mkdir -p /usr/local/domob/records/
- chmod 777 /usr/local/domob/records/
- chmod +t /usr/local/domob/records/
2.vi /etc/profile 在最后添加下面的代码
- if [ ! -d /usr/local/domob/records/${LOGNAME} ]
- then
- mkdir -p /usr/local/domob/records/${LOGNAME}
- chmod 300 /usr/local/domob/records/${LOGNAME}
- fi
- export HISTORY_FILE="/usr/local/domob/records/${LOGNAME}/bash_history"
- export PROMPT_COMMAND='{ date"+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'
- >
来源: http://www.bubuko.com/infodetail-2520685.html