`
crabdave
  • 浏览: 1295317 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Liunx中使用expr命令并结合sed计算文件中的数字

 
阅读更多

Liunx中使用expr命令并结合sed计算文件中的数字

 

 

数据样例:

已选择153682行。

已选择539794行。

已选择627588行。

 

echo 计算所有 已选择 的数据 总共有多少条记录

sed -n '{/已选择/s/[^0-9]*//gp}' exp.txt | sed -n 's/[0-9]*/ &/;:a;$!N;/[0-9]*/s/\n/ + /;ta;P;D' | xargs expr

 

 

思路:

1、先选择包含“已选择”的记录行(也就是ORACLE的SPOOL导出数据时带出来的),然后整行中替换,将非数字类型全部替换为空;

sed -n '{/已选择/s/[^0-9]*//gp}' exp.txt

得到的结果将是:

153682

539794

627588

 

2、将第一行数据的头部分加个空格s/[0-9]*/ &/;

得到的结果将是:

153682

539794

627588

 

3、将组装数学表达式,循环将多行变为一行,将换行符替换成“空格+空格”

:a;$!N;/[0-9]*/s/\n/ + /;ta;P;D

得到的结果将是:

 153682 + 539794 + 627588

 

命令行说明:首先设置一个标签a,除了最后一行($!N;),其他行都执行把下一行的数据添加到模式空间(N),当匹配到以数字的行([0-9]*)就把换行符换成“空格+空格”,如果替换成功(t),就重复执行(再从a开始)否则就将模式空间的第一行打印出来(P;),然后删除模式空间的第一行(D),开始下一个循环(:a)。

 

4、将表达式作为参数传给expr 命令进行计算

 | xargs expr

 

得到结果:1321064

 

 

分享到:
评论

相关推荐

    liunx下使用oracle命令

    liunx下使用oracle命令,包括开启和关闭oracle数据库服务。

    liunx文件系统和命令

    了解并熟练使用这些基本命令,能够极大地提高在Linux系统中的工作效率。此外,学习如何查找和使用手册页(`man`命令)也是十分必要的,因为这将帮助你发现更多高级功能和命令的详细信息。通过实践和不断地探索,你将...

    liunx常用操作命令_liunx常用操作命令_

    在Linux操作系统中,掌握一些常用的命令是至关重要的,无论你是初学者还是经验丰富的系统管理员。这些命令能够帮助你高效地管理文件、目录、进程、网络以及其他系统层面的任务。以下是一些核心的Linux命令及其详细...

    Liunx60个常用命令

    ### Liunx60个常用命令 - 初学者必学的命令集 #### 一、概述 在Linux操作系统中,掌握一系列基础而实用的命令是非常重要的。这些命令可以帮助用户高效地管理和操作文件系统、进程以及其他各种资源。本文将详细介绍...

    liunx常用命令l命令

    - `.ls`: `ls`命令列出目录内容,可以使用参数如 `-a` 显示隐藏文件,`-l` 显示详细信息。 - `.mkdir`: 创建新目录,`-p` 参数可以创建多级目录。 - `.rmdir`: 删除空目录,如果要删除非空目录,需使用 `rm -r`。 - ...

    liunx开发环境,liunx编程指南,liunx常用命令

    在Linux开发环境中,了解并熟练掌握Linux编程和常用命令是至关重要的。 首先,让我们深入理解“Linux开发环境”。这通常包括安装和配置Linux发行版(如Ubuntu、CentOS或Debian),设置开发工具链(如GCC编译器、Git...

    Liunx中远程工具

    对于更高级的安全需求,可以使用密钥对认证,这需要在本地生成公钥和私钥,并将公钥复制到远程服务器的`~/.ssh/authorized_keys`文件中。这样,每次连接时只需验证私钥,而无需输入密码,增强了安全性。 xShell 5还...

    Unix&Liunx 常用的shell命令

    在Unix和Linux操作系统中,Shell是用户与操作系统交互的主要接口,它提供了命令行...通过组合使用这些命令,可以实现更复杂的操作,如文件过滤、文本处理、自动化任务等。在使用时,应根据具体需求灵活运用这些工具。

    liunx初级基础命令

    2. `ls` 命令:用于列出目录中的文件和子目录。`ls -la`会显示所有文件,包括隐藏文件,并显示详细信息(如权限、大小、修改日期等)。 3. `cp` 命令:用于复制文件。例如,`cp filename1 filename2`将`filename1`...

    Liunx常用命令.docx

    ### Liunx常用命令知识点详解 #### 一、解压命令 在Linux系统中,文件经常会被压缩成`.tar`、`.zip`等格式以便于传输或存储。掌握解压命令对于日常操作至关重要。 1. **针对`.tar`文件:** - 命令示例:`tar zxvf...

    Linux文件压缩命令

    `tar`命令则用于创建、管理和提取档案文件,它并不直接进行压缩,但常与其他压缩工具结合使用。例如,`tar -czvf archive.tar.gz file1 file2`将创建一个名为`archive.tar.gz`的压缩归档文件,包含了`file1`和`file2...

    Linux必学的60个命令(二)——文件处理命令.pdf

    安装完成后,可以使用`grep`命令在文件中搜索特定文本,以实现更高级的文件内容查找和分析。 总的来说,熟悉并掌握这些基础的Linux文件处理命令,能够帮助用户更加高效地管理和操作Linux系统,无论是进行系统开发...

    liunx命令全称.md

    - **功能**: 比较两个已排序文件的内容,并报告共同行、仅出现在第一个文件的行和仅出现在第二个文件的行。 - **应用场景**: - 文件内容对比分析。 #### 53. cp (Copy) - **全称**: Copy - **功能**: 复制文件或...

    liunx查看日志命令详解

    liunx查看日志命令详解

    linux命令大集合 liunx下java环境的搭配

    本文将深入探讨Linux命令的使用以及如何在Linux下搭建和管理Java环境。 首先,让我们了解一些常见的Linux命令: 1. **ls**:用于列出目录中的文件和子目录。例如,`ls -l`显示详细信息,`ls -a`显示所有文件包括...

    liunx常用命令及其操作

    liunx常用命令

    Liunx.zip Linux常用命令

    了解并熟练运用这些命令,将极大地提高你在Linux环境中的工作效率。 在"Liunx.zip"压缩包中,很可能包含了更详细的命令介绍和实践案例,建议解压后仔细学习,通过实践操作来加深理解。同时,记得结合在线资源和手册...

    liunx命令写法和格式

    Linux命令是Linux操作系统中进行系统管理、文件操作和任务执行的基本工具。这些命令通常是通过命令行界面(CLI)输入的,对于熟悉它们的人来说,Linux命令提供了高效且灵活的系统控制方式。以下是一些常见的Linux...

    liunx常用命令[参考].pdf

    例如,将file.txt中所有出现的"123"替换为"456",可以使用`sed 's/123/456/g' file.txt > file.txt.new`创建新文件,或者`sed -i 's/123/456/g' file.txt`直接在原文件上修改。 - 在`vi`编辑器中,可以使用`:%s/123...

Global site tag (gtag.js) - Google Analytics