基本命令:
1、定时关机与重启
sudo shutdown -h +45 "this is all,game over."
sudo shutdown -r now
2、命令记录显示
history
echo $HISTSIZE (显示历史命令容量)
3、特殊字符
通配符 * ?[...] [-] [^...] 、 管道 | 、grep 、输入输出重定向 > >> < << 2>或&> 、 命令置换 ``
4、shell基本系统维护命令
man passwd
expr 算数运算命令 包括+ - \* / %
read
test 命令测试的条件成立时,命令返回值为真,否则返回值为假 例子:if test -f $filename或 if [ -f $filename ]
su 选项 -c 表示执行一个命令后就结束;-m 仍保留环境变量不变; - 表示转换用户身份时,同时使用该用户环境变量
echo 输出换行 echo -n 输出不换行 echo "h i" 双引号内容原样输出 echo h i会为h i
data显示日期 data -s 设置新时间
df -h 查看磁盘空间的使用情况
du -f 列出磁盘的使用情况(KB)
获取字符串长度 : string="abcd" echo ${#string} #输出 4
提取子字符串 :string="runoob is a great site" echo ${string:1:4} # 输出 unoo
查找子字符串 :string="runoob is a great site" echo `expr index "$string" io` # 输出 4
5、用户管理
/etc/passwd 文件是系统能够识别的用户清单,用户登录时,系统查询这个文件,确定用户的UID并验证用户口令。
/etc/group 包含了unix组的名称和每个组中成员列表每一行代表一个组。
添加用户 :adduser 用户名 删除用户:deluser 用户名 添加组:addgroup 组名 删除组:delgroup
修改用户属性:usermod 例子:usermod -d /home/newname -m -l newname oldname oldname改为newname,并更改目录
6、进程管理相关命令
ps -aux 显示进程的动态 pid 进程号 ppid 父进程号
top 实时监测进程信息
kill [signal] PID 发送信号
7、文件系统相关命令
file mkdir rmdir ln
配置网络:
桥接模式->ifconfig->vi /etc/network/interfaces->vi /etc/resolv.config->vi /etc/rc.local->/etc/init.d/networking restart
8、脚本shell
变量:用户自定义变量(unset取消用户变量),位置变量/预定义变量(如$0,$#),环境变量(如PATH)
条件语句(每个if都跟一个then):
if [ -f $filename ]
then
elif test $val -gt 0
then
else
if
分支语句:
case 字符串变量 in case语句只能检测字符串变量
模式1)
命令表1
;;
模式2 | 模式3)
命令表2
;;
.......
模式*) *号代表其他
命令表n
;;
esac
循环语句:
for 变量名 in 单词表
do
命令表
done
while 命令或表达式
do
命令表
done
函数:
fun()
{
local A=$1 (默认是全局变量,加上local变为函数内)
echo hello world
return $A (回值是0-255)
}
fun 1 2 3