Skip to main content

Command line interface for basic file system operations.

Project description

Lint Test

clifs

Multi-platform command line interface for file system operations.

For installation run:

pip install clifs

After installation all functionality can be accessed typing clifs in the command line, which alone will show a list of installed plugins.

To implement your own plugin best inherit from the clifs.ClifsPlugin class.

Plugins installed by default:

Rename (ren)

Rename files or directories using regular expressions. Supports options such as selecting files and folders by sub-string filter, time of the last modification or creation/change, or by list. Type clifs ren --help for a list of options. By default a preview mode is running to prevent unpleasant surprises.

Example:

Command:

clifs ren ".\some_dir" --recursive --pattern "(?<!_suffix)\.(.*)" --replacement "_suffix.\1"

Output:

Disc Usage (du)

Show disc usage for one or more directories.

Example:

Command:

clifs du "some\dir\on\some_drive" "some\other\dir\on\some_other_drive" "some\other\dir\on\yet_another_drive"

Output:

Directory Tree (tree)

Show a directory tree including sizes of folders and files. Supports options such as controlling the tree depth or showing folders only. Type clifs tree --help for a list of options.

Example:

Command:

clifs tree .\clifs --depth 2

Output:

Streaming Editor (sed)

Edit text files using regular expressions. Runs line by line and gives a preview of the changes by default. Supports options such as picking lines by number, selection of files by sub-string filter, time of the last modification or creation/change, or by list. Type clifs sed --help for a list of options.

You can e.g. remove specific lines choosing -pt ".*[\r\n]+" -l 5 or add lines in specific locations using -pt "[\r\n]+" -rp "\nadded line\n" -l 3,4".

Example:

clifs sed ".\some\place" --pattern "(s\w*)" --replacement "no \1"  --lines 4-6 --recursive

Output:

Copy (cp)

Copy files from one location to the other. Supports selection of files and folders by sub-string filter, time of the last modification or creation/change, or by list. Also supports flattening the folder hierarchy. Type clifs cp --help for a full list of options.

Example:

Command:

clifs cp ".\some_source_dir" ".\some_dest_dir" --recursive --flatten --keep_all

Output:

Move (mv)

Move files from one location to the other. Supports selection of files and folders by sub-string filter, time of the last modification or creation/change, or by list. Also supports flattening the folder hierarchy. Type clifs mv --help for a full list of options.

Example:

Command:

clifs mv ".\some_source_dir" ".\some_dest_dir" --recursive --skip_existing

Output:

Delete (del)

Delete files from the drive. Supports options such as selecting files and folders by sub-string filter, time of the last modification or creation/change, or by list. Type clifs del --help for a full list of options.

Example:

Command:

clifs del ".\some_dir" --recursive --filterstring ".py"

Output:

Backup (backup)

Back up files and folders. Supports backing up via a config file giving multiple source/target pairs and the option to delete files which are not present in the source directory from the corresponding target directory. Type clifs backup --help for a full list of options.

Example:

Command:

clifs backup --dir_source ".\some_source_dir" --dir_dest ".\some_dest_dir" --delete --verbose

Output:

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

clifs-1.6.0.tar.gz (694.5 kB view hashes)

Uploaded Source

Built Distribution

clifs-1.6.0-py3-none-any.whl (39.1 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