169it科技资讯
169it -->


当前位置:  互联网>综合
本页文章导读:
    ▪win7 打开防火墙端口      如果 Windows 防火墙阻止某一程序,而您希望允许该程序通过防火墙进行通信,通常可以通过在 Windows 防火墙允许的程序列表(也称为“例外列表”)中选中该程序来实现。若要......
    ▪Linux Shell脚本入门--awk命令详解       简单使用: awk :对于文件中一行行的独处来执行操作 。 awk -F :'{print $1,$4}'   :使用‘:’来分割这一行,把这一行的第一第四个域打印出来 。     详细介绍: AWK命令介绍 &......
    ▪Linux Shell脚本入门--Uniq命令      uniq  uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。也就是说,为了使uniq起作用,所有的重复行必须是相邻的。 uniq语法 [root@www ~]# uniq [-icu] 选项与参数: -i :忽略......
      最新IT科技资讯推荐: -1

[1]win7 打开防火墙端口
    来源: 互联网  发布时间: 2013-10-26

如果 Windows 防火墙阻止某一程序,而您希望允许该程序通过防火墙进行通信,通常可以通过在 Windows 防火墙允许的程序列表(也称为“例外列表”)中选中该程序来实现。若要了解如何进行此操作,请参阅允许程序通过 Windows 防火墙进行通信。

