巅峰之上313 2023-09-14 16:01 采纳率: 17.1%
浏览 7
已结题

删除所有目录下所有文件的前3行和末尾6行

7.文件操作-2
/mnt/sdb/share/bin/linux-demo/file2 目录中有200个shell文件
依次对文件做如下操作——
(1)删除所有文件的前3行与末尾6行
(2)文件中S后面的1-3个数字是样品名,即1-200
请将名字是3位数字的文件(如100、102等)中含有bwa的行删除
(3)名字是2位数字的文件(如50、60等)中bwa的绝对路径去除,如“/home/taoye/mybin/Module_Mapping//”

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-09-14 16:21
    关注

    引用 皆我百晓生 小程序回复内容作答:
    您可以使用以下命令来删除所有目录下所有文件的前3行和末尾6行:

    find /path/to/directory -type f -exec sed -i -e '1,3d' -e ':a;$!N;31,$!ba;d' {} \;
    

    请注意将 /path/to/directory 替换为您要操作的目录的路径。

    对于名字是3位数字的文件中含有 "bwa" 的行进行删除,可以使用以下命令:

    find /path/to/directory -type f -name '[0-9][0-9][0-9]*' -exec sed -i '/bwa/d' {} \;
    

    再对名字是2位数字的文件中的路径进行去除,可以使用以下命令:

    find /path/to/directory -type f -name '[0-9][0-9]*' -exec sed -i 's,/home/taoye/mybin/Module_Mapping//,,g' {} \;
    

    同样,请将 /path/to/directory 替换为您要操作的目录的路径。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月14日
  • 创建了问题 9月14日

悬赏问题

  • ¥20 双硬盘安装Ubuntu后windows 无法挂载硬盘
  • ¥15 下面求极限的步骤哪里不对,正确答案是a1a2…an
  • ¥15 帮我利用jupyter 运行一个正确的代码
  • ¥15 如何使用Gephi软件和Python包中的GephiStreamer交互
  • ¥15 sqlite加密问题咨询
  • ¥15 appdesigner接收不到udp组播的数据
  • ¥15 verilog 非阻塞赋值下的移位拼接错误
  • ¥100 两个按钮控制一个LED
  • ¥15 用C语言写离散数学相关问题
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理