Scripting, Web Services, Automation
A curated overview of popular shells, emulators, command-line tools, editors, programming languages, and automation environments.
Table of Contents
- Shells (Command-Line Interpreters)
- Emulators & CLI Environments
- Useful Command-Line Tools
- Code Tools
- Programming Languages for Scripting and Automation
- Environments for Deployments & Automation
- AI Engines
- LLM Frameworks & Tools
- Audio, Videom Subtitle Tools
Shells (Command-Line Interpreters)
- Bash – Default shell for most Linux distributions.
- Zsh – Advanced shell with powerful customization.
- Tcsh – Enhanced version of the C shell.
- Ksh (KornShell) – Unix shell with scripting enhancements.
- Fish – User-friendly shell with auto-suggestions.
Emulators & CLI Environments
- Cygwin – Linux-like environment for Windows.
- Git Bash – Bash shell for Windows, bundled with Git.
- PowerShell – Microsoft’s powerful scripting language.
- WSL (Windows Subsystem for Linux) – Runs Linux distributions on Windows.
Useful Command-Line Tools
- sed – Stream editor for modifying text.
- grep – Searches for patterns in files.
- awk – Text processing and reporting tool (geeks4geeks ex)
- gawk – GNU awk - Text processing and reporting tool.
- cut – Extract sections of text (geeks4geeks ex)
- tr – TRanslate or delete chars (geeks4geeks ex)
- xargs – Executes commands based on input.
Code Tools
- Visual Studio Code – Popular lightweight code editor.
- PyCharm – Python IDE with advanced features.
- JetBrains IntelliJ IDEA – Java development environment.
- Eclipse – Open-source IDE for multiple languages.
- Sublime Text – Fast and customizable text editor.
- Vim & Neovim – Terminal-based editors for power users.
Programming Languages for Scripting and Automation
- Python – Versatile scripting and automation language.
- Shell scripting (Bash, PowerShell) – Automates system tasks.
- Perl – Text processing and automation.
- Ruby – Used in DevOps and automation.
- Go – Efficient for system programming.
- JavaScript (Node.js) – Server-side scripting.
Environments for Deployments & Automation
- Git – Version control system.
- GitLab – Git repository management with CI/CD.
- Jenkins – Automation server for CI/CD.
- Hudson – Predecessor to Jenkins.
- Chef – Infrastructure automation tool.
- Ansible – Agentless automation for IT tasks.
- Terraform – Infrastructure as code for cloud provisioning.
Blockchain Languages
- Solidity – Dominant language for Ethereum and EVM-compatible smart contracts.
- Vyper – Python-like language for Ethereum, focused on security and simplicity.
- Rust – Used for high-performance blockchains (Solana, Polkadot, Near, etc.).
- Rholang – Concurrent language for the RChain platform.
- Simplicity – Low-level, formally verifiable language for Bitcoin smart contracts.
- Cargo – Rust’s package manager and build system (essential when working with Rust in blockchain).
Environments for Deployments & Automation
- Git – Version control system.
- GitLab – Git repository management with CI/CD.
- Jenkins – Automation server for CI/CD.
- Hudson – Predecessor to Jenkins.
- Chef – Infrastructure automation tool.
- Ansible – Agentless automation for IT tasks.
- Terraform – Infrastructure as code for cloud provisioning.
AI Engines
- Claude – Anthropic’s flagship AI model family.
- DeepSeek – Strong open-source reasoning models.
- OpenAI (GPT series) – Creator of GPT-4o, o1, etc.
- Google Gemini – Google’s multimodal AI models.
- Groq – Ultra-fast inference engine.
- Grok – xAI’s AI models.
- Mistral – Leading European open-source models.
- Llama (Meta) – Meta’s open foundation models.
- Perplexity – AI-powered search and research engine.
- Brave Leo – Privacy-focused AI assistant by Brave.
- Microsoft Copilot – Microsoft’s AI assistant (powered by GPT).
- You.com – AI search engine with multiple model options.
LLM Frameworks & Tools
- PyTorch – Most popular deep learning framework for LLM research and training.
- TensorFlow – Google’s production-grade machine learning platform.
- JAX – High-performance numerical computing (popular in advanced LLM research).
- Hugging Face – The largest hub for open-source models, datasets, and tools.
- Transformers – Hugging Face library for easy LLM usage.
- CUDA – NVIDIA’s parallel computing platform essential for GPU-accelerated LLM training and inference.
- cuDNN – NVIDIA CUDA Deep Neural Network library, provides optimized building blocks for deep learning frameworks.
Audio, Video, Subtitle Tools
- FFmpeg – The most powerful tool for audio/video conversion, editing, cutting, merging, and streaming.
- FFmpeg Builds – Pre-compiled latest versions with best codecs.
- yt-dlp – Best YouTube/downloader with excellent subtitle support.
- yt-dlp – Best maintained fork of youtube-dl. Download videos and audio from YouTube and thousands of other sites.
- youtube-dl – Original YouTube downloader (still widely used).
- SoX (Sound eXchange) – Powerful Swiss-army knife for audio editing and format conversion.
- MKVToolNix (mkvmerge) – Create, edit, and inspect Matroska (.mkv) files.
- HandBrakeCLI – Command-line version of HandBrake for video encoding and compression.
- mpv – Lightweight, powerful media player with excellent CLI scripting support.
- VLC (vlc) – Can be controlled via command line for conversion and streaming.
- AtomicParsley – Read and write metadata for MP4/M4A files.
- Streamlink – Extract and pipe live streams (Twitch, etc.) to players like mpv.
- subliminal – Python CLI tool to download subtitles from OpenSubtitles and other sources.
- OpenSubtitles – Largest subtitle database (used via subliminal or browser).
- Subtitle Edit – Powerful subtitle editor with CLI support.
- Jubler – Cross-platform subtitle editor.
- Aegisub – Advanced subtitle editor popular for ASS/SSA formats.
- Cinelerra-GG – Professional non-linear video editor for Linux.
- mkvmerge – Merge video with external subtitle files.
- Avidemux – Simple and powerful video editor with excellent CLI support for cutting, filtering, and converting.
- OBS Studio – Best tool for high-quality screen recording and live streaming (supports CLI and obs-cli).
- SimpleScreenRecorder – Lightweight and high-performance screen recorder for Linux.
- obs-cli – Command-line control for OBS Studio.
- FFmpeg – Industry standard for batch video conversion, compression, and format changing.
- HandBrakeCLI – Command-line video transcoder focused on compression and device compatibility.
Audio, Video & Subtitle Tools
Audio Tools
- Audacity – Popular GUI audio editor with strong CLI/batch capabilities.
- LAME – Best MP3 encoder (often used with FFmpeg).
- FFmpeg – Essential for all audio extraction and conversion.
- SoX (Sound eXchange) – Swiss-army knife for audio editing and format conversion.
- yt-dlp – Download audio from YouTube and thousands of other sites.
- AtomicParsley – Read and write metadata for audio files.
Video Tools
- FFmpeg – Industry standard for video conversion, editing, cutting, and compression.
- yt-dlp – Best tool to download videos from YouTube and other platforms.
- HandBrakeCLI – Command-line video transcoder for compression.
- Avidemux – Simple video editor with strong CLI support.
- Cinelerra-GG – Professional non-linear video editor for Linux.
- OBS Studio – Best screen recording and live streaming tool.
- SimpleScreenRecorder – Lightweight screen recorder for Linux.
- MKVToolNix (mkvmerge) – Create and edit MKV video files.
- mpv – Lightweight and scriptable media player.
- Shotcut – Free, open-source video editor with good export options.
- Kdenlive – Powerful non-linear video editor for Linux.
- VLC – Versatile media player with powerful command-line support for conversion, streaming, and image capture (snapshots).
Subtitle Tools
- yt-dlp – Excellent built-in support for downloading subtitles.
- subliminal – CLI tool to automatically download subtitles.
- OpenSubtitles – Largest public subtitle database.
- Subtitle Edit – Powerful subtitle editor (has CLI support).
- Jubler – Cross-platform subtitle editor.
- Aegisub – Advanced subtitle editor for ASS/SSA formats.
- mkvmerge – Merge video with external subtitle tracks.