找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23579|回复: 5

[问题求助] 【已解决】sed用法:如何保留倒数第 2 5 8 11 行

[复制链接]
发表于 2015-12-14 02:04:21 | 显示全部楼层 |阅读模式
本帖最后由 思想之翼 于 2015-12-14 11:48 编辑
  1. sed -i -n "1p;$p" "D:\数据\*.txt"
复制代码
意为保留第1与最后一行,如果要保留倒数第 2 5 8 11 行,如何写代码?
发表于 2015-12-14 02:36:30 | 显示全部楼层
仅作示例,只保留倒数 2、5 行:
  1. sed -i -n "1{N;N;N;};N;${s/\n[^\n]*$//;s/[^\n]*\n//3;s/[^\n]*\n//2;p};D;" a.txt
复制代码
具体怎么搞楼主自己折腾去吧

评分

参与人数 1技术 +1 收起 理由
思想之翼 + 1 学习

查看全部评分

发表于 2015-12-14 06:50:53 | 显示全部楼层
  1. """
  2. http://www.bathome.net/thread-38591-1-1.html
  3. 保留文件倒数第N行
  4. 依山居 6:08 2015/12/14
  5. 这个问题本质还是可以看是操作列表元素
  6. """
  7. with open("1.txt") as f:
  8.     txt=f.readlines()
  9. ln=len(txt)
  10. result=[txt[r] for r in range(ln,0,-1) if r==2 or r==5 or r==8 or r==11]
  11. print(result)
复制代码

评分

参与人数 2技术 +2 收起 理由
依山居 + 1 1
思想之翼 + 1 学习

查看全部评分

发表于 2015-12-14 07:45:14 | 显示全部楼层
  1. """
  2. python字典取出文件倒数第N行.py
  3. http://www.bathome.net/thread-38591-1-1.html
  4. 依山居 7:44 2015/12/14
  5. 本质还是对数组进行操作
  6. 思路是生成行号,倒序历遍文件,生成字典,行号作为字典键。
  7. 这样使用时会很方便。
  8. """
  9. with open("1.txt") as f:
  10.     txt=f.readlines()
  11. keys=[r for r in range(1,len(txt)+1)]
  12. result={k:v for k,v in zip(keys,txt[::-1])}
  13. print(result[2])#取出倒数第二行
  14. print(result[3])#取出倒数第三行
复制代码

评分

参与人数 2技术 +2 收起 理由
依山居 + 1 1
思想之翼 + 1 学习

查看全部评分

发表于 2015-12-14 08:34:18 | 显示全部楼层
  1. @echo off
  2. (for /f "delims=" %%i in ('sort /+10000 a.txt') do (
  3.     set /a "n+=1, 1/(n-2), 1/(n-5), 1/(n-8), 1/(n-11)" || echo;%%i
  4. ))>b.txt 2>nul
  5. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
思想之翼 + 1 学习

查看全部评分

发表于 2015-12-14 19:47:25 | 显示全部楼层

  1. with open("1.txt") as f:
  2.     txt=f.readlines()
  3. txt[-2]#取出倒数第二行
  4. txt[-3]#取出倒数第三行
  5. txt[0]#第一行
  6. txt[1]#第二行
  7. txt[2]#第三行
  8. [print(txt[l]) for l in [-2,-5,-8,-11]]
复制代码
更简单直接的方法。

评分

参与人数 2技术 +2 收起 理由
思想之翼 + 1 感谢
依山居 + 1 1

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 04:47 , Processed in 0.020617 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表