`

Shell实例:字符串操作 逻辑判断

阅读更多

#!/bin/bash
echo "enter a number"

#read input value
read ans

#case
case $ans in
        1)
        echo "your number is $ans"
        ;;
        2)
        echo "your number is 2"
        ;;
        [3-9])
        echo "your number is $ans"
esac


echo "Parameter numbers:$#"
echo "Shell name:$0"
echo "Shell all parameters:$*"
echo "Shell PID:$$"
echo "Shell PPID:$!"
echo "Before command return value:$?"

#echo "get command return:$(ls /home/provision)"

#if : -eq(==) -ne(!=) -lt(<) -gt(>) -ge(>=) -le(<=)
if [ "22" -lt "33" ]
then
        echo "22 less than 33"
else
        echo "22 not less than 33"
fi

#while
#no space left or right =
num=1
echo "init num = $num"
#need space after [ ,before ]
while [ $num -le 10 ]
do
        echo "num=$num"
        let num=num+1

done


#file exist
fileName="case_test.sh"
if [ -e $fileName ]
then
        echo "$fileName is exist:"
else
        echo "$fileName is not exist:"
fi

#is directory
if [ -d $fileName ]
then
        echo "$fileName is directory"
else
        echo "$fileName is not directory"
fi

if [ -z $fileName ]
then
        echo "fileName length is 0"
else
        echo "fileName length is not 0"
fi

if [ -n $fileName ]
then
        echo "fileName length is not 0"
else
        echo "fileName length is 0"
fi

#
for filename in `ls`
do
        cat $filename
done

for((i=0; i<10; i++))
do
        echo "--$i"
done

echo "Name:${name:-huangxiaobing}"

#function return only number cannot return string
getName(){
    return 100
}

getName
echo "getName:$?"


#connect two string
firstname="huang"
lastname="xiaobing"
allname=`printf "%s%s" "$firstname" "$lastname"`
echo "All Name:$allname"

#get the char count of string
countChar=`echo "$firstname"|wc -m`
echo "$firstname count:$countChar"

#return nor number char: return null
echo "12345"|sed 's/[0-9]//g'
#return A
echo "123A45"|sed 's/[0-9]//g'
#return huang
echo ${allname%%xiaobing}
echo ${allname:0:5}
echo ${allname:2:7}


分享到:
评论

相关推荐

    shell自学手册

    5. **字符串操作**:字符串处理是Shell编程中使用非常频繁的操作,手册会介绍如何在Shell中进行各种字符串操作。 6. **文件操作**:文件系统是Linux系统的重要组成部分,学会在Shell中进行文件的基本操作是十分必要...

    shell极限编程教程及实例

    - 条件语句:if、elif、else用于逻辑判断,例如检查文件是否存在或某个条件是否满足。 - 循环结构:for、while和until循环,用于重复执行某段代码。 - 函数定义:创建自定义函数以封装可重用的代码。 3. **...

    unix shell 实例精解(第二版)

    《Unix Shell实例精解(第二版)》是一本专注于Unix Shell编程和命令行操作的权威指南。本书旨在帮助读者深入理解和熟练运用Unix Shell,提升在命令行环境下的工作效率。Unix Shell作为Unix和类Unix系统中不可或缺的...

    linux Shell 编程实例书一本

    2. **变量与数据类型**:学习如何声明和使用变量,包括字符串、整数、数组等数据类型,以及变量赋值、引用和环境变量的管理。 3. **条件语句与循环结构**:掌握if、elif、else条件判断,以及for、while、until循环...

    shell编程中级实例

    在本文中,我们将深入探讨几个中级Shell编程实例,涵盖if判断语句、case分支语句、for循环、while循环以及逻辑运算符的应用。 1. **if判断语句**: 使用`if`关键字可以从屏幕读取参数,如`read`命令。在`if`后面的...

    shell高级编程实例

    例如,`[[ $str =~ ^[0-9]+$ ]]`判断字符串是否全由数字组成。 10. **脚本调试**:`set -x`开启命令行追踪,显示脚本每一步执行的命令;`set -v`开启脚本的逐行打印,便于调试。 11. **错误处理**:使用`trap`命令...

    shell编程实例解析,shell基础语法详解

    13. **关于数字与字符串的疑惑**:在Shell脚本中,数字运算通常使用`expr`命令或`let`命令进行,字符串操作则依赖于内置命令和外部工具。 14. **Bourne、Korn、C 三种Shell的区别**:尽管这些Shell的基本语法相似,...

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

    - `echo`:打印字符串或变量的值。 - `ls`:列出目录内容。 - `wc`:计算文件的行数、单词数和字符数。 - `cp`:复制文件。 - `mv`:移动或重命名文件。 - `rm`:删除文件。 - `grep`:在文件中搜索特定模式。 - `...

    shell必学必会命令

    - **命令行Shell**:用户通过键盘输入命令字符串来执行操作。常见的命令行Shell有: - Windows系统的`cmd.exe`。 - Linux/Unix系统的`sh`、`csh`、`ksh`、`bash`等。 在Linux环境下,`bash`是最为常用且功能强大...

    shell编程实例

    7. **条件测试**:`test`命令或其等价的`[`和`]`用于进行条件判断,如检查文件是否存在、比较数值大小、字符串匹配等。 8. **循环结构**:`for`循环常用于遍历序列,`while`循环则根据条件不断执行循环体。 9. **...

    SHELL实例介绍

    ### SHELL实例介绍 本文将基于提供的Shell脚本示例,深入探讨Shell编程的基本概念、最佳实践以及如何编写高效、安全的Shell脚本。通过分析三个递进的脚本示例,我们将逐步理解如何改进脚本,使其更加健壮、灵活且...

    Shell 编程从入门到精通绝版收藏

    接下来的表达式与运算符章节涵盖了条件表达式、整数比较符、字符串比较符、文件测试、布尔运算符、逻辑判断符、整数运算等。这部分内容是Shell编程中的高级主题,要求读者对基础知识点有较好的掌握。 Shell流程控制...

    Linux常用命令和管理10-shell之条件测试及脚本实例11

    在进行字符串比较时,通常建议将字符串用单引号或双引号括起来,以防止shell的特殊字符解析。对于变量,使用双引号可以保留变量的空值,未定义的变量会被视为空字符串。 2. **hostname命令** `hostname`命令用于...

    LinuxShell脚本编程实例.pdf

    - `echo`:打印字符串到标准输出。 - `read`:从标准输入读取一行并将其赋值给变量。 - `expr`:表达式计算命令,用于数学运算,如`expr $times + 1`。 - `sleep`:暂停脚本执行一段时间。 6. **环境变量**:如...

Global site tag (gtag.js) - Google Analytics