一、脚本文件编写的格式
/*通知系统一下的shell程序使用系统上的Bourne Shell来解释*/
#!/bin/sh
/*第二行一般注释写脚本名*/
#commond_shell.sh
/*第三行一般是脚本的功能注释*/
echo "Hello,$NAME!"
/*脚本编写完成添加脚本的执行权限*/
chmod u+x commond_shell.sh
二、Shell下的命令
1.用户管理命令
echo "useradd UserName"
/*设置用户的密码*/
echo "passwd UserName"
此时在home目录下是看不到该用户的,如果需要切换到新创建的用户使用su Usernama;
将密码输入进去就可以切换到新创建的用户下,此时输入whoami就可以看到当前用户了;你可以看到原来用户下的所有内容;
新创建的用户和原来的用户具有相同的读权限,却没有新建文件操作的权限;在/eetc目录下的group中可以找到所有用户
/*新建群组*/
echo "groupadd GroupName"
/*删除群组*/
echo "groupdel GroupName"
/*查看用户身份*/
echo "whoami"
/*显示所有用户的信息*/
echo "who -a"
/*列的形式显示*/
echo "who -H"
/*某一时刻用户的行为*/
echo "w"
/*切换用户*/
echo "su UserName"
/*显示文件中前10行的内容*/
echo "hede FileName"
/*显示文件中后10行的内容*/
echo "tail FileName"
/*增加行号显示文件的所有内容*/
echo "nl FileName"
/*linux下大部分脚本都在此*/
echo "/usr/lib/klibc/bin"
/*查找文件下的文件名为destname的文件*/
echo "find / -name "destname" -print"
/*查找文件中的关键字KeyName*/
echo "grep "destname" KeyName"
/*一次一屏显示文件内容,空格或者回车显示下一屏*/
more FileName
less FileName
la -l 显示如drwxrwxr,说明该文件是目录文件
2.Shell下的变量
(1)变量一般用大写字母表示;
(2)使用echo命令可以显示单个变量的取值,要在变量名前加$;
(3)使用set可以显示本地所有的Shell变量;
(4)unset变量名可以清除对变量的定义;
#!/bin/sh
#var_shell.sh
#to test varibales!
echo USER = xiaoru
echo "hello $USER,the out as fllows!"
echo "the script name si :'basename $0'"
echo "the script first paramis :'$1'"
echo "the script second paramis :'$2'"
echo "the script tenth paramis :'$10'"
echo "the all params of script is :'$*'"
echo "the number of params input to script :'$#'"
echo "the process Id of script is :'$$'"
echo "the exit status of this script is :'$?'
3、条件测试
逻辑操作符:
-a 逻辑与,操作数俩边都为真的时候为真
-o逻辑或,有一个为真即为真
!逻辑非,值为假时为真;
-z 空字符串
-n非空串
4.Shell中的循环和选择控制
(1)if...else...
(2)case语句
(3)for语句
(4)while语句
(5)函数