加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

用管道中的文件名sed

发布时间:2020-12-14 02:09:49 所属栏目:Linux 来源:网络整理
导读:在一个文件夹中,我有许多文件名中包含多个参数的文件,例如(只有一个参数)file_a1.0.txt,file_a1.2.txt等. 这些是由c代码生成的,我需要生成最后一个(及时).我不知道先验代码终止时该参数的值是什么.之后我需要复制最后一个文件的第二行. 要复制任何文件的第二
在一个文件夹中,我有许多文件名中包含多个参数的文件,例如(只有一个参数)file_a1.0.txt,file_a1.2.txt等.
这些是由c代码生成的,我需要生成最后一个(及时).我不知道先验代码终止时该参数的值是什么.之后我需要复制最后一个文件的第二行.

要复制任何文件的第二行,我知道这个sed命令有效:

sed -n 2p filename

我也知道如何找到最后生成的文件:

ls -rtl file_a*.txt | tail -1

题:

如何结合这两个操作?当然可以将第二个操作传递给该sed操作,但我不知道如何将来自管道的文件名作为该sed命令的输入.

解决方法

你可以用这个,

ls -rt1 file_a*.txt | tail -1 | xargs sed -n '2p'

(要么)

sed -n '2p' `ls -rt1 file_a*.txt | tail -1`

sed -n '2p' $(ls -rt1 file_a*.txt | tail -1)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读