shell基本操作
2016-05-24 00:00
288 查看
**- 执行脚本 ./1.sh
重定向 < 重定向输如 示例:passwd --stdin xiaohan < pass.txt
变量 a="会被解析$b"
sh 1.sh
. 1.sh
source 1.sh
重定向 < 重定向输如 示例:passwd --stdin xiaohan < pass.txt
> 重定向输出 示例:cat /etc/passwd > /root/passwd.txt
>>追加重定向 示例:cat /etc/passwd >> /root/passwd.txt
2>错误重定向
2>>最佳错误重定向
&>混合重定向
变量 a="会被解析$b"
a='不会被解析$b'
a='cat /etc/passwd' 或a=$(cat /etc/passwd) 当变量是值是一个命令的输出结果时使用
read -p a 交互式给变量赋值 示例: read -p "请输入数字"
环境变量 USER 当前用户
PATH 命令搜索路径
HOME 宿主目录
PWD 工作目录
位置变量 $? 执行命令的返回结果 0 true 非0 false
$# 参数个数
$* $1表示第一个参数,$2第二个 $*表示所有位置参数的内容
$0 表示当前程序脚本的名称
全局变量 export 变量名
变量运算 expr $a + $b 加
- 减
\* 乘(转义符*)
/ 除
% 求余
文件测试 -f 是否文件
-d 是否为目录
-r 是否可读
-w 是否可写
-x 是否可执行
-e 文件是否存在
数值比较 -eq 等于
-ne 不等于
-gt 大于
-lt 小于
-ge 大于等于
-le 小于等于
字符串比较 = 第一个字符串等于第二个
!= 取反 第一个字符串不等于第二个
-z 测试字符串是否为空
逻辑测试 && 逻辑与运算
|| 逻辑或运算
! 逻辑非
if 语句
if [ $a -eq $b ]
then
echo "$a 等于 $b"
else
echo "$a不等于$b"
fi
if [ $a -eq $b ]
then
echo "$a等于$b"
elif [ $a -lt $b ]
then
echo "$a 小于 $b"
else
echo "$a 大于 $b"
fi
for循环
for i in array_ip(可以为文件,数组,命令的结果)
do
echo "$i"
done
示例:
a=$(ls /etc)
for i in $a
do
echo $i
done
while循环
while [ $a -ge $b ]
do
echo "hello world"
done
case语句
case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
模式3)
命令序列2
;;
*)
默认命令序列
esac
sleep 延时单位/秒
$RANDOM 随机数
exit 终止脚本
break n 跳出几层循环
continue 跳出当前循环**
相关文章推荐
- Shell - 16
- shell(二)
- shell(一)
- bash:ll命令未找到问题
- bash扩展
- shell通配符
- go语言exec包调用shell命令
- Linux下配login.sql,并在.bash_profile中配置SQLPATH
- bash 数组
- bash shell总结
- 故障案例--mongo shell从库无法读的处理方法
- 【转】深入浅出ShellExecute
- Associate File Extension with Shell OPEN command and Application(转)
- 笔记整理之 SHELL 变量
- shell元字符
- 创建交互式shell脚本对话框
- shell 基本命令
- shell字符串判空
- anr日志
- Shell 命令 find 的常见用法