290112011 发表于 2018-8-29 11:17:12

shell 小知识(不定时更新)

  ###判断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个文件
# du -s * | sort -n | tail  ###统计keyword在日志中的出现次数
# grep -c ".net" resolve.txt  
28
  ###!$
  !$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串。如:你可能会这样:
$mkdir mydir  
$mv mydir yourdir
  
$cd yourdir
  可以改成:
$mkdir mydir  
$mv !$ yourdir
  
$cd !$
  
sudo !!
  以root的身份执行上一条命令
  ###shell时间
  2天前时间:
# 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
  当前时间:
# date '+%Y-%m-%d %H:%M:%S'  
2015-02-05 04:19:02
  ###tar只解析tar包中的某个文件
  列出tar包中的文件:
# 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文件:
# tar xvpf test.tar.gz test/svntest  之后可以看到,root目录下多了一个test目录,进入test目录,可以看到解压出来的svntest目录


页: [1]
查看完整版本: shell 小知识(不定时更新)