21

您正在学习 Linux 吗?本文对于非常有用的 AWK 文本操作工具进行了介绍,非常有价值。

AWK 实用工具带有其自己的自包含语言,它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人 Alfred Aho、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母)的最大功能取决于一个人所拥有的知识。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。

AWK 是什么?

最简单地说,AWK 是一种用于处理文本的编程语言工具。AWK 实用工具的语言在很多方面类似于 shell 编程语言,尽管 AWK 具有完全属于其本身的语法。在最初创造 AWK 时,其目的是用于文本处理,并且这种语言的基础是,只要在输入数据中有模式匹配,就执行一系列指令。该实用工具扫描文件中的每一行,查找与命令行中所给定内容相匹配的模式。如果发现匹配内容,则进行下一个编程步骤。如果找不到匹配内容,则继续处理下一行。

尽管操作可能会很复杂,但命令的语法始终是:

awk '{pattern + action}' {filenames}

其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号 ({}) 不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。 阅读全文 »

作者:jock

21

语法格式

sort [ -A ] [ -b ] [ -c ] [ -d ] [ -f ] [ -i ] [ -m] [ -n ] [ -r ] [ -u ] [ -o OutFile ] [ -t Character ] [ -T Directory ] [ -y [ Kilobytes ] ] [ -z RecordSize ] [ [ + [ FSkip ] [ .CSkip ] [ b ] [ d ] [ f ] [ i ] [ n ] [ r ] ] [ - [ FSkip ] [ .CSkip ] [ b ] [ d ] [ f ] [ i ] [ n ] [ r ] ] ] [ -k KeyDefinition ] [文件 ]

使用说明

sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出。如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序。-(减号)代替文件名指定标准输入。如果您不指定任何文件名,那么该命令对标准输入排序。可以使用 -o 标志指定输出文件。

如果不指定任何标志,sort 命令基于当前语言环境的整理顺序对输入文件的所有行排序。

主要参数

-A 使用 ASCII 整理顺序代替当前语言环境的整理顺序在逐字节的基础上排序。
-b 忽略前导空格和制表符,找出字段的第一或最后列。
-c 检查输入是否已按照标志中指定的排序规则进行排序。如果输入文件排序不正确,就返回一个非零值。
-d 使用字典顺序排序。比较中仅考虑字母、数字和空格。
-f 比较前将所有小写字母改成大写字母。
-i 比较中忽略所有非显示字符。
-k KeyDefinition 指定排序关键字。KeyDefinition 选项的格式为: [ FStart [ .CStart ] ] [ Modifier ] [ , [ FEnd [ .CEnd ] ][ Modifier ] ]排序关键字包括所有以 FStart 变量指定的字段和 CStart 变量指定的列开头的字符及以 FEnd 变量指定的字段和 CEnd 变量指定的列结束的字符。Modifier 变量的值可以是 b、d、f、i、n 或 r。修饰符与同一字母的标志等价。
-m 只合并多个输入文件;假设输入文件已经排序。
-n 按算术值对数字字段排序。数字字段可包含前导空格、可选减号、十进制数字、千分位分隔符和可选基数符。对包含任何非数字字符的字段进行数字排序会出现无法预知的结果。
-o OutFile 将输出指向 OutFile 参数指定的文件,而不是标准输出。OutFile 参数值可以与 File 参数值相同。
-r 颠倒指定排序的顺序。
-t Character 指定 Character 为单一的字段分隔符。 阅读全文 »

作者:jock

31

不要试图从本手册中去获取什么知识, 使用Vim更多的是一种技能而不是一种知识, Vim的学习需要的更多的不是头脑而是双手, 经常按书中的指示进行示例性的操作, 在学习Vim众多精致的技巧时, 不要贪图一下子全都掌握, 最好是看一条技巧后, 马上在编辑器上进行操作, 这样在以后实际的编辑操作时你的手指就会建立一种自然的反应而不是由头脑来搜索该使用哪一条操作技巧. 建议读者不动手来不读书. 如果手边没有一个合适的Vim编辑器环境可供操练, 那么建议读者还是不要在这里浪费时间.
如果读者是在气温比较低的条件下阅读此书从而增加了你动手的惰性时, 也请不要浪费时间, 这会严重影响学习的效果.虽然本书鼓励读者多动手, 但也绝非说一点不要动脑, 相反, Vim中多达几百个的命名与操作方式有它自己的规律可循, 在你的手指能对要完成的编辑任务条件反射之前, 最好还是由头脑做一点辅助. 经常总结自己最经常进行的操作. 为这些操作找出最简练的办法来, 在每学习一条新的操作之前与自己以前的编辑经验比较一下, 找出节省你敲击键盘次数的捷径来. 是提升Vim经验值的不二法门. 阅读全文 »

作者:堕落天使 Tags: , , ,

29

1.安装rsync。
rsync的编译安装非常简单,只需要以下简单的几步:
[root@www rsync-2.4.6]# ./configure
[root@www rsync-2.4.6]# make
[root@www rsync-2.4.6]# make install
但是需要注意的是必须在服务器A和B上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web服务器A上运行rsync守护进程(/usr/bin/rsync –daemon),在B上定时运行客户程序来备份web服务器A上需要备份的内容。

2.配置服务器端/etc/rsyncd.conf,例如:
uid = nobody
gid = nobody
max connections = 30
timeout = 1800
#use chroot = yes
hosts allow =192.168.41.133 192.168.41.127 192.168.41.128 192.168.41.178 61.135.132.17 192.168.41.163 192.168.41.164 192.168.41.126 192.168.132.26
# hosts above  abc4
syslog facility = local7
pid file = /etc/rsyncd.pid


[rsync_content]
       path=/usr/local/apache/htdocs
       comment = html
       list    = no


[rsync_keywords]
       path=/usr/local/apache/htdocs/data
       comment =       data
       read only=      no
       list    =       no

作者:堕落天使 Tags: ,