Class with file-like interface to a file found in provided search path
Features
Search a path for a file that matches a pattern
Search a path for a file inside directories that match a pattern
- Basic file-like interfaces:
DisFile(…).open()
with DisFile(…) as f: …
Get path from config file (if optini module installed)
Examples
Simple usage:
from disambigufile import DisFile
path = '/bin:/usr/bin:/usr/local/bin'
try:
print(DisFile('^ls', path=path))
except Exception as e:
print(f"unable to disambiguate file; exception: {e}")
Using a with statement to open the disambiguated file:
from disambigufile import DisFile
path = 'path1:path2'
try:
with DisFile(r'^asdf', path=path) as f:
print(f.read())
except Exception as e:
print(f"unable to disambiguate file; exception: {e}")
With more specific exception handling:
from disambigufile import DisFile
import disambigufile
path = '/bin:/usr/bin:/usr/local/bin'
try:
print(DisFile('^ls', path=path))
except disambigufile.Error as e:
# will only catch module-specific exceptions
print(f"unable to disambiguate file; exception: {e}")
Match a file inside of a matched directory:
from disambigufile import DisFile
# search for unique file matching ~/Datasets/*2019-08-19*/data*
path='~/Datasets'
try:
hit = DisFile(
pattern='2019-08-19',
path=path,
subpattern='^data',
)
print(hit)
except disambigufile.Error as e:
print(f"unable to disambiguate file; exception: {e}")
License
Free software: MIT license
Documentation
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
Release files for disambigufile 0.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| disambigufile-0.3.2.tar.gz | 12.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| disambigufile-0.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.4 kB
Release files / disambigufile-0.3.2.tar.gz
| Download URL | disambigufile-0.3.2.tar.gz |
|---|---|
| Size | 12.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5349ef03829af4bf6019e400d8d954527d6be89df0e9fb54390a950cb99789c7
|
|
BLAKE2b-256 checksum How to use checksums |
15778e7165f87c2491343cf06263cd7f8eff17f83e9458fb00d1a4b77c4cf483
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.25.1
|
Release files / disambigufile-0.3.2-py3-none-any.whl
| Download URL | disambigufile-0.3.2-py3-none-any.whl |
|---|---|
| Size | 5.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
33b541d569a493610ff62cdede1583f2feca2418aa28636e9ba28b40357d2aad
|
|
BLAKE2b-256 checksum How to use checksums |
04e14e5486de7b03b58019aaea00150f147f76a6697f1464a4150068ac8a11d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.25.1
|