Я маю справу з багатьма різними машинами, тому одним з моїх улюблених є псевдоніми для кожної машини, які мені часто потрібно SSH:
alias claudius="ssh dinomite@claudius"
Також корисно встановити хороші .ssh/config
та клавіші ssh, щоб зробити перескакування серед машин ще простішим.
Ще один з моїх улюблених псевдонімів - це переміщення каталогів:
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias .....="cd ../../../.."
І деякі для часто використовуваних варіантів ls
(та друкарських помилок):
alias ll="ls -l"
alias lo="ls -o"
alias lh="ls -lh"
alias la="ls -la"
alias sl="ls"
alias l="ls"
alias s="ls"
Історія може бути дуже корисною, але за замовчуванням у більшості дистрибутивів ваша історія видувається кожним виходом оболонки, і для початку це не так вже й багато. Мені подобається мати 10 000 рядків історії:
export HISTFILESIZE=20000
export HISTSIZE=10000
shopt -s histappend
# Combine multiline commands into one in history
shopt -s cmdhist
# Ignore duplicates, ls without options and builtin commands
HISTCONTROL=ignoredups
export HISTIGNORE="&:ls:[bf]g:exit"
Таким чином, якщо я знаю, що я щось робив раніше, але не можу запам’ятати конкретику, швидкий history | grep foo
допоможе пробіг моєї пам’яті.
Я часто виявляв, що пропускає вихід awk
, щоб отримати певний стовпець виводу, як df -h | awk '{print $2}'
щоб знайти розмір кожного з своїх дисків. Щоб полегшити це, я створив функцію fawk
у своєму .bashrc:
function fawk {
first="awk '{print "
last="}'"
cmd="${first}\$${1}${last}"
eval $cmd
}
Зараз я можу запустити, df -h|fawk 2
що економить гарний набір тексту.
Якщо вам потрібно вказати роздільник ( наприклад , awk -F:
для /etc/passwd
), ця функція, очевидно, не може впоратися з цим. Трохи перероблений варіант у цій групі може обробляти довільні awk
аргументи перед номером поля (але все ж вимагає введення з stdin).