bash和变量
Bash 快捷键
ctrl +c 中断
+d 退出
+l 翻页
+r 历史
+u 删除光标前的内容
+k 删除光标后的内容
+a 光标移到最前面
+e 光标移到最后面
通配符
- 后面一切字符
? 后面一定有一个字符
[] 代表一个字符
^非
ls ; date
name=sharkw
echo name" 变量还会有
echo '(date +%F)
0 1 2
2>error.txt 1>&2
cat > catfile <<eof 多行输入
cat < inputinfo >>inputinfo
echo "hello" | cut -c 1-
stty -echo 隐藏命令 stty显示
alias unalias
jobs bg fg
history 查看历史命令
history -c 清除
!455 执行455条命令
!! 上一条命令
可以透过~/.bash_logout来进行history的记录,并加上date来增加时间参数
/etc/profile
/etc/issue 编辑一些简单的硬件及软件版本信息
/etc/motd 编辑这个文件,会在用户登录之后看到一些欢迎信息
ulimuit -n 查看进程最大数量多少
正则表达式 [: :]
digit 数字
lower 小写字元
upper 大写字元
alpha 任何英文大小写字元
alnum 任何英文和数字字元
'the'
'^the'
'o{2,5}'
变量
重复定义被覆盖
可用转意符 \ 将特殊符号(如 [Enter], (命 令)(推荐这种)。那个反引号是键盘上方癿数字键1` 左边那个按键。
添加变量
PATH={PATH}
export var 改成全局变量
unset var 取消变量
env // env 是 environment (环境) 的简写,默认的环境变量
set // 列出系统中所有的变量,包括自定义的变量
export 变量名 // 使自定义的变量 成为 环境变量,环境变量可以被继承
PS1:(提示字符的设置)
数组\d :可显示出“星期 月 日”的日期格式,如:"Mon Feb 2"
\H :完整的主机名称。
\h :仅取主机名称在第一个小数点之前的名字
\t :显示时间,为 24 小时格式的“HH:MM:SS”
\T :显示时间,为 12 小时格式的“HH:MM:SS”
\A :显示时间,为 24 小时格式的“HH:MM”
@ :显示时间,为 12 小时格式的“am/pm”样式
\u :目前使用者的帐号名称,如“dmtsai”;
\v :BASH 的版本信息
\w :完整的工作目录名称,由根目录写起的目录名称。
\W :仅会列出最后一个目录名。
# :下达的第几个指令。
:提示字符,如果是 root 时,提示字符为 # ,否则就是 $
图片.png
不输入的默认设置
read -p "输入日期>:" input_date
input_date= ${input_date:-$(date +%F)}
echo "当前日期是:${input_date}"
// 计算 3 小时之后是几点几分
date +%T -d '3 hours'
// 任意日期的前 N 天,后 N 天的具体日期
date +%F -d "20190910 1 day"
date +%F -d "20190910 -1 day"
// 计算两个日期相差天数, 比如计算生日距离现在还有多少天
d1=$(date +%s -d 20180728)
d2=$(date +%s -d 20180726)
echo $(((d1-d2)/86400))