Description
This module is designed to relief and simplify interaction of your python modules with the file system.
Installation
python setup.py install
or
pip install -e .
or
pip install fs-manager
How to use
For example, you can inherit your class from FSManager class
from fs_manager import FSManager
class Foo(FSManager, ...):
FSManager.__init__(self, base_path="/some/base", mode=0o744, temporary=True)
...
Or you can just use it as an object
from fs_manager import FSManager
with FSManager(base_path="/tmp/base", mode=0o744, temporary=True) as fsm:
fsm.mkdir(alias="tom", path="tom_dir", mode=0o744, temporary=True)
fsm.cd("tom")
fsm.mkdir("tom_dir")
fsm.mkfile("jerry", "jerry_file", 0o644, True)
fsm.ls()
fsm.up()
fsm.ls()
fsm.rm("tom")
Save what you did
from fs_manager import FSManager
with FSManager(base_path="/tmp/base", mode=0o744, temporary=True) as fsm:
fsm.mkdir(alias="tom", path="tom_dir", mode=0o744, temporary=True)
fsm.cd("tom")
fsm.mkdir("tom_dir")
fsm.mkfile("jerry", "jerry_file", 0o644, True)
fsm.ls()
fsm.save_all()
...
shutil.copy("/tmp/base/.fs-structure-full.json", "/tmp/another_base/.fs-structure-full.json")
...
with FSManager(base_path="/tmp/another_base", mode=0o744, temporary=True) as fsm:
fsm.load_all()
Structure will be saved at root to “.fs-structure-full.json”. But structure saves automatically when temporary=False. So if you initialize from the same directory, structure loads anyway.
Initialize you fs-manager from the directory on your disk
from fs_manager import FSManager
with FSManager(base_path="/tmp/base", mode=0o744, temporary=False) as fsm:
fsm.snappy(root_binded=True)
fsm.cd("some/path")
Thus, if root_binded=True your structure will be initialized from one root. In other words, you’ll be able to cd right from the root fs-manager object.
Also you can verify hashsum of files under any prefix like that
from fs_manager import FSManager
with FSManager(base_path="/tmp/base", mode=0o744, temporary=False) as fsm:
fsm.snappy(root_binded=True)
fsm.cd("some/path")
fsm.save_hashsums("sha1")
...
mismatches = fsm.check_hashsums(type="sha1", log_warnings=False)
There is much more inside :)
Release files for fs-manager 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fs-manager-0.3.0.zip | 21.8 kB | Details |
Release files / fs-manager-0.3.0.zip
| Download URL | fs-manager-0.3.0.zip |
|---|---|
| Size | 21.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95220c3ddf1a1769513830d58b907681cf7bdb8509b9355a2edf19679088e937
|
|
BLAKE2b-256 checksum How to use checksums |
9e79e94e3975b539a244708dc8d73d3dd2a60046bc79f14681591e33f10e20d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |