1..cmpcmp命令是上边diff命令的一个简单版本. diff命令会报告两个文件的不同之处, 而cmp命令仅仅指出哪些位置有所不同, 不会显示不同之处的具体细节.就像diff命令那样, 如果两个文件相同的话, cmp将返回0作为退出状态码, 如果不同就返回1. 这样能用在shell脚本的测试结构中了.2.basename 从文件名中去掉路径信息, 只打印出文件名 
原创
2015-05-22 11:57:32
588阅读
1、source和sh的区别a、.和source是等价的,都只是在当前的shell中运行,影响的是当前shell的环境变量b、sh是新开一个shell运行,影响子shell的环境变量2、获取字符串的最后一个字符STR=123456abcFINAL=${STR: -1}3、shell计算中使用除法,默认上都是整除。比如:
num1=2
num2=3
num3=`expr $num1&nbs
原创
2018-03-08 16:17:37
639阅读
本文转载自Shell小技巧
Shell小技巧
1. 用&& ||简化if else
gzip -t a.tar.gz if [[ 0 == $? ]]; then echo "good zip" else echo "bad zip" fi
可以简化为:
gzip -t a.tar.
转载
精选
2012-08-17 12:10:25
614阅读
点赞
4评论
1.dos2unix 格式化shell脚本安装doc2unix:[root@zhw ~]# yum install -y dos2unix[root@zhw ~]# dos2unix for01.sh2.echo 调试3。4.
原创
2017-01-02 23:51:48
576阅读
trap调试技巧一 tee调试技巧二 调试钩子 sh 执行选项调试 eval用法 declare定义变量 使用trap命令 shell脚本执行时会产生三个所谓的伪信号,可以使用trap命令捕获这三个“伪信号”,并输出相关的调试信息 信号名 产生原因 EXIT 从一个函数中退出或整个脚本执行完毕 ER ...
转载
2021-07-24 07:17:00
423阅读
2评论
1、搜索曾经用过的命令 Ctrl + r 会提示:(reverse-i-search)`': 进行模式匹配即可 History | grep 进行过滤 2、查看某端口ip连接情况,比如3306netstat -ano | grep 3306 | a
原创
2013-12-14 23:02:29
1273阅读
点赞
6评论
定义IFS时可以将多个分隔符同时定义到$IFS中去:#!/bin/bash -x
QUERY_STRING="hostname=eq1-dnsmaster-01&method=disable"
IFS_ORI=$IFS
IFS='=&'
parm=($QUERY_STRING)
for i in ${parm[*]}
do
echo 
原创
2014-12-23 04:11:47
1416阅读
获取shell脚本所在的目录DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"获取当前进程的进程ID:$$,获取当前进程父进程的进程ID:$PPID创建一个10M的随机二进制文件 head -c 10M /dev/urandom > a.txt最好用双引号将$变量括起来"$变量"echo 会自动忽略x变量值前面的空格
原创
2016-12-21 08:28:43
513阅读
收集的48个Shell脚本小技巧原创beck_7162016-09-1914:06:34评论(0)344人阅读shell调试复制代码代码如下:sh-xsomefile.sh在somefile.sh文件里加上set+xset-x用&&||简化ifelse复制代码代码如下:gzip-ta.tar.gzif[[0==$?]];thenecho"goodzip"else
转载
2018-03-01 11:15:39
623阅读
shell计算中使用除法,基本默认上都是整除。
比如:
num1=2
num2=3
num3=`expr $num1 / $num2`
这个时候num3=0 ,是因为是因为expr不支持浮点除法
解决的方法:
num3=`echo "sclae=2; $num1/$num2" | bc`
使用bc工具,sclae控制小数点后保留几位
还有一种方法
awk
转载
精选
2010-08-13 21:52:47
4154阅读
1.删除0字节文件
find -type f -size 0 -exec rm -rf {} \;
2.查看进程按内存从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -k5 -nr
3.按cpu利用率从大到小排列
ps -e -o "%C : %p : %z : %a"|sort -nr
转载
精选
2010-09-25 17:46:30
338阅读
1.test测试命令
test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试,其测试符和相应的功能分别如下:
(1)数值测试:
-eq:等于则为真
-ne:不等于则为真
-gt:大于则为真
-ge:大于等于则为真
-lt:小于则为真
-le:小于等于则为真
(2)字符串测试:
=:等于则为真
!=:不相等则为真
-z 字符串:字符串长度伪
原创
2011-12-03 22:15:42
378阅读
几个经常用到的shell东东!
1. shell下如何打印换行符:
echo $'\n'
2.shell比较大小
整形比较
-eq 等于,如:if [ "$a" -eq "$b" ]
-ne &nbs
原创
2011-12-13 15:00:50
579阅读
***************************常用的shell命令汇总*********************************一、硬件篇1、cpu相关lscpu #查看CPU的统计信息cat /proc/cpuinfo  
原创
精选
2016-07-30 18:06:28
968阅读
shell ${}的用法file=/dir1/dir2/dir3/my.file.txt使用${}分别替换不同的值:${file#*/} 去掉第一条 / 及其左边的字符串: dir1/dir2/dir3/my.file.txt${file##*/} 去掉最后一条 /及其左边的字符串 my.file.txt${file#*.} 去掉第一个 .及其左边的字符串 file.txt
原创
2013-08-14 02:00:04
1565阅读
点赞
洗牌问题:洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样高效率的实现乱序排列?给出了一个取巧的方法,利用 Shell 的 $RANDOM 变量给原文件的每一行加上随机的行号然后根据这个随机行号进行排序,再把临时加上去的行号给过滤掉,这样操作之后得到的新文件就相当于被随机“洗”了一次: 代码如下:while read i;do echo "$i $RANDOM
转载
精选
2015-11-10 11:10:12
961阅读
点赞
linux shell在编程方面比windows 批处理强大太多,无论是在循环、运算。已经数据类型方面都是不能比较的。 下面是个人在使用时候,对它在数组方面一些操作进行的总结。1.数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a1一对括号表示是数组,数组元素用“空格”符号分割开。2.数组读取与赋值得到长
转载
2017-11-20 16:28:11
475阅读