Best of Bash2024

  1. 1
    Article
    Avatar of hnHacker News·2y

    Zellij

    Zellij is a terminal workspace with batteries included. Users can try Zellij without installing it using the provided script. The features and installation instructions are available.

  2. 2
    Video
    Avatar of fireshipFireship·2y

    tmux in 100 Seconds

    tmux is an open-source terminal multiplexer created in 2007 by Nicholas Marriott. It allows users to manage multiple terminal sessions within a single window, providing features such as customizable panes, scripting capabilities, and plugin support. It enhances productivity by allowing quick navigation between sessions without needing a mouse, and sessions persist in the background even if closed. tmux can be installed on Unix-like systems including MacOS, Linux, and WSL.

  3. 3
    Article
    Avatar of itnextITNEXT·2y

    The Zsh Shell Tricks I Wish I’d Known Earlier

    Enhance your command-line productivity with Zsh! Zsh is a powerful Unix shell known for its robust features like command-line editing, spell checking, and programmable completion. This guide offers practical tips on cursor navigation, line editing, globbing, command history, parameter expansion, and custom commands. Learn to navigate directories efficiently, create and bind custom commands, and use Zsh’s advanced features to optimize your workflow. Whether you're a developer, system administrator, DevOps engineer, or tech enthusiast, mastering Zsh can significantly boost your efficiency.

  4. 4
    Article
    Avatar of communityCommunity Picks·2y

    10 simple Linux tips which save 50% of my time in the command line

    Discover 10 simple Linux tips to save time in the command line and work efficiently in UNIX. Learn how to execute previous commands quickly, repeat the last command, use history to find frequently used commands, apply regular expressions in grep and find, use aliases, and more.

  5. 5
    Article
    Avatar of communityCommunity Picks·2y

    Learn Bash Scripting in 10 minutes🧙‍♂️🪄

    Learn the basics of bash scripting in just 10 minutes. This guide covers essential commands like mkdir, cd, ls, and touch, demonstrates how to write your first bash script, and explains advanced topics such as variables, positional arguments, piping, input/output redirection, if/else statements, case statements, arrays, for loops, functions, AWK, and SED. Perfect for programmers looking to automate repetitive tasks on Linux or macOS.

  6. 6
    Article
    Avatar of communityCommunity Picks·2y

    BASH/Linux Interview Question for DevOps Engineers

    This post covers various interview questions for DevOps engineers related to BASH and Linux, including types of variables used in shell scripting, checking if a file exists, default file permissions, CRONTAB, debugging shell scripts, disk usage, shebang line, Linux process stages, metacharacters, renaming files, reading command line arguments, standard streams in Linux, differentiating between two shell variables, checking file existence, extracting part of a string variable, differences in string matching, SSH authentication, special shell variable $?, using grep to find numeric digits, listing file names only, checking if a zip file contains a directory, and when to use curly braces around shell variables.

  7. 7
    Article
    Avatar of communityCommunity Picks·2y

    What’s the Difference Between sh and Bash?

    Learn about the differences between sh and Bash, the features they offer, and which shell to use.

  8. 8
    Article
    Avatar of communityCommunity Picks·1y

    Optimizing Your Linux Shell Experience

    Optimize your Linux shell experience by using Huffman encoding principles. By measuring the frequency of your most-used commands, you can create shorter aliases to save time and reduce typos. Examples include aliases for common git commands. This method is applicable to both zsh and bash users.

  9. 9
    Article
    Avatar of nickjanetakisNick Janetakis·2y

    Creating Dynamic Variables in Bash

    Learn how to create dynamic variables in Bash using indirect expansion. This technique eliminates the need for if statements and reduces duplication of code for different environments.

  10. 10
    Video
    Avatar of communityCommunity Picks·2y

    Tmux has forever changed the way I write code.

    Discover the power and benefits of using Tmux for code writing, including session management, window and pane navigation, and crash prevention. Learn how to update Tmux and customize its configuration for a productive and enjoyable coding experience.

  11. 11
    Article
    Avatar of communityCommunity Picks·2y

    Distinctions Between Terminal, Command Line, Shell, and Prompt

    Understanding the distinctions between terminal, command line, shell, and prompt can be challenging for newcomers to Linux. The terminal is a graphical interface that runs a shell where commands are executed. The shell processes these commands, while the prompt indicates system readiness for input. The command line is a broader term for an interface where users run commands.

  12. 12
    Article
    Avatar of lobstersLobsters·1y

    Using (only) a Linux terminal for my personal computing in 2024

    A personal experiment of using a terminal-only Linux setup on a computer for personal computing over a two-week period. The author shares their experiences, challenges, and lessons learned in using a variety of terminal-based tools and software. While they enjoyed the process and learned a lot, they concluded that a terminal-only setup does not fully meet their personal computing needs.

  13. 13
    Video
    Avatar of devops-toolkitDevOps Toolkit·2y

    Transform Your Terminal: 3 Must-Have Zsh Plugins!

  14. 14
    Article
    Avatar of devsquadDev Squad·2y

    my dotfiles neovim+tmux+starship+alacritty+i3wm

    A repository that provides configuration files for setting up Neovim, Tmux, Starship, Alacritty, and i3wm. Users can easily set up their development environment by following the provided documentation.

  15. 15
    Article
    Avatar of itsfossIt's Foss·2y

    Effectively Use History Commands in Linux

    The history command in Linux is a powerful tool that allows users to view, search, and manage their command history. By pressing the up key or using the history command, users can see previously run commands. Commands can be rerun using their corresponding numbers, and the command history can be searched using grep or reverse search. Additionally, specific commands can be excluded from history, and there are methods to manage command history across multiple terminal sessions. The tutorial also covers advanced tips like replacing text in the last run command and manually clearing or deleting history entries.

  16. 16
    Article
    Avatar of hnHacker News·1y

    The Biggest Shell Programs in the World

    This post lists some of the largest and most substantial shell programs, focusing on hand-written scripts that use data structures and algorithms, and those exceeding 5,000 lines of code. Examples include ble.sh, a sophisticated Bash Line Editor with 61K lines of code; testssl.sh, a single-file script with 21K lines; Simplenetes, Kubernetes in 17K lines of shell; powerlevel10k, a Zsh theme with 12K lines of code; and many others. These scripts demonstrate advanced programming techniques and complexity within shell scripting.

  17. 17
    Video
    Avatar of primeagenThePrimeTime·2y

    The BEST CLI Tool

    Discover the power of JQ, a CLI tool for text manipulation and JSON querying. Learn how to select specific data, create custom objects, and perform advanced queries. JQ is easy to use and can be integrated with Vim for even greater efficiency.

  18. 18
    Article
    Avatar of communityCommunity Picks·2y

    What are the Different Types of Shells in Linux?

    Shells act as an interface between users and the kernel, allowing command execution and system interaction. Key Linux shells include the Bourne shell (sh), Bash (GNU Bourne-Again shell), C shell (csh), Korn shell (ksh), and Z Shell (zsh). Each shell has unique features suitable for specific tasks, such as Bourne's compact nature, Bash’s command recall, C shell’s aliasing, Korn shell’s script compatibility, and Zsh's customization.

  19. 19
    Video
    Avatar of devops-toolkitDevOps Toolkit·2y

    10 CLIs I Can Not Live Without!

  20. 20
    Article
    Avatar of communityCommunity Picks·2y

    Boilerplate for creating a Shell Script

    A basic boilerplate for creating a shell script, including error handling and usage instructions. The script checks for help flags, navigates to the script's directory, and has a main function designed to perform tasks.

  21. 21
    Video
    Avatar of beyondfireshipBeyond Fireship·2y

    GitHub Copilot now controls your command line...

    GitHub Copilot CLI makes command line tools accessible to anyone with little effort. It can generate and understand various CLI commands and create directories, files, and perform other tasks. It supports GitHub CLI and provides commands like 'explain' and 'suggest'.

  22. 22
    Video
    Avatar of communityCommunity Picks·2y

    Vim As Your Editor - Introduction

  23. 23
    Article
    Avatar of hnHacker News·2y

    wolandark/bash-dungeon: An educational dungeon crawler in the shell

    An educational dungeon crawler game created in bash, where directories represent dungeons, aiming to teach new users shell commands in a fun and interactive manner. It's a work in progress and requires Docker to get started. Users can sign up for a free GitPod account, pull the docker image, and follow simple commands like `cd`, `ls`, and `cat` to play.

  24. 24
    Article
    Avatar of communityCommunity Picks·2y

    Building a Static Site Generator in 3 steps

    Learn how to build a static site generator in 3 steps, including creating the markup, retrieving and processing the data, and configuring and automating the process. No dependencies or build steps required.

  25. 25
    Article
    Avatar of lobstersLobsters·2y

    meithecatte/bashfuck: Write any bash with only the punctuation characters

    bashfuck is a unique bash dialect allowing the use of only ASCII special characters, without letters or numbers. It comes with a bashfuck encoder for translating regular bash scripts. The tool relies on the precise wording of bash error messages in English locales and utilizes a workaround for capturing stderr. Users are encouraged to improve the existing decoding code through contributions.