首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Shell脚本编程_shell简单脚本

shell 脚本(shell script),是一种为 shell 编写的脚本程序。业界所说的 shell 通常都是指 shell 脚本,shell 和 shell script 是两个不同的概念。...使用 read 从标准输入读取数值: read -p "提示信息" [变量名] read -p "提示信息" [变量名] 文件] 常用选项: -p #指定要显示的提示信息 -s #静默输入...bash shell 中内置的变量,在脚本代码中调用通过命令行传递给脚本的参数。...可以将经常使用的函数存入一个单独的函数文件,然后将函数文件载入 shell,再进行调用函数 文件名可任意选取,但最好与相关任务有某种联系,例如:functions 一旦函数文件载入 shell,就可以在命令行或脚本中调用函数...: 使用 echo 等命令进行输出 函数体中调用命令的输出结果 函数的退出状态码: 默认取决于函数中执行的最后一条命令的退出状态码 自定义退出状态码,其格式为: return 从函数中返回,用最后状态命令决定返回值

8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    第十六章 Shell编程

    /test.pl --- .表示当前目录 注:本方式要求脚本必须有x权限才可被执行 方式二: 使用shell调用脚本 bash /mnt/test.pl ---指定使用bash编译执行脚本...那么如果想要读取文件中的每一行文字呢?则需配合while循环来使用,看下例: shu=1 while read hang do echo No....用while配合read使用,则读取完一行后不会关闭文件,进而就可以使指针下移一行,再次读取第二行了。...,结果如下:" qiuHe #调用函数qiuHe 值得注意的是:(1)在shell脚本中,程序的开始运行点,并不会从函数开始,而是从函数之外的第一行代码开始执行,所以上例中运行的第一条代码是...(3)与其他开发语言不同,shell中的变量并没有严格的生存期概念,只要在之前代码出现使用过的变量,在之后代码中都可以直接使用。

    1.1K51

    《Linux命令行与shell脚本编程大全》第十四章 处理用户输入

    有时还会需要脚本能够与使用者交互。bash shell提供了一些不同的方法来从用户处获得数据, 包括命令行参数,命令行选项,以及直接从键盘读取输入的能力。...为此提供了read命令 14.6.1 基本的读取 read命令从标准输入或另外一个文件描述符中接收输入。收到输入后read将数据放进一个变量中去。...read 还可以接 –p选项,允许在read命令行指定提示符。 还可以指定多个变量,如果变量数量不够,那么剩下的数据就全部分配到最后一个变量中。 如果没有指定变量名,会放到环境变量REPLY中。...9 else  10         echo "Falied, Two inconsistent"  11 fi 14.6.4 从文件中读取 每次调用read命令,它都会从文件中读取一行文本。...当文本没有内容时,read返回非零退出状态码。 难点在于将文件中的数据传给read命令。最常见的方法是对文件使用cat命令,将结果通过管道直接传给含有read命令的while命令。

    1.8K50

    Bash脚本编程(原创)

    Shell中文意思叫做“壳”,在计算机中它是和用户直接交互的一个界面,而我们通常用到的是文本界面的shell: bash启动的时候会运行各种不同的脚本。...用sh名字调用的非交互shell不会去读取其他启动脚本,--rcfile参数无效。当bash以POSIX模式启动时(例如带有--posix参数)它使用POSIX标准来读取启动文件。...在此模式下,交互shells扩展变量ENV,从以此为文件名的文件中读取命令并执行。bash会探测自己是不是被远程shell守护程序运行(通常是rshd)。...特殊变量:具有特殊功能的变量 $# 表示传递到脚本的参数列表 $* 以一个字符串显示所有向脚本传递的参数,跟位置变量不同的是这里参数可超过9个。 $$ 表示当前运行脚本的进程ID号 $!...read 用于从终端或者文件中读取输入,它读取整行输入,而末尾的换行符被翻译成 null(空字符串)。如果没有指定名称,读取的行就被赋值到特定的变量 REPLY 中。

    1.4K30

    Shell变量和逻辑判断及循环使用

    1−1−n,需要注意的是从第 10 个开始要用花括号调用,例如${10} shift 可对位置变量控制,例如: #!...Shell变量的输入 Shell变量除了可以直接赋值或脚本传参外,还可以使用read命令从标准输入获得,read为bash内置命令,可以通过help read查看帮助 语法格式 # read [参数...test.sh 请输入两个数字:2 3 2+3 =5 2*3 =6 2/3 =0 2**3 =8 2%3 =2 条件测试与比较 介绍 在bash的各种流程控制结构中通常要进行各种测试,然后根据测试结果执行不同的操作...,也用于从输入文件中读取数据;命令通常为测试条件。...下面的例子中,输入信息被设置为变量FILM,按结束循环 echo '按下 退出' echo -n '输入你最喜欢的网站名: ' while read FILM do

    1.5K40

    shell 脚本中关于用户输入参数的处理

    shell 脚本中关于用户输入参数的处理 bash shell 脚本提供了3种从 用户处 获取数据的方法: 命令行参数(添加在命令后的数据) 命令行选项 直接从键盘读取输入 1 命令行参数 像 shell...脚本传递数据的最基本方法是使用 命令行参数....比如在脚本运行时问一个问题, 等待运行脚本的人来回答, bash shell 为此提供了 read 命令. 3.1 read 命令 read variable_name 从标准输入(键盘) 或 另一个文件描述符中...3.2 从文件中读取 read 命令可以读取文件中保存的数据. 每次调用 read 命令, 它都会读取一行文本. 当文件中没有内容时, read 会退出并返回非 0 的 退出状态码....问题是怎么将文件的数据传给 read ? 最常见的方法是 对文件使用 cat 命令, 将结果通过 管道 直接传给 含有 read 命令的 while 命令.

    2.5K20

    shell语法学习

    $ chmod a+x hello-world.sh Bash 可以使用以下两个命令中的任何一个来运行此命令。 $ bash hello-world.sh $ ....相反,更改脚本中的变量名称和值等部分,以检查它们如何一起工作。 13.case 条件 . switch 构造是 Linux bash 脚本提供的另一个强大功能。...23.从 Bash 脚本创建目录 使用 shell 脚本运行系统命令的能力使开发人员的工作效率大大提高。下面的简单示例将向您展示如何在 shell 脚本中创建目录。 #!...36.清理日志文件 下一个简单的示例演示了在现实生活中使用 shell 脚本的简便方法。该程序只需删除 / var/log 目录中的所有日志文件。您可以更改保存此目录的变量以清理其他日志。 #!...39.从文件中删除重复行 文件处理需要相当长的时间,并在许多方面阻碍了管理员的工作效率。例如,在文件中搜索重复项可能会成为一项艰巨的任务。

    1.2K40

    Linux Shell脚本面试25问

    Q:7 在shell脚本中如何比较两个数字 ? 答:在if-then中使用测试命令( -gt 等)来比较两个数字,例子如下: #!...答:break命令一个简单的用途是退出执行中的循环。我们可以在while和until循环中使用break命令跳出循环。 Q:9 shell脚本中continue命令的作用 ?...答:如同for循环,while循环只要条件成立就重复它的命令块。不同于for循环,while循环会不断迭代,直到它的条件不为真。...答:read命令可以读取来自终端(使用键盘)的数据。read命令得到用户的输入并置于你给出的变量中。例子如下: # vi /tmp/test.sh #!...当我们定义代码块,我们就可以在我们的脚本调用函数名字,该块就会被执行。

    1.5K50

    面试linux运维一定会问到Shell脚本这24个问题

    Q:7 在shell脚本中如何比较两个数字 ? 答:在if-then中使用测试命令( -gt 等)来比较两个数字,例子如下: #!...答:break命令一个简单的用途是退出执行中的循环。我们可以在while和until循环中使用break命令跳出循环。 Q:9 shell脚本中continue命令的作用 ?...不同于for循环,while循环会不断迭代,直到它的条件不为真。基础语法: while [ 条件 ] do 命令… done Q:12 如何使脚本可执行 ? 答:使用chmod命令来使脚本可执行。...答:read命令可以读取来自终端(使用键盘)的数据。read命令得到用户的输入并置于你给出的变量中。例子如下: # vi /tmp/test.sh #!...当我们定义代码块,我们就可以在我们的脚本调用函数名字,该块就会被执行。

    1.7K11

    必会的 24 道 Shell 脚本面试题

    Q:7 在 shell 脚本中如何比较两个数字 ? 答:在 if-then 中使用测试命令( -gt 等)来比较两个数字,例子如下: #!...答:break 命令一个简单的用途是退出执行中的循环。我们可以在 while 和 until 循环中使用 break 命令跳出循环。 Q:9 shell 脚本中 continue 命令的作用 ?...不同于 for 循环,while 循环会不断迭代,直到它的条件不为真。 基础语法: while [ 条件 ] do 命令… done Q:12 如何使脚本可执行 ?...答:read 命令可以读取来自终端(使用键盘)的数据。read 命令得到用户的输入并置于你给出的变量中。 例子如下: # vi /tmp/test.sh #!...当我们定义代码块,我们就可以在我们的脚本调用函数名字,该块就会被执行。

    9.6K30

    必会的 24 道 Shell 脚本面试题

    Q:7 在shell脚本中如何比较两个数字 ? 答:在if-then中使用测试命令( -gt 等)来比较两个数字,例子如下: #!...答:break命令一个简单的用途是退出执行中的循环。我们可以在while和until循环中使用break命令跳出循环。 Q:9 shell脚本中continue命令的作用 ?...不同于for循环,while循环会不断迭代,直到它的条件不为真。基础语法: while [ 条件 ] do 命令… done Q:12 如何使脚本可执行 ? 答:使用chmod命令来使脚本可执行。...答:read命令可以读取来自终端(使用键盘)的数据。read命令得到用户的输入并置于你给出的变量中。例子如下: # vi /tmp/test.sh #!...当我们定义代码块,我们就可以在我们的脚本调用函数名字,该块就会被执行。

    1K30

    40 个简单又有效的 Linux Shell 脚本示例

    $ chmod a+x hello-world.sh 可以使用以下两个命令中的任何一个来运行此命令。 $ bash hello-world.sh $ ....相反,更改脚本中的变量名称和值等部分,以检查它们如何一起工作。 13、case 条件 . switch 构造是 Linux bash 脚本提供的另一个强大功能。...23、从 Bash 脚本创建目录 使用 shell 脚本运行系统命令的能力使开发人员的工作效率大大提高。下面的简单示例将向您展示如何在 shell 脚本中创建目录。 #!...36、清理日志文件 下一个简单的示例演示了在现实生活中使用 shell 脚本的简便方法。该程序只需删除 / var/log 目录中的所有日志文件。您可以更改保存此目录的变量以清理其他日志。 #!...39、从文件中删除重复行 文件处理需要相当长的时间,并在许多方面阻碍了管理员的工作效率。例如,在文件中搜索重复项可能会成为一项艰巨的任务。

    36810

    Shell 简明教程

    2. bash 启动 bash 启动脚本是 bash 启动时会自动执行的脚本,因此用户可以把一些环境变量的设置和 alias、umask 设置等放到启动脚本中,这样每次启动 shell 时都会自动生效。...但是,启动 bash 的方法不同,执行启动脚本的步骤也不同。 2.1....非交互式启动 为了执行脚本而 fork 出来的子 Shell 是非交互式 Shell,启动时执行的脚本文件有环境变量 BASH_ENV 定义,相当于执行下面的命令: if [ -n "$BASH_ENV...匹配 1 个任意字符 [若干字符] 匹配方括号中的任意字符 如我们可以使用 ls ch0[012].doc 命令查找文件,如果当前目录下有 ch00.doc 和 ch02.doc,ls 的参数会直接转换成这两个文件名...Shell脚本中的函数必须先定义后调用,一般把函数定义都写在脚本的前面,把函数调用和其它命令写在脚本的最后(类似C语言中的 main 函数,这才是整个脚本实际开始执行命令的地方)。

    2.1K40

    高级shell脚本编程指南_python的快速入门

    shell变量中有一部分是环境变量,有一部分是局部变量,不同类型的变量保证了shell的正常运行 2.4 变量操作 shell中的变量,默认为可读可写类型,如果想要其只可读,如同url一样,需要将其声明为...echo `date` 1 echo命令还有其他使用规则,经常使用就可熟练掌握 7.2 printf命令 shell中的printf命令如同C语言中一样,调用格式也大抵相同,只是有一点点不同。.../bin/bash while : do echo -n "输入 1 到 5 之间的数字: " read num case $num in 1|2|3|4|5)...循环 shell中的while循环用于不断执行一系列命令,也用于从输入文件中读取数据,调用格式如下 while condition do command done 应用脚本编写如下: #!...输入你最喜欢的歌名: ' while read SONG do echo "啊!

    3.2K10

    案例驱动 :从入门到掌握Shell编程详细指南

    ---- 文章目录 一、概述 二、入门案例 三、Sell中的变量 系统变量 自定义变量 特殊变量 四、运算符和条件判断 运算符 条件判断 五、流程控制 if case while for 六、读取控制台输入内容...等号两侧不能有空格 在bash中,变量默认类型都是字符串类型,无法直接进行数值运算 变量的值如果有空格,需要使用双引号或单引号括起来 案例: 1、定义变量S 2、撤销变量S 3、...语法:export 变量名 案例:使用shell脚本输出变量B 特殊变量 $n n(功能描述:n为数字,0代表该脚本名称, 案例:输出该脚本文件名称、输入参数1和输入参数2 的值...*) echo "other number" ;; esac while 基本语法 while [ 条件判断式 ] do 程序 done 案例:从1加到100...功能描述:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目录的部分) 案例:获取helloShell.sh 文件的路径 dirname /root/Test/

    1.1K20

    shell编程:编程就是这么简单

    /bin/bash声明脚本类型(更为普遍来说是语言解释器的路径),为bash脚本,除此之外其余#后面均为注释内容;之后为脚本环境变量例如PATH和LANG设置,对于命令的执行非常重要;第三部分为主要程序执行部分...非 while循环结构使用方法如下: while [ 条件 ] do 执行命令 done 或者更为简单的可以在命令行执行的: while 条件; do 执行命令; done 下面是一个选择食物的selectfood...运行示例如下: 另一个更为常用的循环结构是for循环,常用来批量执行任务,如下所示: for 变量名 in 单词组 do 执行命令 done 其中单词组不同单词之间空格或者换行符分隔,例如我们进入不同项目文件夹批量解压序列文件...在shell脚本中,命令行参数可以直接加在脚本后面,在脚本里使用默认变量“$n”来调用(n为非负整数),下面通过一个小例子来了解shell脚本命令行参数使用方法: echo $0 echo $1 echo...$2 将上面脚本保存为sh04.sh并运行: 可以看出第一个变量$0为脚本名字,从$1开始为用户输入数据。

    83940

    Linux-Day15

    shell脚本编程——使用LinuxLinux系统环境文件系统结构一切皆文件。...,把所有参数看成一个整体$@:也代表命令行中所有参数,不过$@把每个参数区别对待$#:代表命令行中所有参数的个数#参数传递的优点1 灵活性2 可重用性3 减少错误#应用写好一个脚本,然后将文件插入到脚本中对应参数的位置即可运行脚本状态变量用于记录命令的运行结果...是Linux的Shebang符号,指定解释器其它脚本:在Linux中使用其他编程语言,需要在shebang中定义解释器。.../usr/bin/env Rscript##env的位置相对固定,使用env去调用当前环境下的解释器shell脚本修改文件权限后可直接通过路径调用(充当command)保存运行日志bash test.sh...(屏幕)bash test.sh > out.logtest.sh: line 3: ppp: command not found##3 进行分开重定向,正确与错误分别进入两个log文件bash test.sh

    13810

    Bash基础训练指南

    但是,变量在 bash 中不是数据类型,变量在 bash 中可以是容器编号和字符。 给变量赋值,使用 = 号赋值: name=lemonhuang 注意:重要的一点是,= 符号前后不能有空格。...Bash 用户输入 在前面的脚本中,我们定义了一个变量,并使用 echo $name 在屏幕上输出该变量的值。 我们接着往下,这次接受用户的输入请求。修改 test.sh 脚本如下: #!...上面的代码将提示用户输入,然后将用户输入的作为字符串/文本存储在变量中。 然后,我们可以使用该变量并向它们返回一条消息。 以上脚本的输出过程为: 首先运行脚本: ....Bash 数组 如果你曾经做过任何编程,你可能已经熟悉数组。但为了防止你不是开发人员,与变量不同,数组可以在一个名称下保存多个值。 可以通过将值赋值给由空格分隔并包含在()中来初始化数组。...Bash 循环语句 与任何其他语言一样,循环非常有用。在bash中,您可以使用for循环、while循环和until循环。

    2.2K10

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券