###判断linux系统是32位还是64位

    可以用“getconf WORD_BIT”和“getconf LONG_BIT”获得word和long的位数,64位系统中应该分别得到32和64

    

if [ $(getconf WORD_BIT) = '32' ] && [ $(getconf LONG_BIT) = '64' ] ; then
   echo 64
else
   echo 32
fi



###在当前脚本中调用另外的脚本文件

方法:  (英文点). + 文件名 或者 source + 文件名

fist.sh :

#!/bin/bash
echo 'your are in first file'

second.sh:

#!/bin/bash
echo 'your are in second file'
source first
#或者用下面的方法
.first  



###列出当前目录下最大的10个文件

[root@puppetmaster ~]# du -s * | sort -n | tail



###统计keyword在日志中的出现次数 

[root@puppetmaster test]# grep -c ".net" resolve.txt 
28


###!$

!$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串。如:你可能会这样:           

$mkdir mydir            
$mv mydir yourdir
$cd yourdir

       

可以改成:          

$mkdir mydir          
$mv !$ yourdir          
$cd !$
sudo !!


以root的身份执行上一条命令



###shell时间

2天前时间:

[root@puppetmaster test]# date -d "2 days ago" +%Y-%m-%d  
2015-02-03

1天前时间:

date -d "yesterday" +%Y-%m-%d 

date -d "1 days ago" +%Y-%m-%d


当前时间:

[root@puppetmaster test]# date '+%Y-%m-%d %H:%M:%S'
2015-02-05 04:19:02



###tar只解析tar包中的某个文件

列出tar包中的文件:

[root@puppetmaster zhang]# tar -tf test.tar.gz 
test/
test/testssh.log.save
test/svntest/
test/svntest/.svn/
test/svntest/.svn/props/
test/svntest/.svn/prop-base/
test/svntest/.svn/text-base/
test/svntest/.svn/tmp/
test/svntest/.svn/tmp/props/
test/svntest/.svn/tmp/prop-base/
test/svntest/.svn/tmp/text-base/
test/svntest/.svn/entries


只解压svntest文件:

[root@puppetmaster root]# tar xvpf test.tar.gz test/svntest

之后可以看到,root目录下多了一个test目录,进入test目录,可以看到解压出来的svntest目录