linux shell 编程 3(if then else fi 字符串空的判断)
时间:2016-06-12 23:34 来源:linux.it.net.cn 作者:IT
文章只要是 简单介绍 if 的用法 以及其中涉及到的 /dev/null 无底洞和 2 >&1 的介绍
1、
[plain] view plain copy
print?
-
#!/bin/sh
-
#name : test linux shell
-
# 标准输入,获取从键盘输入的数据
-
read name
-
-
# 判断是否为空还可以使用 -z $name 如果成立则空
-
-
# -s $name 判断不为空
-
if [ "$name" ="" ]
-
then
-
echo "name is null "
-
else
-
echo "name value is $name"
-
fi
2、
[plain] view plain copy
print?
-
# 判断获取的数值的大小
-
#!/bin/sh
-
#name : test linux shell
-
read name
-
if [ "$name" -le 6 ]
-
then
-
echo "value $name less than 6 "
-
else
-
echo "value $name greater than 6 "
-
fi
3、
[plain] view plain copy
print?
-
# 检测 grep 结果,判断这个要找的是否在结果中
-
#!/bin/sh
-
#name : test linux shell
-
if grep 'linux' Tlinux.sh > /dev/null 2>&1
-
then
-
echo " linux in tlinux.sh "
-
else
-
echo " linux not in tlinux l.sh "
-
fi
4、
[plain] view plain copy
print?
-
# 文件的拷贝判断
-
#!/bin/sh
-
#name : test linux shell
-
if cp tests tests12.sh >/dev/null
-
then
-
echo "good copy"
-
else
-
echo " `basename $0`: erroe "
-
fi
*************************/dev/null *******************
可以把/dev/null看作一个"黑洞",它非常等价于一个只写文件,所有写入它的内容都会永远丢失。
而尝试从它那儿读取内容则什么也读不到然而, /dev/null对命令行和脚本都非常的有用。
1、禁止标准输出
cat $filename >/dev/null
# 文件内容丢失,而不会输出到标准输出.
2、禁止标准错误
rm $badname 2>/dev/null
# 这样错误信息[标准错误]就被丢到太平洋去了.
3、禁止标准输出和标准错误的输出.
cat $filename 2>/dev/null >/dev/null
4、清除日志文件内容
cat /dev/null > /var/log/messages
# : > /var/log/messages 有同样的效果, 但不会产生新的进程.(因为:是内建的)
********************* 2>&1 **********************
这儿命令是由三部分组成的,2 、>& 、1 这三部分组成,其中的1,2,以及以后会看到的 0 表示的是他们的输出输入方式,其中0 表示标准输入, 1 标准输出 、2 、表示标准错误输出 而 >& 表示把符号左边的内容以符号右边的形式输出
(责任编辑:IT)
文章只要是 简单介绍 if 的用法 以及其中涉及到的 /dev/null 无底洞和 2 >&1 的介绍 1、
[plain] view plain copy
2、
[plain] view plain copy
3、
[plain] view plain copy
4、
[plain] view plain copy
*************************/dev/null ******************* 可以把/dev/null看作一个"黑洞",它非常等价于一个只写文件,所有写入它的内容都会永远丢失。 而尝试从它那儿读取内容则什么也读不到然而, /dev/null对命令行和脚本都非常的有用。 1、禁止标准输出
cat $filename >/dev/null 2、禁止标准错误
rm $badname 2>/dev/null 3、禁止标准输出和标准错误的输出. cat $filename 2>/dev/null >/dev/null 4、清除日志文件内容
cat /dev/null > /var/log/messages
********************* 2>&1 ********************** 这儿命令是由三部分组成的,2 、>& 、1 这三部分组成,其中的1,2,以及以后会看到的 0 表示的是他们的输出输入方式,其中0 表示标准输入, 1 标准输出 、2 、表示标准错误输出 而 >& 表示把符号左边的内容以符号右边的形式输出 (责任编辑:IT) |