
Shell
文章平均质量分 83
ysdaniel
这个作者很懒,什么都没留下…
展开
-
正则表达式 linux shell
正则表达式热身正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。例如 grep, expr, sed , awk. 或Vi中经常会使用到正则表达式,为了充分发挥 shell 编程的威力,需要精通正则表达式。转载请标明:http://blog.youkuaiyun.com/y原创 2011-11-11 11:16:44 · 92482 阅读 · 9 评论 -
Shell中[和[[的异同
Shell中[和[[的异同 整理自:http://bbs.chinaunix.net/thread-278896-2-1.html 1. 概念上来说"[[",是关键字,许多shell(如ash bsh)并不支持这种方式。ksh, bash(据说从2.02起引入对[[的支持)等支持。"["是一条命令, 与test等价,大多数shell都支持。在现代的大多数sh实现中,转载 2012-08-24 23:39:47 · 18402 阅读 · 0 评论 -
SED单行脚本快速参考
--------------------------------------------------------------------------------------SED单行脚本快速参考(Unix 流编辑器) 2005年12月29日英文标题:USEFUL ONE-LINE SCRIPTS FOR SED (Unix stream edit转载 2012-08-24 23:46:45 · 1335 阅读 · 0 评论 -
linux shell awk获得外部变量(变量传值)简介
linux shell awk获得外部变量(变量传值)简介 转自:http://www.cnblogs.com/chengmo/archive/2010/10/03/1841753.html 这里提到awk,相信写shell的朋友都会接触到。AWK 是一种用于处理文本的编程语言工具。AWK 提供了极其强大的功能:1. 可以进行正则表达式的匹配 2. 样式装入转载 2012-08-24 23:48:14 · 2052 阅读 · 0 评论 -
linux shell 关联数组 hash
shell 的关联数组Shell Associative Array bashi没有原生的对于类似hash table的支持,不像perl或python.下标数组元素是通过数组下标(数组下标可以是算术表达式,其结果必须是一个整数)来访问的,但是这种访问方式在表达某些关联性很强的数据时会存在限制。shell 提供了另外一种数组,其可以使用任意的字符串作为下标(不必是整数)来访转载 2012-08-26 20:17:01 · 24285 阅读 · 0 评论 -
syntax error: unexpected end of file windows linux换行 文件格式
从window拷贝shell文件到linux执行时报错: syntax error: unexpected end of file原因:文件格式的问题,window以doc格式存储,linux以unix格式存储。 在windows里,换行用的两个符号,回车换/r行符号/n,在linux下只需一个符号/n就可以了.解决方法:1、用vi 打开shell文件,输入 : set f原创 2012-08-26 15:27:56 · 1193 阅读 · 0 评论 -
linux awk 内置函数详细介绍(实例)
linux awk 内置函数详细介绍(实例) 转:http://www.cnblogs.com/chengmo/archive/2010/10/08/1845913.html 这节详细介绍awk内置函数,主要分以下3种类似:算数函数、字符串函数、其它一般函数、时间函数 一、算术函数:以下算术函数执行与 C 语言中名称相同的子例程相同的操作:函数名转载 2012-08-24 23:50:34 · 857 阅读 · 0 评论 -
awk 正则表达式、正则运算符详细介绍
awk正则表达式、正则运算符详细介绍 转自:http://www.cnblogs.com/chengmo/archive/2010/10/11/1847772.html 前言:使用awk作为文本处理工具,正则表达式是少不了的。 要掌握这个工具的正则表达式使用。其实,我们不必单独去学习它的正则表达式。正则表达式就像一门程序语言,有自己语法规则已经表示意思。 对于不同工具,其实大部分表转载 2012-08-24 23:47:28 · 1121 阅读 · 0 评论 -
linux diff
linux diff作者:zieckey (zieckey@yahoo.com.cn) All Rights Reserved! 有这样两个文件: 程序清单1 :hello.c #include int main(void) { char msg[] = "Hello world!"; puts(msg); printf("W转载 2012-08-28 16:48:00 · 858 阅读 · 0 评论 -
Linux awk命令详解
Linux awk命令详解AWK介绍0.awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk。1.awk语言的最基本功能是在文件或字符串中基于指定规则来分解抽取信息,也可以基于指定的规则来输出数据。完整的awk脚本通常用来格式化文本文件中的信息。2.三种方式调用awk1) awk [opion] 'awk_script' input_转载 2011-09-25 12:39:05 · 1931 阅读 · 0 评论 -
C程序调用shell脚本共有三种方法
C程序调用shell脚本共有三种方法C程序调用shell脚本共有三种法子 :system()、popen()、exec系列函数call_exec1.c ,内容为:system() 不用你自己去产生进程,它已经封装了,直接加入自己的命令exec 需要你自己 fork 进程,然后exec 自己的命令popen() 也可以实现执行你的命令,比system 开销小1)s转载 2012-07-29 10:15:10 · 1260 阅读 · 0 评论 -
删除文件中的空行和注释行 linux shell
删除文件中的空行和注释行//sed -e "s/#.*/ /g" test_file.conf | awk '{if (length !=0) print $0}'更正为:sed -e "s/#.*//g" test_file.conf | awk '{if (length !=0) print $0}'sed 命令检查第一行是否以“#”字符开始,“.*”表示任意个字符串。*原创 2011-12-11 18:18:59 · 13348 阅读 · 3 评论 -
scp linux
Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程、从远程复制到本地是两种使用方式。这里有具体举例:==================Linux scp 命令==================scp 可以在 2个 linux 主机间复制文件;命令基本格式:scp [可选参数] file_source file_targ转载 2011-12-11 22:15:57 · 783 阅读 · 0 评论 -
查找某进程 但过滤grep进程本身 方法
在进程表中查找特定进程的命令通常如下:ps -ef | grep some_string 输出时,不仅会输出将要查找的进程数据,清空包括grep进程本身的数据,因为查找串包含在grep调用中。过滤grep本身方法有:ps -ef | grep some_string |grep -v grep-v:表示忽略grep本身。 还有一个方法:ps -ef | grep [s]原创 2011-12-11 19:39:32 · 19632 阅读 · 1 评论 -
cp linux
cp --helpUsage: cp [OPTION]... [-T] SOURCE DEST or: cp [OPTION]... SOURCE... DIRECTORY or: cp [OPTION]... -t DIRECTORY SOURCE...Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.Ma原创 2011-11-13 12:04:46 · 1760 阅读 · 0 评论 -
实战培训初级班第二次课——我的课前答案 过滤出一个目录中的所有目录(不包含下面的子目录
1、过滤出一个目录中的所有目录(不包含下面的子目录)?解答:ls -l |grep "^d"find . ! -name "." -type d -prunels -F | grep /$ ## $表示以/结尾的-F, –classify 加上文件类型的指示符号 (*/=@| 其中一个)不加任何标识符,表示它是一般文件。原创 2011-11-01 11:57:58 · 2769 阅读 · 0 评论 -
head linux
head --helpUsage: head [OPTION]... [FILE]...Print the first 10 lines of each FILE to standard output.With more than one FILE, precede each with a header giving the file name.With no FILE, or原创 2011-11-13 11:00:15 · 684 阅读 · 0 评论 -
linux shell 正则表达式(BREs,EREs,PREs)差异比较
linux shell正则表达式(BREs,EREs,PREs)差异比较 转自:http://www.cnblogs.com/chengmo/archive/2010/10/10/1847287.html 则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式转载 2012-08-24 23:52:53 · 805 阅读 · 0 评论 -
awk的数组学习心得
awk的数组学习心得 转自:http://blog.chinaunix.net/space.php?uid=2598756&do=blog&id=293231 在文本处理的工作中,awk的数组是必不可少的工具,在这里,同样以总结经验和教训的方式和大家分享下我的一些学习心得,如有错误的地方,请大家指正和补充。awk的数组,一种关联数组(Associative Arrays),下标转载 2012-08-24 23:53:44 · 1950 阅读 · 0 评论 -
linux bash bc awk 浮点 计算 比较
Bash中的变量没有数据类型的定义,这样,在处理字符串和数值时会带来麻烦。例如,使用-eq比较数值,==比较字符串等。另外,Bash中常用的let、expr仅支持整数运算,不支持浮点数计算。要实现浮点数计算,可以使用bc或awk。一、bc bc是一个常用的计算器,可以计算浮点数:引用$ bcbc 1.06Copyright 1991-1994, 1997, 1998转载 2012-11-27 16:23:29 · 12814 阅读 · 0 评论 -
《dig挖出DNS的秘密》-linux命令五分钟系列之三十四
转自:http://roclinux.cn/?p=2441 http://roclinux.cn/?p=1820域名DNS解析完整解析过程最近在研究bind,科普一下dns查询流程 1.用户向本地DNS发出解析请求2.本地DNS向根服务器(根服务器地址在本地有个静态列表)请求谁是该域名的顶机DNS(并把结果缓存在本地)3.根DNS告诉本地D转载 2012-10-16 11:54:16 · 2516 阅读 · 0 评论 -
《nslookup通往DNS的桥梁》-linux命令五分钟系列之三十三
转自:http://roclinux.cn/?p=2441本原创文章属于《Linux大棚》博客。博客地址为http://roclinux.cn。文章作者为roc。===【nslookup何许人?】nslookup命令,是Linux里非常常用的网络命令,简而言之就是“查DNS信息用的”。通过man nslookup可以看到对于nslookup的转载 2012-10-16 11:52:29 · 1943 阅读 · 0 评论 -
linux find prune exec 排除某目录或文件 执行
查找cache目录下不是html的文件find ./cache ! -name '*.html' -type f列出当前目录下的目录名,排除includes目录,后面的-print不能少find . -path './includes' -prune -o -type d -maxdepth 1 -print排除多个目录,”(“前是带”\”的fi转载 2012-09-19 13:44:52 · 30029 阅读 · 2 评论 -
linux awk 3
awk的基本功能是对文件进行指定规则浏览和抽取信息。基本格式:(1) awk [-F 分隔域] 'command' input-file(s)(2) 写入shell脚本中(3) awk -f awk-script-file input-file(s)注意:这里如果使用if等编程语句,要用{}括起来。testname grade score转载 2012-09-17 18:10:37 · 2212 阅读 · 0 评论 -
linux wget2
Wget是平时经常会用到的一个工具,这个工具其实有着非常丰富的参数和配置,能够实现很强大的功能。比较常用的一个就是抓站或者为网站做镜像。wget -np -x -r -k -E http://www.baidu.com上面这个命令就实现了对 www.baidu.com 这个网站页面的递归抓取,并且将页面中的链接保存为相对链接,这样能够方便我们在本地查看网站的页面。如果我们转载 2012-09-17 18:02:04 · 497446 阅读 · 0 评论 -
找出两文件中相同的行,两文件不同的行,文件1有文件2没有的行
删除两文件中相同的行,列出两个文件中不同的行:cat 09-07_as_route 09-14_as_route | sort | uniq -u | sort -n -或awk '{print}' 09-07_as_route 09-14_as_route | sort | uniq -u | sort -n 注: 这两个文件09-07_as_route 09-14_as_ro原创 2012-09-17 16:20:52 · 20189 阅读 · 0 评论 -
linux wget
linux wgetwget用英语定义就是the non-interactive network downloader,翻译过来就是非交互的网络下载器。####wget: -t 0:always retry downloading if connection failed####wget: -w 30:wait 30 SECONDS between retrievals##转载 2012-09-17 18:00:52 · 5247 阅读 · 1 评论 -
linux sz rz
我使用过的Linux命令之sz - 下载文件,无需ftp/sftp本文链接:http://codingstandards.iteye.com/blog/827637 (转载请注明出处)用途说明sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。相对应的从本地上传文件到Linux服务器,可以使用rz命令。参见《我使用过的Linux命令之rz转载 2012-08-25 21:51:57 · 11961 阅读 · 0 评论 -
linux tee
linux tee命令linux tee命令详解tee功能说明:读取标准输入的数据,并将其内容输出成文件。语 法:tee [-ai][--help][--version][文件…]补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。我们可利用tee把管道导入的数据存成文件,甚至一次保存数份文件。参 数:-a 附加转载 2012-08-26 16:03:21 · 2499 阅读 · 0 评论 -
python中调用shell
python中调用shell 转:http://blog.sina.com.cn/s/blog_5357c0af0100yzet.html 1.1 os.system(command) 在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态。这实际上是使用C标准库函数system()实现的。这个函数在执行command命令时需要重转载 2012-08-25 00:15:46 · 1655 阅读 · 0 评论 -
Bash编程中各类括号的应用
Bash编程中各类括号的应用 整理自:http://hi.baidu.com/leejun_2005/blog/item/a09ae9b5ec26847e8ad4b2df.html ()在子shell中运行(a=1);echo $a,结果是空,因为a=1不是在当前shell中运行的(a=1);(echo $a)也是空的。()同时也是数组的赋值,比如a=(1 3 5),那么$转载 2012-08-25 00:03:34 · 875 阅读 · 0 评论 -
那些我自己了解的重定向
那些我自己了解的重定向 转自:http://blog.chinaunix.net/uid-25324849-id-3141027.html在学习shell的时候,重定向真的很重要,但是复杂一点的重定向就是太难搞懂了,我good 朋友在看《shell学习指南》161页的时候,问了我如下代码的意思:(以及书上的解释) exec 5>&2 把原来的标准错误转载 2012-08-25 00:02:48 · 719 阅读 · 0 评论 -
Shell的getopts和C语言的getopt对比
Shell的getopts和C语言的getopt对比 Note:shell的getopts来处理shell脚本命令行参数的的,c语言的getopt函数是处理C程序命令行参数的,刚刚开始的时候我没注意到两者竟然有不同的在处理数据的时候,真亏得我的一个不可失去的好友啊,呵呵。 注意:在shell和c里OPTIND和optind都指向下一个参数的位置1、 Shell的getopts转载 2012-08-25 00:00:59 · 1452 阅读 · 0 评论 -
Shell里的case和变量连接
Shell里的case和变量连接 部分来自:http://bbs.chinaunix.net/thread-542727-1-1.html 注意:C语言里的switch-case语句的用法,switch(number):{ case 1: printf(“ 1 ”);case 2: printf(“ 2 ”);case 3: printf(“ 4转载 2012-08-24 23:57:52 · 2534 阅读 · 0 评论 -
linux shell 字符串操作(长度,查找,替换)详解
linux shell字符串操作(长度,查找,替换)详解 转自:http://www.cnblogs.com/chengmo/archive/2010/10/02/1841355.html 在做shell批处理程序时候,经常会涉及到字符串相关操作。有很多命令语句,如:awk,sed都可以做字符串各种操作。 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操转载 2012-08-24 23:55:07 · 969 阅读 · 0 评论 -
stty linux
UNIX系统的命令很多,但是巧妙使用命令的方法更多。随着经验的积累和观察学习其他用户的实践,我们也可学会解决特殊问题的方法。这里谈谈自己使用UNIX系统中stty命令的一些体会,希望能与你共享。1.stty(set tty,设置tty)命令用于检查和修改当前注册的终端的通信参数。UNIX系统为键盘的输入和终端的输出提供了重要的控制手段,可以通过stty命令对特定终端或通信线路设置选项。转载 2011-11-13 10:59:24 · 2984 阅读 · 0 评论 -
linux date
linux date 的用法在linux shell编程中,经常用到日期的加减运算以前都是自己通过expr函数计算,很麻烦其实date命令本身提供了日期的加减运算非常方便。例如:得到昨天的时间date +%Y%m%d --date="-1 day"等于date +%F --date="-3 day"%F 作用与+%Y-%m-%d 等价。转载 2011-11-04 10:55:10 · 604 阅读 · 0 评论 -
id linux 显示用户名 id -nu
id --helpUsage: id [OPTION]... [USERNAME]Print user and group information for the specified USERNAME,or (when USERNAME omitted) for the current user. -a ignore, for compatibi原创 2011-11-17 11:02:55 · 6563 阅读 · 0 评论 -
Linux awk 2
Linux awk简简单单 awk非常的优秀,运行效率高,而且代码简单,对格式化的文本处理能力超强。基本上grep和sed能干的活awk全部都能干,而且干得更好。先来一个很爽的例子:文件a,统计文件a的第一列中是浮点数的行的浮点数的平均值。用awk来实现只需要一句话就可以搞定(当然,这个东东用python也可以很轻松的实现,只是无论如何都得新建一个文件;别妄想用bash s转载 2011-09-25 12:44:59 · 1101 阅读 · 0 评论 -
sed 用法
sed是一个流编辑器,通过多种类型转换来修改流经它的的文本。sed不会改变提供给它的源文件,而是把改变后的结果发送到stdout. sed中每次处理一行。 sed的元字符有 .*[]^${}/+?|() 元字符用法: 除^外,其他符号在[]内如果要匹配自己本身字符要加/,否则是元字符的意义。^在[]内开头表示否定,在[]内的其他地方表示原创 2010-12-01 16:42:00 · 1010 阅读 · 0 评论