#! /usr/bin/env python3
# -*- coding: utf-8 -*-
import sys, os
import argparse
import re
def showprintings(f,endchar,showNum=False):
max_len = 4096
num = 0
prog = re.compile('\t')
prog2 = re.compile('\r\n')
if not os.path.isfile(f):
print("{}: not a file".format(f))
try:
with open(f, "rb") as fp:
for line in iter(lambda: fp.readline(max_len), b''):
line = line.decode()
if showNum == True:
num += 1
if endchar == 'Num':
if line != '\r\n':
print("{} {}".format(num, line), end='')
else:
print('')
else:
print("{} {}".format(num, line), end='')
else:
if endchar == "$":
line = prog2.sub('$', line)
print("{}".format(line), end='\n')
elif endchar == "T":
line = prog.sub('^I', line)
line = line[:-2]
print("{}".format(line), end='\n')
else:
print("{}".format(line), end='')
except Exception as e:
print(e)
def main():
usage = 'cat - concatenate files and print on the standard output'
parser = argparse.ArgumentParser(usage)
parser.add_argument('-n', action='store_true', default=False, help='number all output lines')
parser.add_argument('-b', action='store_true', default=False, help='number nonempty output lines')
parser.add_argument('-v', action='store_true', default=False, help='use ^ and M- notation, except for LFD and TAB')
parser.add_argument('-E', action='store_true', default=False, help='display $ at end of each line')
parser.add_argument('-T', action='store_true', default=False, help='display TAB characters as ^I')
parser.add_argument('-t', action='store_true', default=False, help='equivalent to -vT')
parser.add_argument("x", type=str, help="File1")
args = parser.parse_args()
if args.v:
showprintings(args.x, '', False)
elif args.E:
showprintings(args.x, '$', False)
elif args.b:
showprintings(args.x, 'Num', True)
elif args.n:
showprintings(args.x, '', True)
elif args.T or args.t:
showprintings(args.x, 'T', False)
else:
print(parser.print_help())
if __name__ == '__main__':
main()
分享到:
相关推荐
最后,压缩包中的"基于Python的Asterix Cat 021数据格式解析分析与实现.pdf"文件很可能是详细的教程或研究报告,涵盖了上述所有概念和步骤,提供了一个完整的解析实现。通过阅读这个文档,你可以深入理解如何在...
资源分类:Python库 所属语言:Python 资源全名:catboost-1.0.3-cp310-none-manylinux1_x86_64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
**CAT021报文格式详解** 在民航领域,数据通信是确保飞行安全和效率的关键环节之一。其中,Asterix(Aircraft Situation Display to Industry)标准被广泛应用于空中交通管理(ATM)的数据交换,它定义了一系列报文...
资源分类:Python库 所属语言:Python 资源全名:catboost-0.2-cp35-none-manylinux1_x86_64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:catboost-0.17.4-cp27-none-manylinux1_x86_64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
《PyPI官网下载的tencentcloud-sdk-python-cat-3.0.412.tar.gz:腾讯云Python CAT SDK详解》 PyPI(Python Package Index)是Python编程语言的官方软件包仓库,它提供了丰富的第三方库资源,使得开发者可以便捷地...
使用python实现Cat命令 ## 要求 没有必要,只使用python库 # 运行程序 在linux上,您可以使用 ``` ./cat.py [path] ``` 或者 ```python ./cat.py [path]``` 例如 ```./cat.py ./test_cat.txt```
1.Python实现CatBoost时间序列预测(完整源码和数据) anaconda + pycharm + python +Tensorflow 注意事项:保姆级注释,几乎一行一注释,方便小白入门学习! 2.代码特点:参数化编程、参数可方便更改、代码编程思路...
资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:catboost-0.4.1-cp35-none-manylinux1_x86_64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
Python是一种面向对象的编程语言,它最初被设计用于编写自动化脚本,但随着语言功能的不断增强和更新,如今已经广泛应用于多种复杂的软件开发领域。 为了对ADS-B数据进行有效处理,本文通过对Asterix Category 021...
而PythonADS是Python语言的一个扩展库,它允许我们通过ADS(Automation Device Specification)协议与TwinCAT进行通信,实现了Python与PLC之间的数据交换。本案例中,我们将探讨如何利用TwinCAT和PythonADS实现读取...
资源分类:Python库 所属语言:Python 资源全名:catboost-0.24.1-cp37-none-win_amd64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
python库。 资源全名:catboost_dev-0.13.1.2891-cp35-none-win_amd64.whl
**Python库dbcat-0.9.0-py3-none-any.whl详解** 在Python的开发环境中,库扮演着至关重要的角色,它们提供了丰富的功能,让开发者能够更高效地完成各种任务。`dbcat`是一个Python库,它专注于数据管理和查询,特别...
标题 "twincat和pythonADS通讯测试-20210317.zip" 提到的是一个关于使用Twincat和Python ADS进行通信的测试案例,时间是在2021年3月17日。这个压缩包可能包含了文档、源代码和其他相关资源,帮助用户了解如何实现这...
《PyPI官网下载的tencentcloud-sdk-python-cat-3.0.529.tar.gz:腾讯云Python SDK深度解析》 PyPI(Python Package Index)是Python开发者们分享和获取软件包的重要平台,它提供了丰富的Python库供全球的开发者使用...
该cAT项目采用Python作为主要开发语言,集成了HTML、JavaScript、CSS等多语言开发资源,共计包含4925个文件。具体文件类型分布为:1379个Python源文件、1255个MO文件、1197个PO文件、193个HTML文件、97个JavaScript...
《Python库探索:KeyCat-0.1.3.tar.gz深度解析》 在信息技术日新月异的时代,Python作为一门强大且易学的编程语言,已经成为了开发者的首选工具之一。今天,我们要深入探讨的是一款名为KeyCat的Python库,其版本为...
例如office密码哈希计算机工具文件office2john.py,使用office2john.py target.doc即可计算其文档加密值。
在Python编程领域,pgzero是一个非常适合初学者,尤其是少儿编程入门的库,它提供了一种简单易用的方式来创建2D游戏。"利用pgzero制作打猫咪游戏(汤姆猫游戏)"是一个很好的实践项目,可以帮助孩子们理解基本的游戏...