首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    简短的perl程序

    简短的perl程序能够实现大功能。   perl是如何做到的呢?   1. 默认变量      如果没有向函数提供参数值,则默认参数为$_;      如果没有变量用于接收一个表达式的值,则默认接收变量为$_。      perl语言每条语句可像管道那样运行,通过默认变量$_串接起来。   2. 特殊语法      利用一些正常情况下没有含义的语法,如while(<>){}.      如果按照正常的语法,这个定法的意义是:读取一行文本,然后丢弃。      由于正常情况下没有人会这么用,perl语言将这一语法利用起来了。在实际中写起来非常方便。   3. 变量值不用给定初值,不用提前声明      perl会自动为变量选择合适的初值,如果没有给定的话。      对于数值,初值为0;对于字符串,初值为““,也就是空字符串。   4. 对于一些常用语法的简洁写法      如通过qw定义一个字符串list,可避免写引号。   简短的好处?   简短,再加上perl与shell结合非常好,可以在命令行上直接写出简短又功能强大的代码。   一个常用用法:

    03

    Sun Grid Engine 大规模集群监控

    #!/usr/bin/perl #!/bin/bash ## 最近查看队列使用情况 发现如下问题,用户使用SGE 集群的时候内存溢出 ## 此程序用于查看SGE (Sun Grid Engine) 整体集群监控 ##仅以此程序,帮助大家查看 自己任务状态,以免被杀!此工具归BGI所有,祝大家工作愉快! =head1 Name sge_cluster_queue.pl  -- choose the queue observation =head1 Description This program can choose the  bmk queue observation  1) look for the  queue  jobs operation and who is working state 2) find the jobs number total test number,and the user over mem jobs,Jobs-ID,detailed mem \ 3) statistics total use mem =head1 Version   Author: Li linji, lilinji@genomics.cn    Version: 1.0,  Date: 2012-7-30 =head1 Usage   --queue  set  you want  look up queue (defined general.q)   --mem    set  Use full details  queue Jobs and mem (check  over_mem,and jods-ID)   --s      set  Task sort by (name,job,vf,mem && must set --mem)##defined name   --t      set  Task state information  (defined run)   --help    output help information to screen =head1 Exmple ./sge_cluster_queue.pl    perl sge_cluster_queue.pl perl sge_cluster_queue.pl  -queue general.q perl sge_cluster_queue.pl  -queue general.q -mem perl sge_cluster_queue.pl  -queue general.q -mem -s vf =cut use Getopt::Long; use FindBin qw($Bin $Script); use File::Basename qw(basename dirname); use Data::Dumper; my $Sort||="name"; my $St||="r"; my ($help,$mem); $queue_search ||= "general.q"; GetOptions(     "help"=>\$help,     "queue=s"=>\$queue_search,     "mem"=>\$mem,     "s=s"=>\$Sort,     "t=s"=>\$St, ); die `pod2text $0` if ($Help); if ($Sort eq "1") {     $Sort="name"; }elsif($Sort  eq "2"){     $Sort="job"; }elsif($Sort eq "3"){     $Sort="vf"; }elsif($Sort  eq "4"){     $Sort="mem"; } if ($Sort ne "vf" && $Sort ne "mem" && $Sort ne "name" && $Sort ne "job" ) {     print STDERR <<SORt;     -s :        1 or name : sort by name (default)             2 or job :  sort by jobs number             3 or vf :  sort by vf (need  -m )             4 or mem : sort by mem (need  -m ) SORt         exit 0; if (!defined $mem &&  ($Sort eq "mem" || $Sort eq "vf" )) {     print STDERR <<SORt;           -mem : get mem info         -s

    01
    领券