Skip to content
generated from dreamer-coding/app-c

Shark Tool is the ultimate all-in-one file and system administration utility. Built for admins, developers, and power users, Shark unifies essential file management, automation, and analysis tasks into a single, powerful command-line interface—eliminating the need for multiple separate tools.

License

Notifications You must be signed in to change notification settings

fossillogic/shark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shark Tool Logo

A Command-Line Power Utility by Fossil Logic

Shark Tool is the ultimate all-in-one file and system administration utility. Built for admins, developers, and power users, Shark unifies essential file management, automation, and analysis tasks into a single, powerful command-line interface—eliminating the need for multiple separate tools. Its unique commands, such as grammar for advanced text analysis, summary for structured file summaries, and introspect for deep file inspection, set Shark apart by providing capabilities rarely found in traditional CLI utilities.


Features

  • Comprehensive file and directory operations (show, copy, move, delete, rename, create)
  • Powerful archive creation, extraction, and listing (zip, tar, gz)
  • Advanced recursive search by name or content with filtering options
  • Smart file timestamp and metadata management
  • Cross-platform compatibility (Linux, macOS, Windows)
  • Command palette for quick access to all features
  • Grammar analysis, correction, and tone detection via SOAP API
  • Structured file summaries and statistics (keywords, topics, entropy)
  • File synchronization and backup with flexible options
  • Real-time file monitoring and change detection

Command Palette


Core File Operations

Command Description Common Flags
show Display files and directories. -a, --all Show hidden files
-l, --long Detailed info
-h, --human Human-readable sizes
-r, --recursive Include subdirs
-d, --depth <n> Limit recursion depth
--as Format options "list", tree, graph, tiles.
--time Show timestamps
move Move or rename files/directories. -f, --force Overwrite without prompt
-i, --interactive Ask before overwrite
-b, --backup Backup before move
copy Copy files or directories. -r, --recursive Copy subdirectories
-u, --update Only copy newer
-p, --preserve Keep permissions/timestamps
remove / delete Delete files or directories. -r, --recursive Delete contents
-f, --force No confirmation
-i, --interactive Confirm per file
--trash Move to system trash
rename Rename files or directories. -f, --force Overwrite target
-i, --interactive Confirm before overwrite
create Create new directories or files. -p, --parents Create parent dirs
-t, --type Create file or dir
search Find files by name or content. -r, --recursive Include subdirs
-n, --name Match filename
-c, --content Search in file contents
-i, --ignore-case Case-insensitive
archive Create, extract, or list archives. -c, --create New archive
-x, --extract Extract contents
-l, --list List archive
-f <format> Format: zip/tar/gz
-p, --password Encrypt archive
view Output file contents to terminal. -n, --number Number all lines
-b, --non-blank Number non-empty lines
-s, --squeeze Remove blank lines
-h, --head <n> First n lines
-t, --tail <n> Last n lines
--time Show timestamps
compare Compare two files/directories (text or binary). -t, --text Line diff
-b, --binary Binary diff
--context <n> Show context lines
--ignore-case Ignore case differences
help Display help for supported commands. --examples Show usage examples
--man Full manual
sync Synchronize files/directories. -r, --recursive Include subdirs
-u, --update Copy only newer
--delete Remove extraneous files from target
watch Continuously monitor files or directories. -r, --recursive Include subdirs
-e, --events <list> Filter events: create/modify/delete
-t, --interval <n> Poll interval in seconds
rewrite Modify or update file contents, timestamps, or size. -i In-place edit
--append Append instead of overwrite
-n No newline
--size <n> Set exact file size
introspect Examine file contents, type, or metadata. -n <lines> Number of lines
-c Count lines, words, bytes
--fson FSON output
--mime Show MIME type
grammar Perform grammar analysis, correction, sanitization, tone detection, and content-risk scanning through the SOAP API. --check Run grammar check
--fix Auto-correct grammar
--sanitize Remove rot-brain/meme language
--suggest Suggest alternatives
--tone Detect tone
--detect <type> Run detectors: ragebait, clickbait, spam, woke, bot, sarcasm, formal, snowflake, offensive, neutral, hype, quality, political, conspiracy, marketing, technobabble
summary Generate a structured summary of one or more files (text, logs, code, docs). -l, --lines <n> Limit lines analyzed
--auto Auto-detect file type
--keywords Extract keywords
--topics Topic clustering
--stats File statistics (chars/lines/entropy)
--fson Output structured FSON summary
storage Deduplicate, catalog, snapshot, organize, and prune files. --dedupe Duplicates
--catalog Catalog
--index Index
--snapshot Snapshot
--prune Prune

Global Flags (Available to All Commands)

Flag Description
--help Show command help.
--version Display Shark Tool version.
-v, --verbose Enable detailed output.
-q, --quiet Suppress standard output.
--dry-run Simulate actions without changes.
--color Colorize output where applicable.
--time Display timestamps in output.

Usage Examples

Example Description
shark show -alh --as=tree --time List all files (including hidden) in long, human-readable format as a tree, with timestamps.
shark move -i -b old.txt archive/old.txt Move a file interactively, creating a backup before moving.
shark copy -rp src/ backup/ Recursively copy the src/ directory to backup/, preserving permissions and timestamps.
shark remove -r --trash temp/ Recursively move the temp/ directory and its contents to the system trash.
shark rename -i draft.md final.md Rename a file with confirmation before overwriting the target.
shark create -p -t dir logs/archive/2024/ Create a nested directory structure for logs.
shark search -rc "config" Recursively search for the string "config" inside files.
shark archive -c -f tar project.tar src/ Create a TAR archive from the src/ directory.
shark view -n -h 20 --time notes.txt View the first 20 lines of a file with line numbers and timestamps.
shark compare -t main_v1.c main_v2.c --context 5 Show a line-by-line diff of two files with 5 lines of context.
shark sync -ru src/ dest/ Synchronize files from src/ to dest/, copying only newer files recursively.
shark watch -r -e create,delete src/ Monitor the src/ directory recursively for file creation and deletion events.
shark rewrite -i --append log.txt "New entry" Append a new entry to a log file in-place.
shark introspect --mime report.pdf Show the MIME type of a file.
shark grammar --check --tone notes.txt Run a grammar check and detect tone in a text file.
shark summary --auto --keywords --stats article.md Generate an automatic structured summary with keywords and statistics for a document.
shark storage --dedupe --catalog ~/Documents/ Deduplicate files and create a catalog of your Documents directory.

Prerequisites

Ensure you have the following installed before starting:

  • Meson Build System: This project relies on Meson. For installation instructions, visit the official Meson website.

Setting Up Meson Build

  1. Install Meson:
    • Follow the installation guide on the Meson website for your operating system.

Setting Up, Compiling, Installing, and Running the Project

  1. Clone the Repository:

    git clone https://github.com/fossillogic/shark.git
    cd shark
  2. Configure the Build:

    meson setup builddir
  3. Compile the Project:

    meson compile -C builddir
  4. Install the Project:

    meson install -C builddir
  5. Run the Project:

    shark --help

Contributing

Interested in contributing? Please open pull requests or create issues on the GitHub repository.

Feedback and Support

For issues, questions, or feedback, open an issue on the GitHub repository.

License

This project is licensed under the Apache Public License.

About

Shark Tool is the ultimate all-in-one file and system administration utility. Built for admins, developers, and power users, Shark unifies essential file management, automation, and analysis tasks into a single, powerful command-line interface—eliminating the need for multiple separate tools.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •