Claude
Cursor
opencode
Skill
bash-linux
Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems.
Virus-scanned
Reviewed automatically before listing.
Download
vodailocz-kilo-kit-mcp-skills_operations_bash-linux-0448e6c.zip · 1 KB
Install
skills CLI
npx skills add https://github.com/VoDaiLocz/kilo-kit-mcp/tree/main/skills/operations/bash-linux
Claude Code
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install vodailocz-kilo-kit-mcp@llmmart
Git
git clone https://github.com/VoDaiLocz/kilo-kit-mcp.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole vodailocz/kilo-kit-mcp collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Bash Linux Patterns
Essential patterns for Bash on Linux/macOS.
1. Operator Syntax
Chaining Commands
| Operator | Meaning | Example |
|---|---|---|
; |
Run sequentially | cmd1; cmd2 |
&& |
Run if previous succeeded | npm install && npm run dev |
\|\| |
Run if previous failed | npm test \|\| echo "Tests failed" |
\| |
Pipe output | ls \| grep ".js" |
2. File Operations
Essential Commands
| Task | Command |
|---|---|
| List all | ls -la |
| Find files | find . -name "*.js" -type f |
| File content | cat file.txt |
| First N lines | head -n 20 file.txt |
| Last N lines | tail -n 20 file.txt |
| Follow log | tail -f log.txt |
| Search in files | grep -r "pattern" --include="*.js" |
| File size | du -sh * |
| Disk usage | df -h |
3. Process Management
| Task | Command |
|---|---|
| List processes | ps aux |
| Find by name | ps aux \| grep node |
| Kill by PID | kill -9 <PID> |
| Find port user | lsof -i :3000 |
| Kill port | kill -9 $(lsof -t -i :3000) |
| Background | npm run dev & |
| Jobs | jobs -l |
| Bring to front | fg %1 |
4. Text Processing
Core Tools
| Tool | Purpose | Example |
|---|---|---|
grep |
Search | grep -rn "TODO" src/ |
sed |
Replace | sed -i 's/old/new/g' file.txt |
awk |
Extract columns | awk '{print $1}' file.txt |
cut |
Cut fields | cut -d',' -f1 data.csv |
sort |
Sort lines | sort -u file.txt |
uniq |
Unique lines | sort file.txt \| uniq -c |
wc |
Count | wc -l file.txt |
5. Environment Variables
| Task | Command |
|---|---|
| View all | env or printenv |
| View one | echo $PATH |
| Set temporary | export VAR="value" |
| Set in script | VAR="value" command |
| Add to PATH | export PATH="$PATH:/new/path" |
6. Network
| Task | Command |
|---|---|
| Download | curl -O https://example.com/file |
| API request | curl -X GET https://api.example.com |
| POST JSON | curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL |
| Check port | nc -zv localhost 3000 |
| Network info | ifconfig or ip addr |
7. Script Template
#!/bin/bash
set -euo pipefail # Exit on error, undefined var, pipe fail
# Colors (optional)
RED='\033[0;31m'
GREEN='\033[0;32m'
NC='\033[0m'
# Script directory
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Functions
log_info() { echo -e "${GREEN}[INFO]${NC} $1"; }
log_error() { echo -e "${RED}[ERROR]${NC} $1" >&2; }
# Main
main() {
log_info "Starting..."
# Your logic here
log_info "Done!"
}
main "$@"
8. Common Patterns
Check if command exists
if command -v node &> /dev/null; then
echo "Node is installed"
fi
Default variable value
NAME=${1:-"default_value"}
Read file line by line
while IFS= read -r line; do
echo "$line"
done < file.txt
Loop over files
for file in *.js; do
echo "Processing $file"
done
9. Differences from PowerShell
| Task | PowerShell | Bash |
|---|---|---|
| List files | Get-ChildItem |
ls -la |
| Find files | Get-ChildItem -Recurse |
find . -type f |
| Environment | $env:VAR |
$VAR |
| String concat | "$a$b" |
"$a$b" (same) |
| Null check | if ($x) |
if [ -n "$x" ] |
| Pipeline | Object-based | Text-based |
10. Error Handling
Set options
set -e # Exit on error
set -u # Exit on undefined variable
set -o pipefail # Exit on pipe failure
set -x # Debug: print commands
Trap for cleanup
cleanup() {
echo "Cleaning up..."
rm -f /tmp/tempfile
}
trap cleanup EXIT
Remember: Bash is text-based. Use
&&for success chains,set -efor safety, and quote your variables!
Files (kilo-kit-mcp)
-
SKILL.md 4.1 KB
--- name: bash-linux description: Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems. allowed-tools: Read, Write, Edit, Glob, Grep, Bash --- # Bash Linux Patterns > Essential patterns for Bash on Linux/macOS. --- ## 1. Operator Syntax ### Chaining Commands | Operator | Meaning | Example | |----------|---------|---------| | `;` | Run sequentially | `cmd1; cmd2` | | `&&` | Run if previous succeeded | `npm install && npm run dev` | | `\|\|` | Run if previous failed | `npm test \|\| echo "Tests failed"` | | `\|` | Pipe output | `ls \| grep ".js"` | --- ## 2. File Operations ### Essential Commands | Task | Command | |------|---------| | List all | `ls -la` | | Find files | `find . -name "*.js" -type f` | | File content | `cat file.txt` | | First N lines | `head -n 20 file.txt` | | Last N lines | `tail -n 20 file.txt` | | Follow log | `tail -f log.txt` | | Search in files | `grep -r "pattern" --include="*.js"` | | File size | `du -sh *` | | Disk usage | `df -h` | --- ## 3. Process Management | Task | Command | |------|---------| | List processes | `ps aux` | | Find by name | `ps aux \| grep node` | | Kill by PID | `kill -9 <PID>` | | Find port user | `lsof -i :3000` | | Kill port | `kill -9 $(lsof -t -i :3000)` | | Background | `npm run dev &` | | Jobs | `jobs -l` | | Bring to front | `fg %1` | --- ## 4. Text Processing ### Core Tools | Tool | Purpose | Example | |------|---------|---------| | `grep` | Search | `grep -rn "TODO" src/` | | `sed` | Replace | `sed -i 's/old/new/g' file.txt` | | `awk` | Extract columns | `awk '{print $1}' file.txt` | | `cut` | Cut fields | `cut -d',' -f1 data.csv` | | `sort` | Sort lines | `sort -u file.txt` | | `uniq` | Unique lines | `sort file.txt \| uniq -c` | | `wc` | Count | `wc -l file.txt` | --- ## 5. Environment Variables | Task | Command | |------|---------| | View all | `env` or `printenv` | | View one | `echo $PATH` | | Set temporary | `export VAR="value"` | | Set in script | `VAR="value" command` | | Add to PATH | `export PATH="$PATH:/new/path"` | --- ## 6. Network | Task | Command | |------|---------| | Download | `curl -O https://example.com/file` | | API request | `curl -X GET https://api.example.com` | | POST JSON | `curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL` | | Check port | `nc -zv localhost 3000` | | Network info | `ifconfig` or `ip addr` | --- ## 7. Script Template ```bash #!/bin/bash set -euo pipefail # Exit on error, undefined var, pipe fail # Colors (optional) RED='\033[0;31m' GREEN='\033[0;32m' NC='\033[0m' # Script directory SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Functions log_info() { echo -e "${GREEN}[INFO]${NC} $1"; } log_error() { echo -e "${RED}[ERROR]${NC} $1" >&2; } # Main main() { log_info "Starting..." # Your logic here log_info "Done!" } main "$@" ``` --- ## 8. Common Patterns ### Check if command exists ```bash if command -v node &> /dev/null; then echo "Node is installed" fi ``` ### Default variable value ```bash NAME=${1:-"default_value"} ``` ### Read file line by line ```bash while IFS= read -r line; do echo "$line" done < file.txt ``` ### Loop over files ```bash for file in *.js; do echo "Processing $file" done ``` --- ## 9. Differences from PowerShell | Task | PowerShell | Bash | |------|------------|------| | List files | `Get-ChildItem` | `ls -la` | | Find files | `Get-ChildItem -Recurse` | `find . -type f` | | Environment | `$env:VAR` | `$VAR` | | String concat | `"$a$b"` | `"$a$b"` (same) | | Null check | `if ($x)` | `if [ -n "$x" ]` | | Pipeline | Object-based | Text-based | --- ## 10. Error Handling ### Set options ```bash set -e # Exit on error set -u # Exit on undefined variable set -o pipefail # Exit on pipe failure set -x # Debug: print commands ``` ### Trap for cleanup ```bash cleanup() { echo "Cleaning up..." rm -f /tmp/tempfile } trap cleanup EXIT ``` --- > **Remember:** Bash is text-based. Use `&&` for success chains, `set -e` for safety, and quote your variables!
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.