Encode and decode files through the standard input/output
Project description
std_encode
Encode and decode files through standard input/output.
Usage
Encode files piping them into std_encode
$ std_encode -t input_test.txt
>>>>>>>>>> START t input_test.txt
Some test
text file
<<<<<<<<<< END
The encoded text can be then decoded and saved with std_decode
$ std_encode -t input_test.txt | std_decode
######### DECODED FILE input_test.txt
$ cat input_test.txt
Some test
text file
Install
The package is available in PyPI
pip install std-encode
Features
- A log shows that a file has been decoded
- Text and binary files are supported (binary are default).
std_decode
is capable of decoding more than one file in the same stream- Any line in the stream that's not part of a file will be replicated in the standard output.
Why is this useful for?
In some cases, standard input/output is a convenient and easy way of communication. Transfering a file is not as simple.
For example, the problem that originated it was to retrieve files from a docker container running in Kubernetes. Obtaining the text log is easy calling docker logs
or kubectl logs
, but retrieving files requires more plumbing.
In the operation, while creating logs, multiple files can be encoded, and then all will be retrieved piping the logs through std_decode
, generating a resulting log like this one:
========================= test session starts ==========================
platform darwin -- Python 3.7.0, pytest-3.9.2, py-1.7.0, pluggy-0.8.0
rootdir: /Users/jaimebuelta/Dropbox/code/std_encode, inifile:
plugins: cram-0.2.0
collected 8 items
tests/base.t . [ 12%]
tests/double_file.t . [ 25%]
tests/encode_decode_image.t . [ 37%]
tests/encode_decode_text.t . [ 50%]
tests/encode_image.t . [ 62%]
tests/encode_text.t . [ 75%]
tests/single_file.t . [ 87%]
tests/test_se.py . [100%]
======================= 8 passed in 2.22 seconds =======================
######### DECODED FILE junit_test.xml
######### DECODED FILE html_report.html
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
Built Distribution
Hashes for std_encode-0.2.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 78c0ef959dee56ea6f1413b997cd529e68103b1bbef4c9f07f989cc3910ddab8 |
|
MD5 | 1439620dd9458bf78d4c629d4e050bdd |
|
BLAKE2b-256 | 7bda6c205b50be0bdb14c19f0d90089b9d41a72d98ab52a8987d864c0409d812 |