使用Python生成Shell命令,批量执行程序代码解析

 更新时间:2018年01月15日 10:26:42   作者:Yunhe_Feng  
这篇文章主要介绍了使用Python生成Shell命令,批量执行程序代码解析,具有一定借鉴价值,需要的朋友可以参考下

本文主要研究的是Linux系统中使用Python生成Shell命令,批量执行程序的相关内容,具体如下。

近日经常遇到在Linux shell中批量执行相似命令的情况。比如执行如下命令:

gifsicle --delay=100 gif/App_1_hour_*_down.gif > combine_gif/App_1_hour_down.gif 
gifsicle --delay=100 gif/App_1_hour_*_up.gif > combine_gif/App_1_hour_up.gif 
gifsicle --delay=100 gif/App_2_hour_*_down.gif > combine_gif/App_2_hour_down.gif 
gifsicle --delay=100 gif/App_2_hour_*_up.gif > combine_gif/App_2_hour_up.gif 
gifsicle --delay=100 gif/App_3_hour_*_down.gif > combine_gif/App_3_hour_down.gif 
gifsicle --delay=100 gif/App_3_hour_*_up.gif > combine_gif/App_3_hour_up.gif 
gifsicle --delay=100 gif/App_4_hour_*_down.gif > combine_gif/App_4_hour_down.gif 
gifsicle --delay=100 gif/App_4_hour_*_up.gif > combine_gif/App_4_hour_up.gif 
gifsicle --delay=100 gif/App_5_hour_*_down.gif > combine_gif/App_5_hour_down.gif 

如果手动输入,错误率高,时间成本大,效率非常低下。使用Shell编程很容易批量处理上述程序,但如果不熟悉Shell编程,亦可以轻松实现。关键是思维的转变。我们可以使用Python将上述命令写到一个文件里,然后从文件内容拷贝到#!/bin/bash开头的.sh文件中即可构建出所需的Shell脚本文件。生成上述命令的Python代码如下:

output = open("C:\\Python34\\shell_commands.txt", "w") 
 
for i in range (1, 21): 
  wr_line_1 = "gifsicle --delay=100 gif/App_" + str(i) + "_hour_*_down.gif > combine_gif/App_" + str(i) + "_hour_down.gif" + "\n" 
  wr_line_2 = "gifsicle --delay=100 gif/App_" + str(i) + "_hour_*_up.gif > combine_gif/App_" + str(i) + "_hour_up.gif" + "\n" 
  output.writelines(wr_line_1) 
  output.writelines(wr_line_2) 
output.close() 

总结

以上就是本文关于使用Python生成Shell命令,批量执行程序代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

  • Linux查看当前登录用户并踢出用户的命令

    Linux查看当前登录用户并踢出用户的命令

    这篇文章主要介绍了Linux查看当前登录用户并踢出用户的命令,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-05-05
  • Linux 6下安装编译安装Nginx的步骤

    Linux 6下安装编译安装Nginx的步骤

    这篇文章主要介绍了Linux 6下安装编译安装Nginx的步骤的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-10-10
  • linux命令实现音频格式转换和拼接的方法

    linux命令实现音频格式转换和拼接的方法

    今天小编就为大家分享一篇linux命令实现音频格式转换和拼接的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • CentOS7使用dnf安装mysql的方法

    CentOS7使用dnf安装mysql的方法

    本篇文章主要介绍了CentOS7使用dnf安装mysql的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • 在Linux上如何检查用户所属组详解

    在Linux上如何检查用户所属组详解

    这篇文章主要给大家介绍了关于在Linux上如何检查用户所属组的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-07-07
  • Centos 6.9环境下创建用户及删除用户的方法

    Centos 6.9环境下创建用户及删除用户的方法

    这篇文章主要介绍了Centos 6.9环境下创建用户及删除用户的方法,结合实例形式分析了Centos 6.9创建用户及删除用户相关的用户名、密码创建、删除及权限设置等相关命令使用方法,需要的朋友可以参考下
    2018-04-04
  • Linux内核设备驱动之内核的时间管理笔记整理

    Linux内核设备驱动之内核的时间管理笔记整理

    今天小编就为大家分享一篇关于Linux内核设备驱动之内核的时间管理笔记整理,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 浅析Linux中crontab任务调度

    浅析Linux中crontab任务调度

    这篇文章主要介绍了Linux中crontab任务调度的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 在Linux中使用Vundle管理Vim插件的方法

    在Linux中使用Vundle管理Vim插件的方法

    Vim缺乏默认的插件管理器,所有插件的文件都散布在~/.vim下的几个文件夹中,插件的安装与更新与删除都需要自己手动来,既麻烦费事,又可能出现错误。下面这篇文章主要给大家介绍了关于在Linux中使用Vundle管理Vim插件的方法,需要的朋友可以参考下。
    2018-04-04
  • 详解Linux文件系统:ext4及更高版本

    详解Linux文件系统:ext4及更高版本

    今天小编就为大家分享一篇关于Linux文件系统:ext4及更高版本的详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09

最新评论