记录今天开始新认识的命令
2018-12-20:发现好书《linux命令行和shell脚本编程大全》,后续结合书中内容学习
命令名 | 可用选项 | 说明 |
cd - | 回到上一次的目录,一直想知道,但一直懒的查 | |
chown | -R | 修改文件所属用户和用户组。之前居然会和chmod搞混... |
df | -h | 查看磁盘空间 |
dirname | 用于获取文件(或目录)所在路径。 不校验文件是否真实存在,其实就是取最后一个斜杠前的内容而已 | |
install | -m____ -d | 复制文件并赋指定权限,或创建目录并指定权限。 类似cp和mkdir |
readlink | -f | 找出符号链接所指向的位置。 -f:递归查找,直到所查询的文件为非链接文件为止 |
sed | 文本处理工具,类似awk,但是貌似只能支持行的处理。 sed '/test/'d example-----删除example文件所有包含test的行 sed 's/test/mytest/g' example-----在整行范围内把test替换为mytest。如果没有g标记,则只有每行第一个匹配的test被替换成mytest。 | |
stdbuf | -oL | 修改缓冲模式为行缓冲。解决一些管道导致的问题,参考 (当使用管道时,会变为使用全缓冲,这样一来,就要等到日志中写入的字节数填满buffer后才会输出) |
tee | 将标准输出保存到一个文件中,例: make 2>&1 | tee make.log | |
export
| export [-fnp][变量名称]=[变量设置值] 设置子shell进程可用的变量 不带参数的时候表示输出当前命令窗口的环境变量,带变量和设置值时用来设置变量值。 如果带-n参数和变量名但无设置值表示删除变量。 | |
type | 显示指定的单词如果作为命令将会如何被解释。 常用来判断指定字符串是否为指令,if type "$command" >/dev/null 2>/dev/null; then $command $argv fi | |
信号:
SIGTERM信号和SIGKILL信号都表示终止进程,但SIGTERM可以被程序捕捉,而SIGKILL则不可以。
因此,SIGTERM类似于问一个进程终止可好,让清理文件和关闭。因为这个原因,许多Unix系统关机期间,初始化问题SIGTERM到所有非必要的断电过程中,等待几秒钟,然后发出SIGKILL强行终止仍然存在任何这样的过程。
参考: