- 浏览: 38268 次
- 性别:
- 来自: 南京
最新评论
function check_space() { local check_dir=$1 local need_space=$2 local avail=$(df -B1m $check_dir | sed -n '$p' | awk '{print $(NF-2)}') [ $avail -le $need_space ] && \ die "not enough space in ${check_dir} (need:${need_space}M available:${avail}M)" } ------------------------------------------------------------------------------------------- #利用root用户执行,得到oracle的版本 su - oracle -c "sqlplus -version" | grep "11.1.0.6" ------------------------------------------------------------------------------------------- #求操作系统的版本: NEW_VERSION=`uname -r|cut -d - -f 1`-`uname -r|cut -d - -f 2` ------------------------------------------------------------------------------------------- #!/bin/bash #true是关键字 while true do echo "ok" done ------------------------------------------------------------------------------------------- for f in ${files[@]} do cfgs=`{ while read line do echo $line | grep -o '${.[^${}]*}' | sed -e 's/${//g' | sed 's/}//g' done } < $f` cfgarr=(`echo $cfgs | tr -s ' ' '\n' | sort -u | tr -s ''`) done 这里的{}可有可无 注意:tr -s ''只有在``之间,才会自动将换行转为空格,其他情况不会 #得到自然排序的数组 retStr=`echo $localnetypelist | tr -s ' ' '\n' | sort | tr -s ''` retArr=($retStr) ------------------------------------------------------------------------------------------- #这个例子就可以看出:$()要比``好,如果使用``则会报错 #!/bin/bash set -x str="my name is AAAAA" xx="AAAAA" name=xx newname="BBBBB" VV=$(eval echo \${$name}) ret=`echo $str | sed "s/${VV}/${newname}/g"` echo $ret 另一种方法:把eval写在一个函数中 function getValue { eval echo $1 } 注意: 这里sed的用法,利用的是"",这样的好处就是:对于替换的变量,可以直接以${}使用,而不必再加上'' #sed替换文件中的字符串的常用方法: sed "s|$old_result|${result}|g" $result_path > temp.$$.$$ mv temp.$$.$$ $result_path #sed用法补充: sed '/pam_securetty.so/'c\ "#${LINE}" /etc/pam.d/login_bak > /etc/pam.d/login #当使用多个s进行替换操作时,这时的/方式就会报错,而下面的三种方式都可以 echo "abc" | sed "s#a#A#;s|b|B|;s:c:C:;" function create_pxe_file() { local CMD1="s|<vmware-inst-server>|$DMS_SERVER|;\ s|<vmware-inst-path>|$NFS_PATH|;\ s|<linux-conf-server>|$DMS_SERVER|;\ s|<linux-conf-path>|$LINUX_CONF_PATH|;\ s|vmware-ks|$CONTROL_FILE|;\ s|ethX|$NET_DEVICE|;\ s|<tftp-server>|$DMS_SERVER|;\ s|<linux-addon-server>|$DMS_SERVER|;\ s|<linux-addon-path>|$ADDON_PATH|;" sed -e "$CMD1" $PXE_TEMPLATE_FILE > $PXE_PATH/"01-${BLADE_MAC}" }
发表评论
-
简单代码统计脚本
2013-05-25 07:00 567#!/bin/bash #参数校验 if [ $# ... -
linux好文章
2010-03-26 10:12 702http://linux.chinaunix.net/bbs/ ... -
shell小结(15)
2010-02-09 15:33 748#!/bin/bash if [ ! $# -eq 1 ]; ... -
shell小结(14)
2010-02-05 14:10 836#输出换行符 echo -e "ok\r\n&qu ... -
shell小结(12)
2010-01-21 15:20 667#!/bin/bash #while为真的另一种用法 wh ... -
shell小结(11)
2010-01-21 14:51 813echo "drop user testads ca ... -
shell小结(10)
2010-01-20 20:06 667#!/bin/bash #set -x typeset ... -
shell小结(9)
2009-12-30 17:28 690test 字符串比较命令: -n str1 ... -
shell小结(8)
2009-12-30 17:24 665------------------------------- ... -
shell小结(7)
2009-12-30 17:23 661//只输出符合规则的字符串 grep -o太重要了!! ... -
shell小结(6)
2009-12-30 17:21 726------------------------------- ... -
shell小结(5)
2009-12-30 17:18 731------------------------------- ... -
shell小结(4)
2009-12-30 17:17 1205------------------------------- ... -
shell小结(3)
2009-12-30 17:09 628------------------------------- ... -
shell小结(2)
2009-12-30 16:58 611------------------------------- ... -
shell小结(1)
2009-12-30 16:26 727------------------------------- ...
相关推荐
### Shell编程小结 在IT领域,特别是操作系统与脚本编程方面,Shell占据了举足轻重的地位。Shell作为用户与操作系统之间沟通的桥梁,在UNIX和Linux系统中扮演着核心角色。本文将深入探讨Shell编程的基础知识、核心...
### Unix Shell 特殊参数详解 #### 一、引言 在 Unix Shell 编程中,存在许多常用但容易被遗忘的重要概念与技巧。本文旨在总结这些知识点,帮助读者更好地理解和掌握 Unix Shell 的核心功能之一——特殊参数。通过...
Seacms代码审计小结主要关注的是框架中存在的安全漏洞,特别是与文件写入和文件包含相关的风险。在Seacms中,发现了一些未经过滤的文件写入操作和不安全的文件包含行为,这些都可能导致代码执行(getshell)的风险。...
梁博shell脚本训练集训学习小结V0.11 在 Linux 操作系统中, shell 脚本是非常重要的一部分。shell 脚本可以帮助用户自动化repeatitive任务,提高工作效率。梁博shell脚本训练集训学习小结V0.11主要讲述了shell脚本...
一、Gnu Linux shell 截取字符变量的前8位,有方法如下: 1.expr substr “$a” 1 8 2.echo $a|awk ‘{print substr(,1,8)}’ 3.echo $a|cut -c1-8 4.echo $ 5.expr $a : ‘\(.\\).*’ 6.echo $a|dd bs=1 count=8 2>...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
和Java、PHP等语言不一样,sh的流程控制不... 代码如下: <?...if (isset($_GET[“q”])) { search(q); } else { //do nothing ...在sh/bash里可不能这么写,如果else分支没有语句执行,就不要写这个else,就像这样: ...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改...
以下给出一些shell中判断字符串包含的方法,来源程序员问答网站 stackoverflow 以及segmentfault。 方法一:利用grep查找 strA=long string strB=string result=$(echo $strA | grep ${strB}) if [[ $result != ]] ...
Shell脚本中的数组操作是日常自动化任务中非常实用的功能,特别是在处理批量数据和流程控制时。下面我们将详细探讨数组的定义、读取、替换、删除、复制和计算等操作。 ### 定义数组 在Bash中,数组的定义非常简单...
### 小结 通过上述知识点的学习,我们可以了解到Bourne Shell不仅是Unix系统中的命令解释器,也是一种强大的脚本语言。掌握其基础语法和高级功能可以帮助我们更高效地管理Unix系统,实现自动化任务处理。
第十五章 小结 第四部分 基础SHELL编程 第十六章 SHELL脚本介绍 第十七章 条件测试 第十八章 控制流结构 第十九章 SHELL函数 第二十章 向脚本传递参数 第二一章 创建屏幕输出 第二二章 创建屏幕输入 第二三...
第十五章 小结 第四部分 基础SHELL编程 第十六章 SHELL脚本介绍 第十七章 条件测试 第十八章 控制流结构 第十九章 SHELL函数 第二十章 向脚本传递参数 第二一章 创建屏幕输出 第二二章 创建屏幕输入 第二三章 调试...