shell
iteye_20321
这个作者很懒,什么都没留下…
展开
-
查看目录或文件大小
可以使用“ls”来查看一个目录下各个文件的大小,但是无法查看文件夹的大小。shell里有个命令可以实现查看文件,文件夹占磁盘空间大小。那就是“du“几个比较常用的方式1、du -sh 查看当前目录的总的占磁盘空间。-s表示求总和,-h表示使用人类易读的形式,也就是x.xG, x.xM, x.xK这样的形式,而不是字节数。2、du -h迭代显示当前目录下所有子文件夹,文件占磁盘大...原创 2011-12-20 17:10:21 · 169 阅读 · 0 评论 -
shell中读取ini配置。
利用awk 的范围模板来读取ini中的配置 范围模板匹配从第一个模板的第一次出现到第二个模板的第一次出现之间所有行。如果有一个模板没出现,则匹配到开头或末尾。 如$ awk '/root/,/mysql/' test将显示root第一次出现到mysql第一次出现之间的所有行。假设tmp.ini文件内容为[common]key1="common 1"key2="com...原创 2011-11-28 19:45:24 · 269 阅读 · 0 评论 -
shell中$*和$@的区别
如果想用一个shell脚本把输入参数完整的传给另一个脚本,特别遇到以下这种情况的时候./a.sh 'test 1' 'test 2'。此时就需要使用$@,而不是$*来完成需求。具体运行一下以下脚本就清楚这两条命令之间的区别了。b.shecho pn:$#echo p: $*echo p: $@ a.shecho $#echo './b.sh $*'./b.sh ...原创 2011-11-04 16:01:27 · 220 阅读 · 0 评论 -
linux Shell命令行输入的一些实用快捷键
下面是一些shell的常用快捷键,快捷键玩熟悉了在一定程度上是可以提高工作效率滴…Ctrl + a 切换到命令行开始Ctrl + e 切换到命令行末尾Ctrl + l 清除屏幕内容Ctrl + u 清除剪切光标之前的内容Ctrl + k 剪切清除光标之后的内容Ctrl + w 删除光标所指的一个单词(从光标到单词的开头)Ctrl + y 复制剪切板里的内容Ctrl + h 类似...原创 2011-10-28 14:07:27 · 352 阅读 · 0 评论 -
用shell简单的获取多个文件的字段个数和
有时候会遇到如下情况,现有几个文件,每个文件的每条记录都含有通过tab(也可以是其它字符)切割的字段值,并且第一个字段是key,其它字段都是不一样的,现在需要求所有文件中除了key以外的所有字段个数。当然可以通过写一段简单的脚本实现,其实用一段简单的shell命令就可以实现head -1 -q tmp1.txt tmp2.txt | awk 'BEGIN{FS="\t"; i=0;} {i=i...原创 2011-10-28 12:41:41 · 393 阅读 · 0 评论 -
shell脚本获取后台子进程的退出状态
(echo aaa >> /dev/null;sleep 10; exit 0)&(echo bbb >> /dev/null;sleep 11; exit 1)&(echo ccc >> /dev/null;sleep 12; exit 0)&(echo ddd >> /dev/null;sleep 5; ...原创 2011-09-21 21:02:55 · 1445 阅读 · 0 评论 -
Shell使用getopts读取参数
使用getopts可以处理<command> [-i infile] outfile。不过还不知道怎么处理像<command> outfile [-i infile]。因为getopts遇到outfile时就会放弃分析。usage='Usage: <command> [-i infile] outfile'infile='/tmp/infile'...原创 2012-01-12 17:22:05 · 215 阅读 · 0 评论 -
shell函数的局部变量,全局变量。
在shell脚本中定义函数时,曾被局部变量,全局变量搞的头昏脑胀的。于是就写了两个脚本尝试了一下。首先看第一个例子#!/bin/bashfunction test() { echo "d_o_f:" $d_o_f d_i_f="defined in function" d_o_f="modified in function" echo "d_i_...原创 2011-12-31 11:00:41 · 2259 阅读 · 0 评论 -
shell下list的使用
1、定义 list1=(a b c)2、获取item个数: ${#list1[@]}3、获取某个item:${list1[0]},${list1[1]}4、转换成以空格分隔各item的字符串: str=${list1[*]}5、把以空格分隔的字符串转换成list:str=a" "b" "c; list1=($str); echo ${#list1[@]};这条用的场所,主要是把...原创 2011-12-20 17:26:59 · 20282 阅读 · 0 评论 -
在shell脚本运行时如何获取自己所在的目录
在shell脚本中有时需要用到相对路径,来减少子程序的路径配置,但是这样主程序还是需要知道自己所在的路径。有什么办法可以自动获取主程序所在的目录,而不用配置呢。总结了一下,运行脚本的方式有以下几种(假如主程序名为"test.sh")1、./test.sh or sh test.sh2、test.sh (路径配置在了环境变量中)3、../bin/test.sh or ...原创 2011-12-01 15:55:46 · 966 阅读 · 0 评论