大于 -gt (greater than)
小于 -lt (less than)
大于或等于 -ge (greater than or equal)
小于或等于 -le (less than or equal)
不相等 -ne (not equal)
chsh
/usr/bin/zsh
> 默认为标准输出重定向,与 1> 相同
2>&1 意思是把 标准错误输出 重定向到 标准输出.
&>file 意思是把标准输出 和 标准错误输出 都重定向到文件file中
/dev/null是一个文件,这个文件比较特殊,所有传给它的东西它都丢弃掉
--------------------------------------------------------------------------------------------
单引号将剥夺其中的所有字符的特殊含义,而双引号中的'$'(参数替换)和'`'(命令替换)是例外。所以,两者基本上没有什么区别,除非在内容中遇到了参数替换符$和命令替换符`
空格是用来分割命令行的赋值操作和后续的命令行的
赋值时: i=1
i=$((i+1)) // =用作赋值时,两边绝对不能有空格
比较时: if [ $a = $b ] // =用作比较判断时,两边必须有空格
set -o vi
plugins=(git vi-mode)
--------------------------------------------------------------------------------------------
tr命令是替换或者删除字符的命令.-d的意思是删除后面集合中的字符,-c的意思是取反,就是说,除了后面的字符集合其他的都删除掉.我们可以通过后面的字符的集合来指定自己的密码复杂度
分析一个可以生成密码的命令,head命令的作用就是取多少字符,-c指的是取多少字节,13可以自定义,这样就定义了密码的长度
cat /dev/urandom | tr -dc a-zA-Z0-9
tr -dc A-Za-z0-9 < /dev/urandom |fold -w 16 |head -20 >file
tr -dc A-Za-z0-9 < /dev/urandom |fold -w 16 |head -1000 >line_1000_2
tr -dc A-Za-z0-9 < /dev/urandom |fold -w 16 |head -300000000 >line_300000000
Linux使用命令替换来获取命令行的输出
$(command) `command`
OUTPUT="$(ls -1)"
echo "${OUTPUT}"
|