`

perl命令行就地编辑文件

    博客分类:
  • perl
 
阅读更多

原文:http://blog.sina.com.cn/s/blog_494bf2bf0100lidf.html

简介

       Perl 用作命令行操作的快速而又难看的脚本是很有用的;通过命令行,Perl 仅用一行就可以实现大多数其它语言需要数页代码才能完成的任务,这个小东东的功能可是非常强大的。

       参数:

       -w     打开警告。

       -i     在原文件中编辑(就地编辑)。

       -i.bak  就地编辑,但是会备份原文件,并且以.bak为后缀,这个.bak可以修改成自己想要的任何符号。

       -n      使用<>将所有@ARGV参数当作文件来逐行运行,会将读入的内容隐式的逐一按行来遍历文件,每一行将缺省保存在  $_;意即会把输入的文件逐行的读取并保存在$_这个变量中,我们修改$_相当于间接影响文件中的内容,这个工作其实是perl封装好了的,直接使用就好了;这个参数不会自动打印$_。

       -p      这个和-n类似,但是会打印$_。

       -e      指定字符串用作脚本执行;通常后跟单引号,把需要执行的语句封装在其中。

       注释:关于-p和-n开关的使用,当你想显示打印数据时,使用-n开关;-p开关会隐式                的打印$_;因此,-n开关更加适用对文件进行选择性的处理,只需打印特殊的数据,-p更加适用于对文件进行完全处理;命令行perl同样可以对批量文件进行操作。

 

替换AB

       perl  -i  -pe  ‘s/old_str/new_str/g’  files

 

替换AB并备份

       perl  -i.bak  -pe  ‘s/old_str/new_str/g’  files

 

修改并输出到屏幕

       perl  -ne  ‘s/old_str/new_str/g;print;’  files

       此处修改后输出到屏幕,但并不会改变原文件。

 

搜索满足条件的行

       perl  -i  -ne  ‘print  if  /condition/’  files

在文件中插入行号

       perl  -i  -pe  ‘$_ = sprintf “%04d %s”, $. , $_’  files

 

在匹配的某行行首添加字串

       perl  -i  -pe  ‘print  “string”  if  /condition/’  files

 

在匹配的某行行尾添加字串

       perl  -i  -pe  ‘chomp; $_ = $_ . “string\n”  if  /condition/’  files

 

在匹配的某行前增加一行

       perl  -i  -pe  ‘print  “string\n”  if  /condition/’  files

 

在匹配的某行后增加一行

       perl  -i  -pe  ‘$_ = $_ . “string\n”  if  /condition/’  files  
分享到:
评论

相关推荐

    perl 命令行模式

    例如,`-e`用于执行一行Perl代码,`-i`可以用于就地编辑文件,而`-l`会自动添加行结束符。 3. **文件处理**:Perl的`&lt;FILEHANDLE&gt;`操作符可以方便地读取文件,而`print`函数则用于输出结果。在命令行中,常常会结合...

    Perl命令行参数

    ### Perl命令行参数详解 #### 一、概述 Perl 是一种功能强大的脚本语言,广泛应用于文本处理、系统管理等领域。Perl 的一大特色是其丰富的命令行选项,这些选项可以帮助开发者更加高效地编写和调试代码。本文将...

    Unix系统perl命令行下的替换操作

    这是一篇关于perl在Unix系统命令行下的替换操作,对于关注perl的爱好者可以起到帮助作用

    命令行中执行单行Perl脚本

    Perl语言在这方面有着天然的优势,它不仅支持强大的正则表达式处理,还能在命令行环境中执行单行脚本,极大地简化了文件处理流程。 #### Perl单行脚本命令行选项详解 **-e选项** -e选项用于在命令行中直接执行Perl...

    perl 语言编程 perl精华.pdf

    - `-i` 参数用于就地编辑文件,例如 `perl -pi.bak -e 's/foo/bar/g' file.txt` 会替换文件`file.txt`中的所有"foo"为"bar",并备份原始文件为`file.txt.bak`。 4. **Perl模块的使用** - `use` 关键字在Perl脚本...

    Perl之读取文本文件

    ### Perl之读取文本文件知识点解析 #### 一、Perl简介 Perl是一种广泛使用的脚本语言,特别适合于文本处理和快速原型开发。它具备强大的正则表达式支持能力,可以方便地处理字符串数据。 #### 二、读取文本文件的...

    perl 自动生成filelist文件脚本

    使用方法简单,在当前目录下,使用perl make_f.pl xx,xx为例化的filelist文件名,按下回车将会生成.f文件,里面列出了当前目录下所有.v文件的绝对路径,将脚本中.v替换成.c也可以检索当前目录下的所有.c文件,...

    perl5.10.1安装文件

    perl5.10.1安装文件perl5.10.1安装文件perl5.10.1安装文件perl5.10.1安装文件perl5.10.1安装文件perl5.10.1安装文件perl5.10.1安装文件

    perl替换脚本(用于替换文本文件中的单词)

    批处理文件通常包含命令行指令,例如: ```cmd perl replace_script.pl config_file.txt target_directory ``` 这里,`replace_script.pl`是Perl脚本的文件名,`config_file.txt`是我们的`Replace_$.cfg`文件,`...

    perl-App-CLI-Extension:perl 命令行界面框架

    名称 App::CLI::Extension - 用于 App::CLI 扩展模块 版本 1.422 概要 # MyApp.pm package MyApp; use strict; use base qw(App::CLI::Extension);...# load App::CLI::Plugin::Foo, MyApp::Plugin::Bar ...

    perl读写xml文件

    Perl是一种强大的脚本编程语言,尤其擅长处理文本和数据,包括XML文件。XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置存储等场景。这篇博客文章“perl读写xml文件”很可能...

    在命令行中使用perl进行文本处理的基于示例的指南-Linux开发

    基于示例的Perl命令行文本处理指南Perl单行本食谱基于示例的Perl命令行文本处理指南。 本书还包括测试您的理解的练习,在本回购中作为单个文件一起提供-Exercises.md有关练习的解决方案,请参见Exercise_solutions....

    perl解析excel文件

    在这个场景中,我们关注的是如何使用Perl来解析Excel文件。Excel文件通常包含表格数据,这对于数据分析、报告生成或自动化工作流程非常有用。Perl提供了多种库来处理这种任务,其中最常用的是Spreadsheet::ParseXLSX...

    Perl语言入门实战习题

    然后,使用 Perl 的文件处理函数 open 关闭输入文件和输出文件,并使用输入记录分隔符来读取 FASTA 文件中的序列数据。最后,使用 length 函数计算每条序列的长度,并将结果输出到输出文件中。 知识点: * Perl ...

    ActivePerl安装文件

    4. 安装完成后,Perl解释器将被添加到系统路径中,使得在命令行中可以直接运行perl命令。 5. ActivePerl还会提供一个PPM(Perl Package Manager),用于方便地安装和管理Perl模块,这些模块可以扩展Perl的功能。 ...

    使用perl读写文件

    对学习使用Perl操作文件时写的,在开始学习对Perl文件操作时,使用了$_,导致调试了很长时间,现在改正后做笔记到此

    Perl实现文件及数据库访问

    标题“Perl实现文件及数据库访问”揭示了这个主题主要关注如何使用Perl编程语言来操作文件以及与数据库进行交互。Perl是一种强大的脚本语言,尤其在处理文本和系统管理任务方面非常出色。在这个主题中,我们将深入...

    linklint3:Perl命令行实用程序,用于检查HTML链接

    请参阅Changelog.md文件以了解自分叉版本以来的更改。执照Linklint的这个分支将继续在GPL版本2或您选择的任何更高版本下分发。 有关更多详细信息,请参见随附的LICENSE文件。安装该程序需要Perl 5.004版或更高版本...

    perl 下dmake 所需要的 安装文件

    标题提到的是“Perl下dmake所需要的安装文件”,这意味着我们需要在Perl环境中安装和配置`dmake`。`dmake`的安装通常包括获取源代码、编译和安装三个步骤,但在本场景中,我们可以通过直接复制提供的压缩包中的文件...

Global site tag (gtag.js) - Google Analytics