这是最重要的问题之一。如何有效地编写脚本?什么是坏方法,什么是好方法?我知道一些,我将在这里指出。如果有人确实知道其他事情,请留下评论。提出这个问题是为了了解可用的最佳实践。用谷歌搜索所有东西是非常困难的,而且所有的东西总是不会出现在同一个地方。因此,这个问题已向所有有经验的人提出。我自己也在努力学习这些东西。因此,我认为你们在这里提供的任何评论/答案将对我和像我这样的人非常有帮助。提前致谢 。
答案1
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
2. 归档:
有时我看到人们将像 a.tar 这样的任何 tar 移动到另一个目录,而该目录恰好是他们想要提取存档的目录。但这不是必需的,因为可以在此处使用 -C 选项来指定用于此目的的目录。
~ $ tar xvf -C tmp/a/b/c newarc.tar.gz
3.控制算子的重要性:
假设有两个命令,但只有第一个命令运行时,才必须运行第二个命令,否则第二个命令就白跑了。因此,只有当另一个命令返回零退出状态时,才必须运行此处的命令。
例子 :
~ $ cd tmp/a/b/c && tar xvf ~/archive.tar
在上面的示例中,需要在目录 :c 中提取存档的内容,但前提是该目录存在。如果该目录不存在,则不会运行 tar 命令,因此不会提取任何内容。