A python implementation for GNU utils
Project description
Description
pygnuutils
is a pure python implementation for GNU utils.
Installation
Install the last released version using pip
:
python3 -m pip install --user -U pygnuutils
Or install the latest version from sources:
git clone git@github.com:matan1008/pygnuutils.git
cd pygnuutils
python3 -m pip install --user -U -e .
Usage
CLI
You can run commands by using pygnuutils prefix. For example, in order to list /tmp/foo
you can run:
pygnuutils ls -lRh /tmp/foo
Python
To use pygnuutils
you can write the following:
from pygnuutils.ls import Ls
ls = Ls()
ls('/tmp', all_=True)
Perhaps the best reason to use this library instead of gnu is the dependency injection ability.
For example, in order to print a message each time a symlink is resolved:
import os
from pygnuutils.ls import Ls, LsStub
class ReadlinkWatch(LsStub):
def readlink(self, path, dir_fd=None):
print(f'Resolving {path}...')
return os.readlink(path, dir_fd=dir_fd)
ls = Ls(stub=ReadlinkWatch())
ls('/tmp', all_=True, long=True)
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
pygnuutils-0.1.1.tar.gz
(61.7 kB
view details)
Built Distribution
File details
Details for the file pygnuutils-0.1.1.tar.gz
.
File metadata
- Download URL: pygnuutils-0.1.1.tar.gz
- Upload date:
- Size: 61.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51ab4f27deb59102b7a04192f7585ff2b3a9de03739982f0b19d3cd4d16bea76 |
|
MD5 | 3263db01afa0741bb97e059aa792bb9d |
|
BLAKE2b-256 | 03206a828fe03d6586241b824ee06c7da854ea351716006a62fd2548eaa5710b |
File details
Details for the file pygnuutils-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: pygnuutils-0.1.1-py3-none-any.whl
- Upload date:
- Size: 46.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b690540cc13f2c763250ee5cc647e9c81055d1002b1bcf7ac07ea6d259a21c5 |
|
MD5 | 476872c10761d18fa1373fa354910722 |
|
BLAKE2b-256 | 961758ee1f079114ea360601ccd331fd73032701abfe9278495e3dec0c35ef3f |