Best of Bash2025

  1. 1
    Video
    Avatar of bigboxswebigboxSWE·1y

    How To Become Obsessed With Programming

    Solving personal problems can lead to an obsession with programming. The author shares how creating a script to restore their development environment during frequent power outages helped them learn bash and Unix commands. They also mention learning devops and vim key bindings to resolve other issues, suggesting that tackling problems that affect you personally can boost your interest in coding.

  2. 2
    Article
    Avatar of freecodecampfreeCodeCamp·22w

    freeCodeCamp's New Relational Databases Certification is Now Live

    freeCodeCamp launched a new Relational Databases certification covering Bash scripting, SQL, and Git. The certification includes interactive lessons, workshops, labs, and quizzes across multiple modules, with five required certification projects. Students must pass a 50-question exam using an open-source exam environment that runs on laptops/desktops. The certification is free and verified, with anti-cheating measures including randomized questions, weekly attempt limits, and manual review. Exams are closed-book and timed, with one attempt per week allowed. The certification replaces portions of the previous Full Stack Developer certification.

  3. 3
    Video
    Avatar of techworldwithnanaTechWorld with Nana·44w

    Bash Scripting Tutorial for Beginners

    A comprehensive beginner's guide to bash scripting that transforms manual command execution into automated scripts. Covers fundamental concepts like variables, arrays, loops, and conditionals through a practical log analysis example. Shows how to create a script that automatically scans log files for errors, generates reports, and provides intelligent alerts when issues exceed thresholds. Demonstrates the progression from basic command execution to advanced automation techniques that save time and ensure consistency in DevOps workflows.

  4. 4
    Article
    Avatar of lobstersLobsters·24w

    Use Python for Scripting!

    Python 3 offers significant advantages over shell scripts for automation tasks, particularly for cross-platform compatibility. While Bash scripts often fail between Linux and Mac due to GNU vs BSD tool differences, Python's standardized library works consistently across systems. Python provides better readability with human-readable method names, a comprehensive standard library covering JSON, HTTP, and data structures, and is pre-installed on most machines. The article demonstrates practical examples comparing Bash's cryptic syntax with Python's clearer alternatives, recommending Python for scripts that grow beyond 10-20 lines or become difficult to maintain.

  5. 5
    Video
    Avatar of codingwithsphereCoding with Sphere·50w

    Everyone should learn Bash

    Bash scripting is an essential skill for developers that can significantly streamline development workflows. The post demonstrates practical applications through a C project example, showing how to create build scripts that compile and run programs with single commands. It covers advanced features like command-line arguments, conditional logic, and aliases for faster development. Real-world examples include automating multi-command development environments, syncing files across devices, and code generation for languages lacking generics. The author recommends learning core utilities first, then gradually building scripting knowledge through practical projects rather than studying syntax extensively upfront.

  6. 6
    Article
    Avatar of lobstersLobsters·28w

    How I fell in love with calendar.txt

    A developer shares their experience adopting calendar.txt, a plain text file for managing calendar events using Unix command-line tools. They demonstrate how simple grep, vim, and bash aliases provide elegant solutions for viewing daily events, editing dates, and handling recurring events—all faster and more reliable than web-based calendar interfaces. The approach offers simplicity, trust, and personal customization through Unix tools, though mobile access remains challenging on proprietary systems like Android.

  7. 7
    Article
    Avatar of do_communityDigitalOcean Community·51w

    Bash Explained: How the Most Popular Linux Shell Works

    Bash (Bourne Again Shell) is a command-line interpreter and scripting language that serves as the default shell on most Linux distributions. It provides both an interactive interface for executing commands and a scripting environment for automation tasks. The guide covers Bash's history, features like command history and tab completion, differences from other shells, and practical applications in modern DevOps workflows including CI/CD pipelines, system administration, and cloud automation. It includes hands-on examples, common troubleshooting tips, and best practices for writing robust scripts.

  8. 8
    Video
    Avatar of christitustechChris Titus Tech·48w

    How to Make Bash Terminal look and feel GREAT!

    A comprehensive guide to enhancing bash terminal appearance and functionality through nerd fonts installation, Starship prompt customization, and useful aliases. Covers font installation methods across Linux distributions, automated setup scripts, and productivity-boosting terminal configurations including file management shortcuts, clipboard utilities, and directory navigation improvements.

  9. 9
    Article
    Avatar of logrocketLogRocket·1y

    Bash vs. Zsh: Key differences and when to use each

    Bash and Zsh are powerful Unix-based command-line shells. Bash, known for its simplicity and speed, is the default shell on most Linux systems and offers strong scripting capabilities. Zsh, with advanced customization and interactivity, is the default shell on macOS since Catalina and supports plugins through Oh My Zsh. Both shells can be run on macOS, Linux, and Windows, allowing users to select based on their preferences and system requirements.

  10. 10
    Article
    Avatar of nickjanetakisNick Janetakis·1y

    Put All of Your Tmux Configs and Plugins in a .config

    Learn how to streamline and organize your Tmux configurations and plugins by placing them in the .config/tmux directory. The post covers setting Tmux version 3.1+ to recognize configurations from .config/tmux/tmux.conf and includes tips on customizing plugin installation paths and using Tmux Resurrect for state management.

  11. 11
    Article
    Avatar of do_communityDigitalOcean Community·48w

    How to Send Email in Linux from the Command Line

    A comprehensive guide covering multiple Linux command-line tools for sending emails, including mail, mailx, mutt, msmtp, and sendmail. The tutorial explains installation procedures for different distributions, demonstrates basic email sending with attachments, covers SMTP authentication for external services like Gmail, and provides practical bash scripting examples for automated notifications. It includes a detailed comparison table helping users choose the right tool based on their specific needs, from simple text emails to complex attachments with secure authentication.

  12. 12
    Article
    Avatar of communityCommunity Picks·1y

    How I Setup New MacBooks

    Setting up a new MacBook can be tedious. Learn how to streamline the process using Brewfiles to install apps, command line utilities, and fonts in bulk, and macOS defaults to customize system settings. Enhance terminal productivity with favorite Zsh plugins and aliases.

  13. 13
    Video
    Avatar of primeagenThePrimeTime·23w

    Github continues to Downfall

    GitHub Actions has suffered from critical bugs for years, including a poorly implemented sleep function that causes infinite loops, consuming entire CPUs and costing users thousands of dollars. A simple fix submitted in 2024 took over a year to merge despite the bug causing CI jobs to hang indefinitely. The codebase shows questionable engineering decisions, from using ping commands as sleep alternatives to busy-wait loops that waste compute resources. These neglected issues have led projects like Zig to abandon GitHub entirely for alternative platforms.

  14. 14
    Article
    Avatar of kodekloudKodeKloud's Squad·43w

    Mastering Linux: 10 Daily Commands You Can’t Ignore

    Essential Linux command-line tips for developers and system administrators, covering command chaining, file operations, automation with cron, shell customization, and safety practices. Includes practical advice on using aliases, history search, terminal editors, and combining commands for efficient workflows.

  15. 15
    Article
    Avatar of faunFaun·1y

    Five Bash Scripts Every DevOps Must Know💡

    Explore five essential bash scripts for DevOps tasks including backup creation, system monitoring, security audits, service availability checks, and disk partitioning. These basic scripts offer powerful solutions for everyday challenges in managing IT infrastructures.

  16. 16
    Article
    Avatar of lobstersLobsters·30w

    A Word on Omarchy

    A critical technical review of Omarchy, a pre-configured Arch Linux distribution created by David Heinemeier Hansson. The analysis reveals significant security vulnerabilities including a non-functional firewall by default, weak password policies, and poorly written bash scripts lacking proper error handling. The review examines missing essential features like RAID support, swap configuration, and proper laptop power management, while highlighting the gap between marketing claims of being a production-ready system and the actual implementation quality.

  17. 17
    Article
    Avatar of selfhstselfh.st·23w

    dockcheck: A CLI Tool for Updating Container Images

    dockcheck is a CLI tool that checks for Docker container image updates without pulling images first. It supports parallel processing, automatic updates, exclusion filters, and notifications via multiple channels (Matrix, Telegram). Configuration is handled through flags or a config file, with Docker Compose labels for fine-grained control. The tool can be scheduled via cron for automated update workflows, with options to delay updates until releases stabilize. Community contributions have added integrations for Prometheus, Zabbix, Unraid, and Synology DSM.

  18. 18
    Article
    Avatar of otqajuf6zdm9hfrwtlr9nIsaac de Andrade·37w

    Replacing Bash for scripting?

    A developer seeks alternatives to Bash for scripting tasks, having found Lua more verbose for command execution and stdout handling. They're looking for community experiences with replacing Bash using Python, Fish shell, or compiled languages for more capable scripting solutions.

  19. 19
    Article
    Avatar of rubylaRUBYLAND·1y

    Migrating Off Oh-My-Zsh and other recent Yak Shavings

    Stefan Wienert shares his experiences transitioning away from Oh-My-Zsh to a more simplified Zsh setup inspired by Bohidar Batsov. He leverages the customizable Starship prompt and provides detailed configurations for his development environment, including SSH-Agent integrations. Additionally, he highlights the improvements from upgrading the Ruby version manager asdf to its latest version rewritten in Go.

  20. 20
    Article
    Avatar of gomonkGo monk·35w

    Go for Bash Programmers

    A tutorial series introducing Go programming language concepts to developers familiar with Bash scripting. The content bridges the gap between shell scripting and systems programming by comparing syntax, patterns, and approaches between the two languages.

  21. 21
    Video
    Avatar of dreamsofcodeDreams of Code·40w

    10 CLI apps that have actually improved the way I work in the terminal

    A comprehensive guide to 10 command-line tools that enhance terminal productivity, including zoxide for directory navigation, ripgrep for faster text searching, fd for improved file finding, tmux for terminal multiplexing, GitHub CLI for repository management, Doppler CLI for secrets management, pass for password storage, jq for JSON processing, stow for dotfiles management, and fzf for fuzzy finding. Each tool addresses limitations of traditional Unix commands with modern alternatives that offer better performance, usability, and integration capabilities.

  22. 22
    Article
    Avatar of hnHacker News·48w

    how i use my terminal

    A developer shares their highly customized terminal setup that replicates VSCode features using tmux, nvim, and custom scripts. The workflow includes SSH connections, tmux session management, file searching through scrollback history, and seamless file opening across remote servers. Key features include regex-based filename detection, automated pane management, and editor integration that works without local file copies. While powerful and efficient, the author acknowledges the setup requires significant customization and may not be suitable for most users.

  23. 23
    Article
    Avatar of hnHacker News·36w

    Julien-cpsn/desktop-tui: A desktop environment without graphics

    Desktop-TUI is a Rust-based terminal user interface that creates a desktop environment without graphics, similar to tmux. It allows users to parse shortcut files, display applications through stdout, move and resize windows, change tiling options, and handle file/folder selection for command arguments. The project uses ncurses backend and supports TOML configuration files for defining application shortcuts with customizable positioning and padding.

  24. 24
    Article
    Avatar of rubylaRUBYLAND·36w

    Git Stashes

    Git stashes provide a lightweight way to temporarily save work without committing changes. With Git 2.51.0, stashes can now be exported and imported, enabling sharing across machines and team members. The guide covers essential stash operations including push, pop, list, show, drop, and clear commands, along with configuration tips for better formatting and workflow automation using Bash functions.

  25. 25
    Video
    Avatar of dreamsofcodeDreams of Code·20w

    10 Zsh hacks I wish I knew about sooner

    Zsh offers powerful productivity features beyond basic usage. Key capabilities include editing command buffers in your text editor, undoing terminal actions, expanding historical commands with magic-space, automating directory-based actions with chpwd hooks, opening files by extension using suffix aliases, creating reusable command snippets with global aliases, batch renaming files with zmv, bookmarking directories, building custom widgets for buffer manipulation, and creating hotkeys that insert command templates with cursor positioning.