python将命令输出写入文件

将文件写入到对应文件,方便后期处理或保存

def write_file(file_path):
with open(file=file_path, mode="w", encoding="utf-8") as out_file:
command = "ifconfig"
p = subprocess.Popen(command, shell=True, stdout=out_file, \
stdin=subprocess.PIPE, bufsize=1, universal_newlines=True)
print(p.pid) file_path = os.path.join(os.path.dirname(__file__), "test.text")
write_file(file_path)

python将命令输出写入临时文件或者缓存

# 临时文件,一般用于保存临时信息
import tempfile
def write_temp():
temp = tempfile.SpooledTemporaryFile(max_size=1024 * 10)
out_temp = temp.fileno()
command = "ifconfig"
p = subprocess.Popen(command, shell=True, stdout=out_temp, \
bufsize=1, universal_newlines=True)
print(p.pid)
print(out_temp.conjugate())

tempfile不同临时文件的区别

tempfile.TemporaryFile([mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None]]]]])

该函数返回一个 类文件 对象(file-like)用于临时数据保存(实际上对应磁盘上的一个临时文件)。当文件对象被close或者被del的时候,临时文件将从磁盘上删除。mode、bufsize参数的单方与open()函数一样;suffix和prefix指定了临时文件名的后缀和前缀;dir用于设置临时文件默认的保存路径。返回的类文件对象有一个file属性,它指向真正操作的底层的file对象。

tempfile.NamedTemporaryFile([mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None[, delete=True]]]]]])

tempfile.NamedTemporaryFile函数的行为与tempfile.TemporaryFile类似,只不过它多了一个delete参数,用于指定类文件对象close或者被del之后,是否也一同删除磁盘上的临时文件(当delete = True的时候,行为与TemporaryFile一样)。

tempfile.SpooledTemporaryFile([max_size=0[, mode=’w+b'[, bufsize=-1[, suffix=”[, prefix=’tmp'[, dir=None]]]]]])

tempfile.SpooledTemporaryFile函数的行为与tempfile.TemporaryFile类似。不同的是向类文件对象写数据的时候,数据长度只有到达参数max_size指定大小时,或者调用类文件对象的fileno()方法,数据才会真正写入到磁盘的临时文件中。

最新文章

  1. LPTHW 笨办法学python 33章
  2. Unity3d 检查哪些prefab引用了某个UIAtlas
  3. 【转载】USB2.0接口差分信号线设计
  4. 【转】App开发者必备的运营、原型、UI设计工具整理
  5. Java基础-四要素之一《封装》
  6. YTU 2296: KMP模式匹配 二(串)
  7. linux 下各个工具使用(screen、tmux,pyenv、virtualenv,pip国内源,tree)
  8. 欧拉工程第65题:Convergents of e
  9. hdu 1316 How many Fibs?(高精度斐波那契数)
  10. [CODEVS3299]有序数组合并求第K大问题
  11. 那些年被我坑过的Python——牵一发动全身 第十一章MySQL、ORM
  12. HDOJ 1285 确定比赛名次(拓扑排序)
  13. spring schema自定义
  14. Windows Server 2008 R2防火墙出站规则
  15. Contains Duplicate leetcode
  16. IntentActionUtil【Intent的常见作用的工具类】
  17. 通过fiddler和逍遥模拟器模拟抓包android手机
  18. PythonStudy——函数对象的案例
  19. eclipse哪个版本好
  20. 零基础掌握百度地图兴趣点获取POI爬虫(python语言爬取)(代码篇)

热门文章

  1. Dapr 不是服务网格,只是我长的和他很像
  2. sqlserver limit
  3. JavaScript数组操作常用方法
  4. 面试官:BIO、NIO、AIO是什么,他们有什么区别?
  5. 2020级C++实验课-期末机考模拟考题解
  6. IDEA快捷生成循环♻️
  7. SQL中把汉字转换拼音码
  8. CPPRESTSDK 编译
  9. .NET 6.0.6 和 .NET Core 3.1.26、Visual Studio 2022 17.2 和 17.3 Preview 2 和 .NET 7.0 Preview 5 同时发布
  10. php 正则获取字符串中的汉字(去除字符串中除汉字外的所有字符)