Linux Bash
SkillFiles & storageExpert assistance with Linux bash commands, shell scripting, system administration, file operations, and command-line utilities. Use this when working with bash scripts, Linux system operations, or command-line tasks.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Linux Bash skill
What this skill tells your AI
The instructions your AI receives, as published by oriolrius/pki-manager-web in .claude/skills/linux-bash/SKILL.md and read by ahel’s review.
Expert guidance for Linux bash operations, scripting, and system administration.
Core Commands
File Operations
ls -lah- List files with details, including hiddenfind /path -name "pattern"- Find files by namegrep -r "pattern" /path- Recursive text searchchmod +x file- Make file executablechown user:group file- Change ownershiptar -czf archive.tar.gz dir/- Create compressed archivetar -xzf archive.tar.gz- Extract archive
Process Management
ps aux | grep process- Find running processestop/htop- Monitor system resourceskill -9 PID- Force kill processnohup command &- Run command in backgroundjobs- List background jobsfg %1- Bring job to foreground
System Information
df -h- Disk usage human-readabledu -sh dir/- Directory sizefree -h- Memory usageuname -a- System informationlsb_release -a- Distribution info
Text Processing
cat file | head -n 10- First 10 linestail -f log.txt- Follow log filesed 's/old/new/g' file- Replace textawk '{print $1}' file- Print first columnsort file | uniq- Remove duplicates
Shell Scripting Best Practices
Script Template
#!/bin/bash
set -euo pipefail # Exit on error, undefined vars, pipe failures
# Script description
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
main() {
# Your logic here
echo "Hello, World!"
}
main "$@"
Error Handling
# Check command success
if ! command -v tool &> /dev/null; then
echo "Error: tool not found" >&2
exit 1
fi
# Trap errors
trap 'echo "Error on line $LINENO"' ERR
Variables
# Constants (uppercase)
readonly CONFIG_FILE="/etc/app.conf"
# Variables (lowercase)
user_input="$1"
# Arrays
files=("file1.txt" "file2.txt")
for file in "${files[@]}"; do
echo "$file"
done
Common Patterns
Check if file exists
if [[ -f "file.txt" ]]; then
echo "File exists"
fi
Loop through files
for file in *.txt; do
echo "Processing $file"
done
Read user input
read -p "Enter value: " user_value
Function definition
my_function() {
local arg1="$1"
echo "Received: $arg1"
}
Tips
- Quote variables: Always use
"$variable"to prevent word splitting - Use [[ ]] for tests: More features than [ ]
- Shellcheck: Use
shellcheck script.shto validate scripts - Exit codes: Use
$?to check last command status - Debugging: Use
set -xto trace execution
Safety First
- Always test scripts in safe environment first
- Use
set -eto exit on errors - Validate input parameters
- Quote file paths to handle spaces
- Use absolute paths when possible
Signals
- GitHub stars
- 21
- Forks
- 4
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
linux-bash- Source
- github.com/oriolrius/pki-manager-web