Skip to main content

A framework for batch processing.

Project description

Commando

Latest Version

Commando is a framework for batch processing.

Versioning of this repository follows Semantic Versioning 2.0.0

subprocess.run をラッピングしているので外部コマンドのために面倒な記述をしなくて良いのが特徴。

コマンドラインツールを脳筋で実行していくバッチ処理のためのフレームワーク。 基本的にPythonの構文でワークフローを構築できるので、バッチ処理での変数の取り回しなどがしやすいのがメリット。

Shell Script や Bat ファイルを書かなくても実行したいコマンドさえわかっていればバッチ処理が書ける。

Concept

  • バッチ処理ワークフローを構築するためのフレームワーク
  • 逐次処理で書く
  • 外部コマンドに関しては subprocess.run()が走る

Feature

  • add()
    • add command
  • execute():
    • Execute the added command.
  • Process them in the order they were added.
  • Functions can also be executed as commands

Usage

install

pip install pycommando

script

import logging

from commando import commando

logging.basicConfig(filename="test.log", level=logging.DEBUG)


def zero():
    1 / 0


commando.add("mkdir test")
commando.add("touch test\\test.txt")
commando.add(zero)

commando.execute()

log

DEBUG:commando.commando:mkdir test
DEBUG:commando.commando:touch test\test.txt
DEBUG:commando.commando:<function zero at 0x01A177C0>
ERROR:commando.commando:Could not execute function
Traceback (most recent call last):
  File "C:\venv\lib\site-packages\commando\commando.py", line 28, in execute
    cmd()
  File "main.py", line 10, in zero
    1 / 0
ZeroDivisionError: division by zero

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycommando-2.1.3.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

pycommando-2.1.3-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file pycommando-2.1.3.tar.gz.

File metadata

  • Download URL: pycommando-2.1.3.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.5 Linux/5.13.0-1031-azure

File hashes

Hashes for pycommando-2.1.3.tar.gz
Algorithm Hash digest
SHA256 930852a0e30aceb0091ef3ef0d546d85278f67d9e9a488782b2eb1837a8bd78a
MD5 5436aa0808b0da5c9f97332ceb2b8896
BLAKE2b-256 2e92813f006a15585475a48924a4d7f4a3ee1ebb24880f766a4dcb99092210d0

See more details on using hashes here.

File details

Details for the file pycommando-2.1.3-py3-none-any.whl.

File metadata

  • Download URL: pycommando-2.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.5 Linux/5.13.0-1031-azure

File hashes

Hashes for pycommando-2.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5a9050dba8e259f349246951089e16fe5a2b18969f1cc43b26ac305a0b8cf8c3
MD5 dc9af9cac6f83d9900589a1fd25f6d10
BLAKE2b-256 6359421b93a5d44c5bc44c4be28bb41599438cbdc751866b796a84a0f8607bed

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page