`
quanminchaoren
  • 浏览: 922749 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Linux Shell编程

阅读更多
if  条件
then
Command
else
Command
fi                              别忘了这个结尾
If语句忘了结尾fi
test.sh: line 14: syntax error: unexpected end of fi


    if 的三种条件表达式
if
command
then

if
函数
then
命令执行成功,等于返回0 (比如grep ,找到匹配)
执行失败,返回非0 (grep,没找到匹配)
if [ expression_r_r_r  ]
then
表达式结果为真,则返回0,if把0值引向then
if test expression_r_r_r
then
表达式结果为假,则返回非0,if把非0值引向then

     
   [ ] &&  ——快捷if
[ -f "/etc/shadow" ] && echo "This computer uses shadow passwors"
   && 可以理解为then
    如果左边的表达式为真则执行右边的语句


    shell的if与c语言if的功能上的区别
shell if     c语言if
0为真,走then
正好相反,非0走then
不支持整数变量直接if
必须:if [ i –ne 0 ]

但支持字符串变量直接if
if [ str ] 如果字符串非0
支持变量直接if
if (i )


=================================以command作为if 条件===================================
 
    以多条command或者函数作为if 条件
echo –n “input:”
read user

if
多条指令,这些命令之间相当于“and”(与)
grep $user /etc/passwd >/tmp/null     
who -u | grep $user
then             上边的指令都执行成功,返回值$?为0,0为真,运行then
echo "$user has logged"
else     指令执行失败,$?为1,运行else                           
echo "$user has not logged"
fi  
# sh test.sh
input : macg
macg     pts/0        May 15 15:55   .          2075 (192.168.1.100)
macg has logged
  
# sh test.sh
input : ddd
ddd has not logged 


    以函数作为if条件  (函数就相当于command,函数的优点是其return值可以自定义)
if
以函数作为if条件,
getyn
then   函数reture值0为真,走then
echo " your answer is yes"
else  函数return值非0为假,走else
echo "your anser is no"
fi 


   if command  等价于 command+if $?
$ vi testsh.sh
#!/bin/sh

if
cat 111-tmp.txt | grep ting1
then
echo found
else
echo "no found"
fi
$ vi testsh.sh
#!/bin/sh

cat 111-tmp.txt | grep ting1

if [ $? -eq 0 ]
then
echo $?
echo found
else
echo $?
echo "no found"
fi
$ sh testsh.sh
no found 
$ sh testsh.sh
1
no found
$ vi 111-tmp.txt
that is 222file
thisting1 is 111file

$ sh testsh.sh
thisting1 is 111file
found
$ vi 111-tmp.txt
that is 222file
thisting1 is 111file

$ sh testsh.sh
thisting1 is 111file
0
found

  
========================================以条件表达式作为 if条件=============================

    传统if 从句子——以条件表达式作为 if条件
if [ 条件表达式 ]
then
command
command
command
else
command
command
fi
  
   条件表达式

    文件表达式

if [ -f  file ]    如果文件存在
if [ -d ...   ]    如果目录存在
if [ -s file  ]    如果文件存在且非空
if [ -r file  ]    如果文件存在且可读
if [ -w file  ]    如果文件存在且可写
if [ -x file  ]    如果文件存在且可执行  

    整数变量表达式

if [ int1 -eq int2 ]    如果int1等于int2  
if [ int1 -ne int2 ]    如果不等于   
if [ int1 -ge int2 ]       如果>=
if [ int1 -gt int2 ]       如果>
if [ int1 -le int2 ]       如果 和
分享到:
评论

相关推荐

    LinuxShell编程基础教程.pdf

    Linux Shell 编程基础教程 本资源为 Linux Shell 编程基础教程,涵盖了 Linux Shell 编程的基础知识,包括语法基本介绍、变量、环境变量、Shell 命令和流程控制等。 一、语法基本介绍 在 Linux Shell 编程中,...

    linux Shell编程入门 实例讲解详解

    Linux Shell编程入门实例讲解详解 Linux Shell编程是Linux系统中一种非常灵活的工具,通过shell编程可以自动化大量的任务,especially适合那些易用性、可维护性和便携性比效率更重要的任务。下面是Linux Shell编程...

    LinuxShell编程基础.pdf

    Linux Shell 编程基础 Linux Shell 编程基础是 Linux 操作系统中一个非常重要的组件,它提供了一个交互式命令行界面,允许用户输入命令来执行各种操作。在 Linux 系统中,Shell 是一个命令解释器,它可以解释用户...

    Linux Shell编程从入门到精通

    本书由浅入深、循序渐进地详细讲解了LinuxShell编程的基本知识。这些基本知识包括Shell编程的基本知识、文本处理的工具和方法、正则表达式、Linux系统知识等。  本书旨在通过理清Linux Shell编程的脉络,从基本概念...

    linux shell 编程1

    Linux Shell编程是Linux系统中非常重要的一个环节,它允许用户通过命令行接口编写脚本,自动化执行一系列操作,极大地提高了工作效率。在这个主题中,我们将深入探讨Linux命令行基础以及Shell编程的相关知识。 首先...

    2本linux shell 编程chm

    Linux Shell编程是Linux系统管理与自动化任务的核心技术之一,它主要指的是使用Shell脚本来执行一系列命令,实现自动化操作。在Linux环境中,Bash(Bourne-Again SHell)是最常用的Shell,也是许多Linux发行版的默认...

    LINUX SHELL编程从初学到精通

    但根据文件信息中的标题和描述,可以推断出本书内容涉及Linux Shell编程的基础知识和技能提升。下面将基于Linux Shell编程这一主题,详细说明相关知识点。 Linux Shell编程是学习Linux系统管理和自动化脚本的重要...

    linux Shell 编程实例书一本

    Linux Shell编程是Linux系统管理与自动化任务的核心技术之一。Shell脚本可以理解为Linux环境下的批处理程序,它允许用户通过编写脚本来执行一系列命令,从而实现自动化操作,提高工作效率。这本书《Linux Shell编程...

    linux shell编程手册

    Linux Shell编程是Linux系统中非常重要的一个环节,它是一种命令解释器,同时也是脚本编程语言。Shell编程使得用户可以通过编写脚本来自动化重复性任务,提高工作效率。这份"Linux Shell编程手册"将引领初学者深入...

    Linux shell编程

    Linux Shell编程是Linux系统中非常重要的一个环节,它允许用户通过命令行接口执行各种操作,进行自动化任务处理。shell作为用户与操作系统之间的桥梁,提供了一系列强大的功能,包括脚本编写、文件管理、进程控制等...

    LinuxShell编程全攻略

    Linux Shell编程是利用Shell语言进行的一种编程方式,它是Linux操作系统中不可或缺的一部分。Shell可以解释和执行用户输入的命令,同时也可以用于编写脚本程序,实现自动化的任务处理。Shell编程的主要特点包括定义...

    linux shell编程从初学到精通源码4-17全

    Linux Shell编程是Linux系统管理与自动化任务处理的重要组成部分。它是一种命令行脚本语言,用于交互式地操作操作系统或编写批处理脚本。本资源包含了从初学到精通的Shell编程源码,共计4-17全阶段的学习内容,旨在...

    实战Linux Shell编程与服务器管理

    实战Linux Shell编程与服务器管理 自己做的书签

    实战Linux Shell编程与服务器管理-脚本文件.rar

    在本资源包中,我们聚焦于“实战Linux Shell编程与服务器管理”。Shell编程是Linux操作系统中的核心技能之一,它允许用户通过命令行界面自动化执行任务,极大地提高了工作效率。以下是关于这个主题的一些关键知识点...

    Linux shell编程文档

    在Linux系统中,Shell编程是一项非常重要的技能,尤其是对于系统管理员和技术人员来说。尽管现代Linux系统提供了丰富的图形用户界面,但Shell仍然是一种极其强大的工具。Shell不仅能够执行一系列预定义的命令,还能...

    Linux Shell编程基础

    Linux Shell编程基础是掌握Linux系统管理和自动化任务执行的关键技能之一。本文主要介绍如何开始编写Shell脚本,如何处理注释,以及如何执行脚本。同时,我们还将深入探讨Bash中的各种变量,包括环境变量、位置变量...

    Linux Shell编程.

    ### Linux Shell编程知识点详解 #### 一、Shell编程概述 **Shell** 在 Unix/Linux 系统中扮演着极其重要的角色,既是用户与操作系统交互的主要接口,也是一种强大的编程语言。通过 Shell 编程,用户不仅可以自动化...

    linux shell编程指南

    linux shell编程经典书籍,该版本为中文版,读懂这本书,你将成为Linux编程高手

    linux Shell 编程视频10

    linux Shell 编程视频,适合初学者

    linux Shell编程入门 实例讲解详解.doc

    Linux Shell编程是Linux系统管理与自动化任务的核心技术之一。Shell不仅仅是一个命令行接口,它也是一种强大的脚本语言,能够帮助用户高效地执行一系列系统指令。本文将深入介绍Shell编程的基础知识,包括创建脚本、...

Global site tag (gtag.js) - Google Analytics