2020年9月


awk 是常用的 Linux 文本操作命令和脚本语言。用来按行提取和处理文本内容,也可以执行简单的逻辑处理。

比如我们有一个 txt 文件:

ab.c 123 e.rt 456
oh.g 324 b.na 756
si.d 156 o.ui 452

阅读全文


执行 shell 脚本时经常会有传入参数,如:

./test.sh abcdef abc.bbb

以上的命令使用了两个传入参数,abcdef,abc.bbb

在脚本里使用时,$1 就表示第一个参数,$2 就表示第二个参数:

var1 = $1
var2 = $2

在脚本中有一种用法,如:${1%def}jjj
他的意思就是将 $1 最后的字符 def 替换为 jjj

newstr1 = ${1%def}jjj

newstr1 的值就是 abcjjj

newstr2 = ${2%.bbb}.ccc

newstr2 的值就是 abc.ccc


语法:

subprocess.check_output(args, *, stdin=None, stderr=None, shell=False, universal_newlines=False)

执行cmd命令并返回结果到字符串。

用法:

import subprocess

output = check_output(["cat", "/etc/hostname"]).strip()
print(output)

以上脚本会执行 cat /etc/hostname 命令然后将结果赋值给 output 变量。
strip() 可以将 string 的前后空格去掉。