shell命令一
&> /dev/null
yum -y install vsftpd &> /dev/null
&> /dev/null
&>
:将命令的**标准输出(stdout)和标准错误(stderr)**同时重定向。/dev/null
:Linux中的“黑洞”设备,丢弃所有写入的数据。- 效果:安装过程中的所有输出(包括错误信息)均被隐藏,终端不显示任何内容。
Shell变量
创建变量
x=1命名:数字,字母,下划线,不可以使用数字开头,不可以使用特殊符号
使用变量
$x
${x}rnm
删除变量
unset x
使用参数
echo $0 #脚本的名称echo $1 #第一个参数echo $2 #第二个参数echo $* #所有参数echo $# #所有参数的个数(参数有几个)echo $$ #执行脚本的进程号(或者说当前进程的进程号)
创建账户和密码
useradd $1
echo $2 | passwd --stdin $1使用:
/sh/name.sh blp 123
三种引号对变量赋值的影响
1)双引号的应用,使用双引号可以界定一个完整字符串
[root@sv7 ~]# x=a b c
-bash: b: command not found #未界定时赋值失败
[root@sv7 ~]# x="a b c" #界定后成功
[root@sv7 ~]# echo $x
a b c2)单引号的应用,界定一个完整的字符串,并且可以实现屏蔽特殊符号的功能
[root@sv7 ~]# test=11
[root@sv7 ~]# echo "$test"
[root@sv7 ~]# echo '$test'3)反撇号或$()的应用,使用反撇号或$()时,可以将命令执行的结果作为字符串存储,因此称为命令替换
[root@sv7 ~]# a=`date` #将date执行结果赋值给a
[root@sv7 ~]# a=$(date) #效果同上