1、字符串判断
str1 = str2 当两个串有相同内容、长度时为真
str1 != str2 当串str1和str2不等时为真
-n str1 当串的长度大于0时为真(串非空)
-z str1 当串的长度为0时为真(空串)
str1 当串str1为非空时为真
2、数字的判断
int1 -eq int2 两数相等为真
int1 -ne int2 两数不等为真
int1 -gt int2 int1大于int2为真
int1 -ge int2 int1大于等于int2为真
int1 -lt int2 int1小于int2为真
int1 -le int2 int1小于等于int2为真
3 文件的判断
-r file 用户可读为真
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件为正规文件为真
-d file 文件为目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
-t file 当文件描述符(默认为1)指定的设备为终端时为真
3、复杂逻辑判断
-a 与
-o 或
! 非
下面是一些使用实例:
#!/bin/sh
myPath="/var/log/httpd/"
myFile="/var /log/httpd/access.log"
#这里的-x 参数判断$myPath是否存在并且是否具有可执行权限
if [ ! -x "$myPath"]; then
mkdir "$myPath"
fi
#这里的-d 参数判断$myPath是否存在
if [ ! -d "$myPath"]; then
mkdir "$myPath"
fi
#这里的-f参数判断$myFile是否存在
if [ ! -f "$myFile" ]; then
touch "$myFile"
fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$myVar" ]; then
echo "$myVar is empty"
exit 0
fi
#两个变量判断是否相等
if [ "$var1" == "$var2" ]; then
echo '$var1 eq $var2'
else
echo '$var1 not eq $var2'
fi
if list then
do something here
elif list then
do another thing here
else
do something else here
fi
EX1:
#!/bin/sh
SYSTEM=`uname -s` #获取操作系统类型,我本地是linux
if [ $SYSTEM = "Linux" ] ; then #如果是linux的话打印linux字符串
echo "Linux"
elif [ $SYSTEM = "FreeBSD" ] ; then
echo "FreeBSD"
elif [ $SYSTEM = "Solaris" ] ; then
echo "Solaris"
else
echo "What?"
fi #ifend
基本上和其他脚本语言一样。没有太大区别。不过值得注意的是。[]里面的条件判断。
=========================================================================
#. $HOME/.bash_profile
cd $HOME
sh .bash_profile
cd $HOME/jnjzapp/sos_dx/
echo -e '开始'
./jn_card_dx.sh
wait
#sqlplus $DBSTR <<START_A
#@jn_card_dx.sql
#/
#commit;
#exit;
#START_A
cd $HOME/jnjzapp/sos_dx/data/
if [ ! -d BQMSG ]; then
mkdir BQMSG
fi
#mkdir BQMSG
cd $HOME/jnjzapp/sos_dx/
sqlplus $DBSTR <<START
@sos.sql;
commit;
exit;
START
objdir=`date -d ' days' +%Y%m%d`
echo $objdir
#cp jn_card_sos.txt $objdir.txt
分享到:
相关推荐
在 Linux Shell 编程中,if 语句可以使用文件比较运算符来判断文件或目录的状态。这些运算符包括: * -b:判断文件是否存在并且是块文件 * -c:判断文件是否存在并且是字符文件 * -d:判断 pathname 是否存在并且是...
8. 循环与条件判断:文档中出现循环控制结构(while、do...done)和条件判断结构(if、elif、else),这是Shell编程中常用的控制逻辑。 9. 脚本使用交互式输入:文档显示脚本需要用户的交互式输入,例如读取用户名...
在这个“linux shell程序设计实验1”中,我们将探讨如何利用基本的`case`和`if`语句来编写简单的Shell程序。 一、Shell程序基础 在Linux环境中,Shell是一个命令解释器,它接收用户输入的命令并执行。Bash是最常见...
Linux Shell是Linux操作系统中用于与系统交互的命令行界面,它是Linux系统中极其重要的组成部分,尤其对于系统管理员和开发者来说,熟练掌握Shell脚本编写技巧是必不可少的技能。《Linux Shell脚本攻略(第2版)》这...
2. **条件语句与循环**:学习if、else、fi、case等条件判断语句,以及for、while、until等循环结构。 3. **函数定义**:理解如何在Shell中定义和调用函数,提高代码复用性。 4. **流程控制**:掌握break、continue...
Bash(Bourne Again SHell)是Linux系统中最普遍使用的Shell,本书应该也会重点介绍bash Shell脚本的编写技巧。 Shell脚本的基本构成包括:变量、环境变量、命令执行、流程控制(如if语句、for循环、while循环等)...
Linux Shell 是Linux操作系统中用于与系统交互的一种命令行接口,它是用户与Linux内核之间的桥梁。Shell不仅可以执行单一的命令,还可以通过脚本文件执行一系列命令,极大地提高了工作效率。这篇参考文档将深入探讨...
这份“linuxshell.rar帮助文档”旨在提供关于Linux Shell的基础知识和实用技巧,帮助用户提高在终端中的操作效率。 一、Shell简介 Linux Shell是Linux系统中的一个核心组件,常见的有Bash(Bourne Again SHell)、...
在Linux Shell脚本编程中,内置判断语句是不可或缺的一部分,它们用于检查各种条件并根据结果执行相应的操作。这些判断语句通常与`test`命令或方括号`[` `]`结合使用,用于测试文件状态、数值比较、字符串比较等。在...
Linux Shell脚本是Linux系统中用于自动化任务的强大工具,它基于Bash或其他Shell解释器,允许用户编写一系列命令,以实现批处理、任务调度或任何需要自动化的工作流程。本PDF文档"shell-script-entry.pdf"提供了18页...
在IT领域,Linux Shell脚本是系统管理员和开发者日常工作中不可或缺的工具,它允许用户通过命令行接口自动化执行一系列任务。《Linux shell 脚本攻略-第二版》是一本深受赞誉的书籍,旨在帮助读者深入理解并掌握...
Linux Shell编程是Linux系统中一个极其重要的组成部分,它充当了用户与操作系统内核之间的接口,允许用户通过命令行与系统进行交互。Shell不仅提供了一系列内置命令,还支持编写脚本,使得复杂的自动化任务变得可能...
通过阅读和实践这些实例,你可以逐步提升在Linux环境中解决问题的能力,成为一个熟练的Shell程序员。 在学习过程中,记得多动手实践,结合自己的实际工作需求,不断探索和改进脚本,才能真正掌握Linux Shell编程的...
- **条件判断**: `if` 语句。 - **循环结构**: `for` 和 `while` 循环。 - **函数**: 自定义函数以增强代码复用性和模块化。 - **示例**: ```sh #!/bin/sh # 条件判断 if [ "$1" = "hello" ]; then echo ...
在这个“Linux Shell版商品信息管理系统”中,我们将会探讨如何利用Shell脚本实现一个简易的信息管理功能,这对于熟悉Linux环境、提升脚本编程技能的初学者来说是非常有价值的实践项目。 1. **Ubuntu环境** Ubuntu...
这是linux shell判断平闰年,输入正确格式日期就可以判断这是一个平年还是闰年,输入正确格式日期就可以判断在该日期下是星期几,而且输入两个日期还可以判断这两个日期之间间隔了几天,可以正确使用,你们也可以...
if语句用于判断条件是否满足,而while和until语句用于循环执行命令。 三、实例讲解 1. 简单的echo命令 ```bash #!/bin/bash echo "Current command is $0" echo "The first parameter is $1" echo "The second ...
**Shell** 在 Unix/Linux 系统中扮演着极其重要的角色,既是用户与操作系统交互的主要接口,也是一种强大的编程语言。通过 Shell 编程,用户不仅可以自动化执行一系列命令,还可以编写复杂的脚本来完成特定任务。 #...
此外,Shell还支持流程控制结构,包括条件判断(`if`语句)、循环(`for`、`while`)以及函数定义。 #### 四、常用Shell命令详解 - **echo**: 显示指定的文本或变量值。 - **ls**: 列出当前目录下的文件和子目录。...
Shell脚本是Linux操作系统中的强大工具,它允许用户通过编写简单的命令行指令组合来自动化日常任务,提高工作效率。这本书以中文版的形式提供,方便了中文读者的学习。 Shell脚本的基础知识包括了解Shell的种类,如...