shell中如果一段代码需要反复被调用,则可以将该段代码定义称为函数,直接在后面的脚本中调用即可。定义函数的方法有两种:1、function  functionname {}2、functionname() {}例如:定义一个添加用户hadoop的函数ADDUSER() { USERNAME=hadoop if ! id -u $USE
原创 2016-05-22 16:25:37
1421阅读
函数返回函数体中定于返回值,不能使用exit,因为函数是在当前shell中执行,使用exit会退出当前shell,如下所示可以使用return 命令,执行函数退出的状态码,return 0 无错误返回  return 1-255 有错误返回  return 从函数中返回,即最后命令状态环境函数在脚本中调用函数无法传递到shell中子进程中,通过定义环境函数,可以使子进程调用函数
原创 精选 2022-10-21 14:02:34
405阅读
13评论
一、变量的替换(1)匹配并删除${变量#匹配规则} :从头开始匹配,最短删除${变量##匹配规则}:从头开始匹配,最长删除${变量%匹配规则}:从尾开始匹配,最短删除${变量%%匹配规则}:从尾开始匹配,最长删除${变量/旧字符串/新字符串}: 替换字符串,最短替换${变量//旧字符串/新字符串} :替换字符串,全部替换二、字符串的处理(1)计算字符串的长度方法一:${#str}方法二:expr
原创 2020-05-23 15:27:05
566阅读
一、函数的定义和使用第一种格式:name(){    xxxxx}第二种格式:function name{    xxxxx}调用直接使用函数名调用,函数内部可以直接使用参数$1..下面是一个守护进程的脚本:
原创 2020-05-24 10:14:55
552阅读
 和其他语言一样,Shell也支持函数编程。接下来就让我们看看Shell中函数如何使用。”01—函数定义与使用    Shell中定义函数有两种方式:    第一种:function_name()                 {                      //命令                 }    第二种:function name                 { 
原创 2021-02-28 09:49:14
632阅读
1 查找当前目录a.txt和b.txt文件,下面的o是or的意思, -iname是
原创 2021-08-12 14:53:13
322阅读
1 查找当前目录a.txt和b.txt文件,下面的o是or的意思, -iname是忽略大小写的意思(-o -iname)find . -iname a.txt -o -iname b.txt2查找当前目录下的除了a.txt的文
原创 2022-03-10 11:13:02
309阅读
学习脚本时看到if的用法,在网上找的一篇文章,就转载到自己的博客上了   1shell中的if语句语法 我发现有时候等于是用eq表示,有时候用=标准,不明白 ============== eq数值 =字符串!!! ============== 可以看看man test ============== 流程控制 if 表达式 如果条件为真则执行then后面的部分: if .... t
转载 精选 2012-06-12 15:15:59
653阅读
假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt我们可以用 ${ } 分别替换获得不同的值:${file#*/}:拿掉第一条 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:拿掉最后一条 / 及其左边的字符串:my.file.txt${file#*.}:拿掉第一个 . 及其左边的字符串:file.txt${
原创 2016-08-22 21:24:59
764阅读
Date: 2018.7.151
原创 2022-05-04 09:34:20
280阅读
1.sh/bash/csh/Tcsh/ksh/pdksh等shell的区别 sh(全称 Bourne Shell): 是UNIX最初使用的 shell,而且在每种 UNIX 上都可以使用。 Bou
原创 2021-07-15 13:54:52
633阅读
A='\' eval echo $A \ 因为bash在参数扩展后不再解释转义字符序列, 第一次命令行处理之后变成 eval echo \ eval执行时,\被解释成\。 之后将echo ''作为新的命令行交给bash执行 echo '' 于是输出 \ eval的意图是让bashl再次处理命令行,于
原创 2021-07-29 09:47:35
309阅读
一、if高级用法 1.1、条件符号使用双圆括号,可以在条件中植入数学表达式 if (()) #!/bin/bash #Author: www.zutuanxue.com #Created Time: #Script Description: if (( (5+5-5)*5/5 > 10 )) the ...
转载 2021-10-29 20:49:00
81阅读
2评论
1)判断表达式 if test  (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2                  两个表达式都为真 test 表
转载 精选 2014-07-22 15:58:12
380阅读
cat命令的用途是连接文件或标准输入并打印。 1.命令格式:cat [选项] [文件]... 2.命令功能:cat主要有三大功能:1.一次显示整个文件:cat filename --常用来显示文件内容2.从键盘创建一个文件:cat > filename --创建新文件3.将几个文件合并为一个文件:c
转载 2019-06-10 13:32:00
642阅读
2评论
1、${1:-}怎么理解$1是函数的第一个参数 看替换的定义,${varname:-word},如果varname存在且非null,则返回其值;否则,返回word。用途:如果变量未定义,则返回默认值。 上述替换中的word是空,即,如果1没有定义,就返回空 所以,${1:-}的意思就是说,如果函数有第一个参数,就返回这个参数,如果没有,就返回空。2、查找系统上的隐藏文件大小du -h -x --m
原创 2023-04-15 20:39:57
129阅读
1、遍历按空格分隔的字符串:#!/bin/bash servers="abc123 da
原创 2022-06-16 07:01:22
231阅读
1点赞
1)判断表达式 if test  (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2                  两个表达式都为真 test 表达式1 –o 表达式2                 两个表达式有一个为真 2)判断字符串 test –n 字符串                        
转载 2021-07-31 10:30:35
63阅读
Windows 7相对Vista的系统提升是较大的,稳定性、兼容性、人性化等都有较。而Windows 7中的shell命令行,则是许多用户都没有发现的又一重要更新,Windows 7 shell是Windows 7系统的控制台。对于熟悉了命令行的人来说,用键盘调用程序比鼠标更快更省力。用户可以用“Shell:”命令调用一切可以用资源管理器打开的项目一次完需要很多步骤才能完成的任务,并且使用时的语法
sed编辑器逐行处理输入,然后把结果发送到屏幕。-i选项:直接作用源文件,源文件将被修改。sed命令和选项:a\在当前行后添加一行或多行c\用新文本替换当前行中的文本d删除行i\在当前行之前插入文本h把模式空间的内容复制到暂存缓冲区H把模式空间的内容添加到缓冲区g取出暂存缓冲区的内容,将其复制到模式缓冲区G取出暂存缓冲区的内容,将其追加到模式缓冲区l列出非打印字符p打印行n读入下一行输入,并从下一
原创 2013-03-04 09:09:43
486阅读
  • 1
  • 2
  • 3
  • 4
  • 5