Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4000320
  • 博文数量: 536
  • 博客积分: 10470
  • 博客等级: 上将
  • 技术积分: 4825
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-26 14:08
文章分类

全部博文(536)

文章存档

2024年(3)

2021年(1)

2019年(1)

2017年(1)

2016年(2)

2013年(2)

2012年(10)

2011年(43)

2010年(10)

2009年(17)

2008年(121)

2007年(252)

2006年(73)

分类: LINUX

2008-02-17 20:38:14

认为这篇文章shell使用很不错转来的, 来源: http://blog.chinaunix.net/u1/34784/showart.php?id=477680
以下我在Linux, AS4U3上测试通过.

1、在单个命令中创建目录树
通常的做法:
~ $ mkdir tmp
~ $ cd tmp
~/tmp $ mkdir a
~/tmp $ cd a
~/tmp/a $ mkdir b
~/tmp/a $ cd b
~/tmp/a/b/ $ mkdir c
~/tmp/a/b/ $ cd c
~/tmp/a/b/c $

比较不错的做法: 使用一个命令来定义目录树
~ $ mkdir -p tmp/a/b/c
~ $ mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}
注意: {}符号的使用噢!

2、更改路径, 不要移动存档
使用选项 -C 来解压缩 .tar 存档文件, 起到临时切换工作目录的作用。
~ $ tar xvfz newarc.tar.gz -C tmp/a/b/c
注意: -C参数必须放在最后面, 使用顺序别出错.

3、将命令与控制操作符组合使用
~ $ cd tmp/a/b/c && tar xvf ~/archive.tar
在此例中,存档的内容将提取到 ~/tmp/a/b/c 目录中,除非该目录不存在。如果该目录不存在,则 tar 命令不会运行,因此不会提取任何内容。
如果第一个命令运行成功,则第二个命令将运行。如果第一个命令失败,则第二个命令根本就不运行
注意: &&, 和~/符号的使用

将命令与控制操作符组合使用
~ $ cd tmp/a/b/c || mkdir -p tmp/a/b/c
|| 控制操作符分隔两个命令,并且仅当第一个命令返回非零退出状态时才运行第二个命令。
换句话说,如果第一个命令成功,则第二个命令不会运行。
如果第一个命令失败,则第二个命令才会 运行。
在测试某个给定目录是否存在时,通常使用此操作符,如果该目录不存在,则创建它!
阅读(1208) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~