20个perl常用的实用脚本

以下是20个常用的Perl脚本示例:

  1. 计算数组元素的总和:
my @numbers = (1, 2, 3, 4, 5);
my $sum = 0;
foreach my $num (@numbers) {
    $sum += $num;
}
print "Sum: $sum\n";
  1. 解析命令行参数并打印输出:
my $name = $ARGV[0];
print "Hello, $name!\n";
  1. 读取文件内容并打印每行:
open(my $fh, "<", "filename.txt") or die "Cannot open file: $!";
while (my $line = <$fh>) {
    print $line;
}
close($fh);
  1. 使用正则表达式替换文本:
my $text = "This is a sample text.";
$text =~ s/sample/example/;
print "$text\n";
  1. 处理CSV文件内容:
use Text::CSV;
my $csv = Text::CSV->new();

open(my $fh, "<", "data.csv") or die "Cannot open file: $!";
while (my $row = $csv->getline($fh)) {
    # 处理CSV行数据
    my $name = $row->[0];
    my $age = $row->[1];
    print "$name is $age years old.\n";
}
close($fh);
  1. 生成随机数:
my $random_number = int(rand(100));
print "Random number: $random_number\n";
  1. 获取系统时间:
use POSIX qw(strftime);
my $current_time = strftime '%Y-%m-%d %H:%M:%S', localtime;
print "Current time: $current_time\n";
  1. 执行系统命令并获取输出:
my $output = `ls -l`;
print "Listing:\n$output";
  1. 计算字符串长度:
my $str = "Hello, World!";
my $length = length($str);
print "Length of string: $length\n";
  1. 判断文件是否存在:
my $filename = "file.txt";
if (-e $filename) {
    print "$filename exists.\n";
} else {
    print "$filename does not exist.\n";
}
  1. 读取用户输入并进行处理:
print "Enter your name: ";
my $name = <STDIN>;
chomp($name);
print "Hello, $name!\n";
  1. 计算平方根:
my $number = 25;
my $sqrt = sqrt($number);
print "Square root of $number: $sqrt\n";
  1. 遍历哈希表并打印键值对:
my %hash = (
    'key1' => 'value1',
    'key2' => 'value2',
    'key3' => 'value3'
);
for my $key (keys %hash) {
    print "$key: $hash{$key}\n";
}
  1. 计算阶乘:
sub factorial {
    my $n = shift;
    return 1 if $n == 0;
    return $n * factorial($n-1);
}
my $result = factorial(5);
print "Factorial of 5: $result\n";
  1. 正向迭代和反向迭代数组元素:
my @array = (1, 2, 3, 4, 5);
foreach my $num (@array) {
    print "Forward: $num\n";
}
for (my $i = $#array; $i >= 0; $i--) {
    print "Reverse: $array[$i]\n";
}
  1. 递归遍历目录并输出文件列表:
sub list_files {
    my $dir = shift;
    opendir(my $dh, $dir) or die "Cannot open directory: $!";
    while (my $file = readdir($dh)) {
        next if $file eq '.' or $file eq '..';
        print "$file\n";
    }
    closedir($dh);
}
list_files(".");
  1. 计算字符串中单词的个数:
my $str = "Perl is a powerful scripting language.";
my @words = split(" ", $str);
my $word_count = scalar(@words);
print "Word count: $word_count\n";
  1. 生成日期范围:
use Date::Calc qw(:all);
my ($year, $month, $day) = Today();
my $start_date = Date_to_Text($year, $month, $day);
my $end_date = Add_Delta_YMD($year, $month, $day, 0, 1, 0);
print "Date range: $start_date - $end_date\n";
  1. 计算数组中元素的平均值:
my @numbers = (3, 5, 7, 9, 11);
my $sum = 0;
foreach my $num (@numbers) {
    $sum += $num;
}
my $average = $sum / scalar(@numbers);
print "Average: $average\n";
  1. 通过HTTP POST请求发送数据:
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
my $response = $ua->post('https://example.com/api', { key => 'value' });
if ($response->is_success) {
    my $content = $response->decoded_content;
    print "Response: $content\n";
} else {
    die "POST request failed: " . $response->status_line;
}

这些Perl脚本示例涵盖了文件处理、字符串操作、正则表达式、数组和哈希表操作、日期处理、网络操作等常见场景。

相关推荐

  1. 20perl常用实用脚本

    2024-03-23 17:52:02       19 阅读
  2. 20常用Python脚本

    2024-03-23 17:52:02       23 阅读
  3. .NET常见20面试题

    2024-03-23 17:52:02       14 阅读
  4. Linux | 20 常用 Linux 基本指令

    2024-03-23 17:52:02       28 阅读
  5. 20硬核Python脚本

    2024-03-23 17:52:02       8 阅读
  6. 20Python中列表(list)最常用方法和函数。

    2024-03-23 17:52:02       20 阅读
  7. 15.常用shell脚本

    2024-03-23 17:52:02       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-23 17:52:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-23 17:52:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-23 17:52:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-23 17:52:02       20 阅读

热门阅读

  1. atomic_read实现

    2024-03-23 17:52:02       19 阅读
  2. Pytorch:torch.nn.functional.pad()

    2024-03-23 17:52:02       18 阅读
  3. 持续集成平台 02 jenkins plugin 插件

    2024-03-23 17:52:02       18 阅读
  4. 数学分析复习:指数函数的构造

    2024-03-23 17:52:02       16 阅读
  5. DataFrame:postgresql数据下载及上传

    2024-03-23 17:52:02       17 阅读
  6. 【PHP】通过PHP实时监控Apache、MySQL服务运行状态

    2024-03-23 17:52:02       16 阅读
  7. uniapp APP 上传文件

    2024-03-23 17:52:02       17 阅读
  8. Android设计模式

    2024-03-23 17:52:02       20 阅读
  9. 【函数式编程】柯里化和偏函数

    2024-03-23 17:52:02       19 阅读
  10. 腾讯面试准备-2024.3.21

    2024-03-23 17:52:02       15 阅读
  11. Vanilla Transformer

    2024-03-23 17:52:02       16 阅读
  12. 【Docker】在 Ubuntu 上安装 Docker 的步骤

    2024-03-23 17:52:02       17 阅读
  13. Python从入门到精通秘籍十五

    2024-03-23 17:52:02       19 阅读
  14. C语言可变参函数

    2024-03-23 17:52:02       14 阅读