Category: Shell

  • shell学习小记2

    到昨天为止,把《Linux脚本攻略》看完了,全书有273页,老实说是最近少有的我能从头看到尾的书。evernote中我大概记了10个note,以下是从中抽选的一些笔记,之后有空的话还会加更多的。 按照CPU使用量排序(倒序)进程 ps -eo comm,pcpu –sort -pcpu | head ps -e 表示显示所有进程 ps -o 表示筛选显示的列,comm是可执行文件,pcpu是CPU使用量 ps –sort 表示排序依据,-pcpu表示按照CPU使用量倒排(+pcpu表示正排) head表示截图头十行 kill相关 列出所有执行的信号 kill -l 给指定的进程发送信号 kill -s SIGNAL process_id 常见信号 SIGINT 2 ctrl + c SIGKILL 9 强制退出 SIGSTP 20 ctrl + z which, whereis & whatis which cmd # 打印命令位置 whereis cmd # 打印命令位置和手册位置 whatis…

  • 用tput做一个简单的倒计时

    以前一直很好奇那种在shell里面出现的动态改变当前行内容的效果,比如你用apt-get install安装包时,shell最下面一行是进度,是不会被冲掉的,内容会动态改变;还有类似wget下载文件时的进度效果等。 最近学习shell,发现这些效果可以通过一个叫做tput的命令来实现,以下就是我在学习tput时做出来的一个简单的倒计时效果。shell脚本如下: #!/bin/bash if [ $# -ne 1 ]; then echo “Usage $0 count” exit 1 fi echo -n ‘Countdown: ‘ tput sc for i in `seq $1 | tac`; do tput rc tput ed echo -n $i sleep 1 done echo 第一段是简单的参数检查,要求必须带一个参数,即count,比如10。 从echo -n ‘Countdown: ‘开始倒计时。tput这里有三次命令sc, rc, ed分别是保存当前光标位置,恢复保存的光标位置和清除从当前光标位置到设置行末尾的内容。 你可以想象,当前位置不断显示不同内容的原理是动态改变这个位置上的内容,对于图像来说,记录某个对象的位置,刷新显示时定位笔刷到对象的位置,清除对象所在位置上的内容,最后绘制内容。用tput来说,就是rc -> ed -> “绘制”命令。sc肯定是在最前面只做一次的,因为只要记录一次光标位置就行。…

  • shell学习小记1

    以下内容为本人学习《Linux Shell脚本攻略》的一些笔记。如果你想好好学shell的话,个人非常推荐这本书。 关于软链接和链接文件 除了常规的ls -l找出链接文件之外,还有以下两种方式: readline link_file 上面的命令直接打印链接文件的目标文件。 find -type l 上面的命令查找当前目录下的所有链接文件。 链接文件的方式基本上都是ln命令,ln的参数-s指定创建的是软链接文件而不是硬链接。软链接和硬链接的主要区别个人归纳为: 目录必须用软链接 软链接支持跨分区,硬链接不行 硬链接创建的文件和原始文件大小一致

  • linux命令使用小记4

    linux真的是学无止境,不要认为你已经熟练掌握常规命令了,比如grep了,下面就是一些例子。 grep –color与less -r less -r表示显示控制字符,比如高亮,但是如果你希望less时显示grep的高亮的话,不能只指定grep –color,而要用grep –color=always,比如 grep –color=always foo foo.txt | less -r