Skip to main content

A python implementation for GNU utils

Project description

Python application Pypi version

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 hashes)

Uploaded Source

Built Distribution

pygnuutils-0.1.1-py3-none-any.whl (46.4 kB view hashes)

Uploaded Python 3

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