linux - 按字母顺序对文件进行子集化

标签 linux

我是 linux 的新手,我试图按字母顺序从文件中提取某些行。基本上我有一个包含 3 或 4 个字母符号的列(它是交易数据,它们是股票代码),我只想保存特定时间和特定股票代码之间的那些。 (我只想在 2:10 到 3:05 之间进行交易,并且只在交易品种 SA 到 TZ 中进行交易)我尝试了这个 gawk 脚本并获得了正确的时间

|gawk '{if $2>1410000 && $2<1505000) 打印 $0}'

这得到了我想要的所有时间。是否有类似的 gawk 脚本(或者 sed?)我可以用来摆脱 SA 和 TZ 之后的所有自动收报机吗?

谢谢。

最佳答案

gawk '($2 > 1410000 && $2<1505000) && (substr($1,1,2) >= "SA"&& substr($1,1,2) <= "TZ"))'

请注意,在 awk 中,空操作语句“{...}”会打印记录。

[编辑 - 清理]

关于linux - 按字母顺序对文件进行子集化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14462459/

相关文章:

linux - 需要通过 SFTP 将文件从一台 Linux 机器传输到另一台 Linux 机器

c - 使用 procfs 从内核读取时间戳 - 从内核读取后它存储在哪里?

java - 如何在 java/shell 中的 javax.comm.PortInUseException 后释放串口

linux - 有没有办法在 crontab 参数列表中设置年份?

linux - Windows 下 Cygwin 的执行速度比 VirtualBox 中 Linux 的执行速度慢

c - 如何阻止读取系统调用

python - CherryPy 无法绑定(bind)到端口

c - 系统范围页表

linux - Ansible 中全局修改的 $PATH 无法按常规 Linux shell 的预期工作

linux - 删除目录中的所有文件但不删除子目录而不显示“无法删除目录