shell
这里主要是bash shell,也是应用最广的。
!string 查看历史命令 知道命令的索引后可以使用!n来运行命令
alias 显示别名
alias h5='head -5' 定义别名 unalias h5 取消别名
管道与重定向 |
ifconfig eth0 | grep 'inet addr' 获取有价值的那一行
‘>’(由于markdown排版原因是用了‘’) 表示导出到文件,如果文件不存在久新建,如果已有那就覆写
’>>‘ 表示追加到文件末尾
‘<’ ‘<<’ 是从文件导出 2> 2>> 错误信息的重定向
Ctrl + a 光标移到行首 Ctrl + e 光标移到行尾 Ctrl + k 删除光标至行尾的字符 Ctrl + z 挂起进程,可以使用jobs命令查看
假设要自动修改20个用户的密码。我们只关心失败的
echo "pass" | passwd --stdin root > /dev/null
/dev/null 就像一个无底洞,一切写入他的东西都将消失
标准输出和错误输出必须分开
id tom >> user 2>> error
; && || &
;用来分隔命令 && 前一个命令成功执行才能执行下一个,||前一个不成功才执行下一个,&开启一个子shell,并在后台执行。
firefox &(在后台开启firefox) ; id tom &> /dev/null && echo"Hi,tom" || echo "no such user"
jobs fg 1(n)转换到前台
{} 的使用
echo {a,b,c}; echo user{1,2,3}; echo {0..10}; echo {0,10,2}; mkdir /tmp/{dir1,dir2,dir3}
变量 NAME="tomcat";echo $NAME;typeset -r NAME 添加只读属性 -i为整数类型
declare INT_NUMBER 可以暂时不赋值
read NAME; echo $NAME;set 查看当前系统中的变量; unset NAME 删除变量
export NAME 导入到环境变量,不然只要现在的shell进程关闭变量酒会消失。
PATH= $PATH:root 往环境变量PATH中添加:root
位置变量在一个shell程序中,$1表示第一个参数,$2表示第二个,$1~$9
$* $@表示所有参数; $$表示当前ID; $?表示退出码,0为正常,非0异常。