主页

Linux sed命令

sed sed(stream editor)是linux下的一个强大的文本处理工具。 它根据用户指定的地址(ADDRESS)匹配到相应的行,并且逐行对文本进行用户指定的动作(删除,更新,插入,打印)。 sed [OPTION] 'ADDRESS&&ACTION' FILE_NAME OPTION: # OPTION -i 直接更新文件,而不是只把修改后的内容输出到终端 -n 只打印被sed处理过的行 -f 读取文件内到sed动作并执行 -r 支持扩展到正则表达式 ADDRESS格式: # ADDRESS n //第n行 n1,n2 //n1到n2行 first~step //从f...

阅读更多

Linux Shell脚本攻略 -- 系统管理

ps ps命令默认只显示当前终端开启的进程。 使用-e或者-A可以列出其他终端的进程。 使用-f可以列出更多列的信息。 使用-o可以指定显示哪些数据。 ps -eo comm,pcpu | head -5 pcpu --> cpu占用率 pid --> 进程ID ppid --> 父进程ID pmem --> 内存使用率 comm --> 可执行文件名 cmd --> 简单命令 user --> 启动进程的用户 nice --> 优先级 time --> 累计cpu时间 etime --> 进程启动后运行的时长 tty --> 所关联的TTY设备 euid -->...

阅读更多

Linux Shell脚本攻略 -- 系统监控

du (disk usage) du可以查看文件或目录占用的磁盘空间 du file1 file2 du -a directory //递归输出目录统计结果 du -h //以KB MB为单位显示磁盘使用情况 du -c file1 file2 //给出两个文件的和 du -s dir //给出当前目录下所有文件的磁盘使用和 du -b //以字节为单位 du -k //以KB为单位 du -m //以MB为单位 du -B BLOCK_SIZE //以BLOCK_SIZE为单位 du --exclude "WILDCARD" dir du --exclude-fr...

阅读更多

Linux Shell脚本攻略 -- 网络

DNS host命令可以列出某个域名的所有ip nslookup可以指定查询的类型,可以查到DNS记录的生存时间,还可以指定使用哪个DNS服务器进行解释。 可以通过向/etc/hosts中加入条目来实现名字自解析 echo 192.168.0.2 server2 >> /etc/hosts 并行ping # method 1 for ip in 192.168.0.{1..255}; do ( ping $ip -c 2 &> /dev/null; if [ $? -eq 0 ];then echo $ip is alive fi )& done wait # method 2: fping -a显示出所有活动主机的ip ...

阅读更多

Linux Shell脚本攻略 -- 归档

tar # 归档 tar -cf output.tar [SOURCES] # -t列出归档文件中包含的文件 tar -tf archive.tar # -r追加 tar -rvf original.tar new_file # 提取 tar -xf archive.tar tar -xf archive.tar -C /path/to/extraction_directory # 指定stdout为输出文件 tar -cvf - files | ssh user@hostname "tar -xv -C /path/to/extraction_directory" # 合并两个归档文件 tar -Af file1.tar file2.tar # 当文件比归档文件中的同名...

阅读更多

Linux Shell脚本攻略 -- Git

配置 配置Git的时候,加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。 配置文件放哪了?每个仓库的Git配置文件都放在.git/config文件中: $ cat .git/config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] url = git@github.com:michaelliao/learngit.git fetch = +...

阅读更多

Linux Shell脚本攻略 -- 让文本飞

regexper # position marker anchor 位置标记锚点 # 标志符 A . [] [^] # 数量修饰符 ? + * {n} {n,m} {n,} # other () 将括号中的内容视为一个整体 | \ # -c统计匹配的行树 # -n打印行号 # -b打印出匹配内容出现在行中的偏移 # -l打印出匹配该模式的文件名 # -L打印出不匹配该模式的文件名 # -E -v -o # -R is eqaul to -r # -e指定多个模式 grep -e "patten1" -e "patten2" # 打印匹配的数量 echo -e "1 2 3 4\nhello\n 5 6" | ...

阅读更多

Linux Shell脚本攻略 -- 以文件之名

dd dd if=/dev/zero of=junk.data bs=1M count=1 1B = C 2B = w 512b = B 1024B = K 1024KB = M 1024MB = G # 利用dd命令可以测试内存操作速度 dd if=/dev/zero of=/dev/null bs=1G count=10 comm命令作用于两个排序过的文件,显示两个文件的差异 # A.txt apple orange gold silver steel iron # B.txt orange gold cookies carrot $comm A.txt B.txt apple carrot cookie...

阅读更多