但是,如果没有列出该程序,则可能需要打开一个端口。例如,当您与朋友联机进行多人游戏时,可能需要为该游戏打开一个端口,这样防火墙才能允许游戏信息到达您的计算机。端口始终保持打开状态,因此请确保关闭不需要打开的端口。

  • 通过单击「开始」按钮 ,然后单击“控制面板”,打开“Windows 防火墙”。 在搜索框中,键入防火墙,然后单击“Windows 防火墙”。
  • 在左窗格中,单击“高级设置”。  如果系统提示您输入管理员密码或进行确认,请键入该密码或提供确认。
  • 在“高级安全 Windows 防火墙”对话框的左窗格中,单击“入站规则”,然后在右窗格中,单击“新建规则”。
  • 按照新建入站规则向导中的说明进行操作。
  • 如果您无法通过 Windows 防火墙让其他计算机与您的计算机通信,则可以尝试使用“传入连接”疑难解答自动查找并修复一些常见问题。

    通过单击“开始”按钮 ,然后单击“控制面板”,打开“传入的连接”疑难解答。在搜索框中,键入疑难解答,然后单击“疑难解答”。单击“查看全部”,然后单击“传入的连接”
    作者:lailai186 发表于2013-8-3 8:02:59 原文链接
    阅读:115 评论:0 查看评论

        
    [2]Linux Shell脚本入门--awk命令详解
        来源: 互联网  发布时间: 2013-10-26

    简单使用:

    awk :对于文件中一行行的独处来执行操作 。

    awk -F :'{print $1,$4}'   :使用‘:’来分割这一行,把这一行的第一第四个域打印出来 。

     

     

    详细介绍:

    AWK命令介绍

     

    awk语言的最基本功能是在文件或字符串中基于指定规则浏览和抽取信息,awk抽取信息后,才能进行其他文本操作,完整的awk脚本通常用来格式化文本文件中的信息

     

    1.   调用awk:

     

    第一种命令行方式,如:

     

    awk [-Field-separator] 'commands' input-file(s)

     

    这里commands是真正的awk命令,[-F域分隔符]是可选的,awk默认使用空格分隔,因此如果要浏览域间有空格的文本,不必指定这个选项,但如果浏览如passwd文件,此文件各域使用冒号作为分隔符,则必须使用-F选项:   awk -F : 'commands' input-file

     

       第二种,将所有awk命令插入一个文件,并使awk程序可执行,然后用awk命令解释器作为脚本的首行,以便通过键入脚本名称来调用它

     

       第三种,将所有awk命令插入一个单独文件,然后调用,如: 

     

    awk -f awk-script-file input-file

     

    -f选项指明在文件awk-script-file的awk脚本,input-file是使用awk进行浏览的文件名

     

    2.   awk脚本:

     

        awk脚本由各种操作和模式组成,根据分隔符(-F选项),默认为空格,读取的内容依次放置到对应的域中,一行一行记录读取,直到文件尾

     

    2.1.      模式和动作   

     

    任何awk语句都是由模式和动作组成,在一个awk脚本中可能有许多语句。模式部分决定动作语句何时触发及触发事件。动作即对数据进行的操作,如果省去模式部分,动作将时刻保持执行状态

     

        模式可以是任何条件语句或复合语句或正则表达式,模式包含两个特殊字段BEGIN和END,使用BEGIN语句设置计数和打印头,BEGIN语句使用在任何文本浏览动作之前,之后文本浏览动作依据输入文件开始执行;END语句用来在awk完成文本浏览动作后打印输出文本总数和结尾状态标志,有动作必须使用{}括起来

     

        实际动作在大括号{}内指明,常用来做打印动作,但是还有更长的代码如if和循环looping语句及循环退出等,如果不指明采取什么动作,awk默认打印出所有浏览出的记录

     

    2.2.     域和记录:

     

    awk执行时,其浏览标记为$1,$2...$n,这种方法称为域标记。使用$1,$3表示参照第1和第3域,注意这里使用逗号分隔域,使用$0表示使用所有域。例如:

     

    awk '{print $0}' temp.txt > sav.txt  

     

    表示打印所有域并把结果重定向到sav.txt中

     

    awk '{print $0}' temp.txt|tee sav.txt 

     

     和上例相似,不同的是将在屏幕上显示出来

     

    awk '{print $1,$4}' temp.txt

     

       只打印出第1和第4域

     

    awk 'BEGIN {print "NAME  GRADE\n----"} {print $1"\t"$4}' temp.txt 

     

    表示打信息头,即输入的内容的第一行前加上"NAME  GRADE\n-------------",同时内容以tab分开

     

    awk 'BEGIN {print "being"} {print $1} END {print "end"}' temp 

     

    同时打印信息头和信息尾

     

    2.3.     条件操作符:

     

        <、<=、==、!=、>=、~匹配正则表达式、!~不匹配正则表达式

     

        匹配:awk '{if ($4~/ASIMA/) print $0}' temp 表示如果第四个域包含ASIMA,就打印整条

     

        精确匹配:awk '$3=="48" {print $0}' temp    只打印第3域等于"48"的记录

     

        不匹配:  awk '$0 !~ /ASIMA/' temp      打印整条不包含ASIMA的记录

     

        不等于:  awk '$1 != "asima"' temp

     

        小于:    awk '{if ($1<$2) print $1 "is smaller"}' temp

     

        设置大小写: awk '/[Gg]reen/' temp      打印整条包含Green,或者green的记录

     

        任意字符: awk '$1 ~/^...a/' temp    打印第1域中第四个字符是a的记录,符号’^’代表行首,符合’.’代表任意字符

     

        或关系匹配: awk '$0~/(abc)|(efg)/' temp   使用|时,语句需要括起来

     

        AND与关系:  awk '{if ( $1=="a" && $2=="b" ) print $0}' temp

     

        OR或关系:   awk '{if ($1=="a" || $1=="b") print $0}' temp

     

    2.4.     awk内置变量:

     

    ARGC  

    命令行参数个数

    NF    

     浏览记录的域个数

    AGRV  

    命令行参数排列

    NR  

    已读的记录数   

    ENVIRON  

    支持队列中系统环境变量的使用

    OFS  

    输出域分隔符

    FILENAME  

    awk浏览的文件名  

    ORS 

    输出记录分隔符

    FNR  

    浏览文件的记录数  

    RS  

    控制记录分隔符

    FS  

    设置输入域分隔符,同- F选项

    NF    

     浏览记录的域个数

     

    例: awk 'END {print NR}' temp    在最后打印已读记录条数

     

        awk '{print NF,NR,$0} END {print FILENAME}' temp

     

        awk '{if (NR>0 && $4~/Brown/) print $0}' temp  至少存在一条记录且包含Brown

     

        NF的另一用法:  echo $PWD | awk -F/ '{print $NF}'   显示当前目录名

     

    2.5.     awk操作符:

     

    在awk中使用操作符,基本表达式可以划分成数字型、字符串型、变量型、域及数组元素

     

    设置输入域到变量名:

     

        awk '{name=$1;six=$3; if (six=="man") print name " is " six}' temp

     

        域值比较操作:

     

    awk 'BEGIN {BASE="27"} {if ($4<BASE) print $0}' temp

     

        修改数值域取值:(原输入文件不会被改变)

     

    awk '{if ($1=="asima") $6=$6-1;print $1,$6,$7}' temp

     

        修改文本域:

     

    awk '{if ($1=="asima) ($1=="desc");print $1}' temp

     

        只显示修改记录:(只显示所需要的,区别上一条命令,注意{})

     

    awk '{if ($1=="asima) {$1=="desc";print$1}}' temp

        
    [3]Linux Shell脚本入门--Uniq命令
        来源: 互联网  发布时间: 2013-10-26
    uniq

     uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。也就是说,为了使uniq起作用,所有的重复行必须是相邻的。

    uniq语法

    [root@www ~]# uniq [-icu]
    选项与参数:
    -i   :忽略大小写字符的不同;
    -c  :进行计数
    -u  :只显示唯一的行

     

    testfile的内容如下

    cat testfile
    hello
    world
    friend
    hello
    world
    hello

     

    直接删除未经排序的文件,将会发现没有任何行被删除

    #uniq testfile  
    hello
    world
    friend
    hello
    world
    hello

     

    排序文件,默认是去重

    #cat words | sort |uniq
    friend
    hello
    world

     

    排序之后删除了重复行,同时在行首位置输出该行重复的次数

    #sort testfile | uniq -c
    1 friend
    3 hello
    2 world

     

    仅显示存在重复的行,并在行首显示该行重复的次数

    #sort testfile | uniq -dc
    3 hello
    2 world

     

    仅显示不重复的行

    sort testfile | uniq -u
    friend  

     

    作者:xifeijian 发表于2013-8-2 22:40:36 原文链接
    阅读:88 评论:0 查看评论

        
    最新技术文章:
     




    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2015,169IT.COM,站长邮箱:www_169it_com#163.com(请将#改为@)

    浙ICP备11055608号