BASH

1、bash配置文件:

全局:
    /etc/profile, /etc/profile.d/*, /etc/bashrc
个人:
    ~/.bash_profile, ~/.bashrc, ~/.bash_history

bash的运行方式:
  交互式(terminal中):/etc/profile --> /etc/profile.d/* --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc
  非交互式:如某时刻未登录也要自动执行的脚本
      ~/.bashrc --> /etc/bashrc --> /etc/profile.d/*,至此结束

2、bash输入输出、管道

程序的默认输入叫标准输入-->stdin,键盘, 0(文件描述符)
程序的默认输出设备叫标准输出-->stdout,monitor, 1
程序的默认错误信息输出设备叫标准错误输出-->stderr,monitor, 2

2.1重定向

2.1.1输出

格式:COMMAND > FILE, 覆盖输出,选错目标文件就惨了,因此不安全

为了安全先使用:set -C(set +C则相反)
使用 >| 则强行覆盖
使用** COMMAND >> FILE,追加输出**
/dev/null是什么?--->数据黑洞(软件模拟的设备,吞数据)
/dev/zero-->泡泡机(吐0的,吐数据)

/dev/urandom-->随机数生成器


2.1.2输入

格式:COMMAND < FILE, eg: tr 'a-z' 'A-Z' < /etc/passwd

COMMAND << "EOF": Here document,脚本中常用,生产文档的。,比如以下脚本,用于给予用户选项
#!/bin/bash cat << EOF what do you want to eat? 1, shaoji 2, longxia 3, dazhaxia 4, gun EOF

执行代码 bash second.sh,得到如下结果:

web@web-design:~/Shell_Programming$ bash second.sh what do you want to eat? 1, shaoji 2, longxia 3, dazhaxia 4, gun

你可能感兴趣的:(BASH)