几个Linux命令行小技巧

使用一个命令来创建目录树
~ $ mkdir -p tmp/a/b/c

 

使用一个命令来定义复杂的目录树
~ $ mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}

 

使用选项 -C 来解压缩 .tar 存档文件到指定目录
~ $ tar xvf -C tmp/a/b/c newarc.tar.gz

 

按顺序执行多个命令
~ $ cd / ; ls -l

 

条件||控制执行多个命令
(如果tmp/a/b/c目录不存在,cd命令返回非0值,继续执行mkdir命令)
~ $ cd tmp/a/b/c || mkdir -p tmp/a/b/c

 

条件&&控制执行多个命令
(当tmp/a/b/c目录存在时,cd命令返回0,继续执行tar命令)
~ $ cd tmp/a/b/c && tar xvf ~/archive.tar

 

使用Subshell运行命令列表
(使用括号将命令列表包括在单个组中。这样做将在一个新的Subshell中运行命令,并允许您重定向或收集整组命令的输出)
~ $ ( cd tmp/a/b/c/ || mkdir -p tmp/a/b/c && /
> VAR=$PWD; cd ~; tar xvf -C $VAR archive.tar ) /
> | mailx admin -S "Archive contents"

 

使用xargs批处理执行命令
(前一个命令ls输出的log文件列表,作为下一个命令file输入的参数逐个运行)
~ $ ls /var/logs/*.log | xargs file

/var/log/anaconda.log:     UTF-8 Unicode English text
/var/log/boot.log:         empty
/var/log/prelink.log:      ASCII English text
/var/log/scrollkeeper.log: UTF-8 Unicode text
/var/log/Xorg.0.log:       ASCII English text
/var/log/yum.log:          empty

 

使用awk分割文本文件
(这里使用/为分隔符)
~ $ echo 2009/09/09 > test.txt
~ $ awk -F/ '{print $1,$2,$3}' test.txt
2009 09 09

 

(参考了ibm developerWorks一些文章)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值