1. Open a new text editor window and type: #!/bin/bash # Purpose: # Date: # Author: 2. Save it as template.sh 3. Make it executable: chmod u+x template.sh 4. Use as template for future scripts, i.e. cp template.sh nc2ascii.sh Then edit the new script file. This retains the script's executable permissions . 5. The header will let you find your scripts later using searching tools.
在家目录下边touch一个“.inputrc”,内容及功效如下: \e[A: history-search-backward #定义下箭头为根据已键入内容向后搜索命令历史 \e[B: history-search-forward #定义上箭头为根据已键入内容前后搜索命令历史 set show-all-if-ambiguous on #自动完成有多种可能时给出提示,而不是报警 set completion-ignore-case on #自动完成忽略大小写 这里是完整的选项说明: https://www.gnu.org/software/bash/manual/html_node/Readline-Init-File-Syntax.html
利用sort与uniq过滤文件 2014–03–28 18:11:32 设有两类文件, 扩展名分别为A和B, 可能的集合关系如下: 并集 A ∪ B : 属于A或B的文件, 所有可能文件 ls *.A *.B | sort | uniq 交集 A ∩ B : 同时属于A和B的文件, A和B互有对应的文件 ls *.A *.B | sort | uniq -d 交集的补集 A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ : 不同时属于A和B的文件, A和B无对应的文件 ls *.A *.B | sort | uniq -u A的差集 A − B = A ∩ A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ : 属于A但不属于B的文件 ls *.A *.B *.B | sort | uniq -u B的差集 B − A = B ∩ A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ : 属于B但不属于A的文件 ls *.B *.A *.A | sort | uniq -u 若A包含B, 上面的做法可以简化. 并集 A ∪ B = A : ls *.A 交集 A ∩ B = B : ls *.B 交集的补集 A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ = A − B : ls *.A *.B | sort | uniq -u A的差集 A − B = A ∩ A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ : ls *.A *.B | sort | uniq -u B的差集 B − A = B ∩ A ∩ B ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ ˉ = ∅ 应用场景 提交很多作业, 每个作业有一个输入文件, 完成后会产生一个输出文件, 输入文件和输出文件存放于同一文件夹下 适当利用这些命令可以快速过滤文件, 知道哪些作业已完成, 哪些作业未完成, 也可以快速地将已完成的作业移到其他地方保存.