縮寫習慣
無聊和乏味的工作是罪惡
-- Eric S. Raymond
構建於圖形界面之上的操作系統,使用鼠標作爲主輸入設備, 是否使用縮寫並不重要。比如 Windows 系統中的目錄,幾乎都是全稱…… 點擊兩次鼠標進入文件夾 pf
, 並不意味着點擊13次才能進入文件夾 Program Files
而構建於命令行之上的操作系統,如 Linux,只要3個字母以上的單詞,幾乎都要縮寫。 例如: cd 命令是 Change Directory
的縮寫。 作爲常用命令,如果使用它的全稱 Change Directory
,絕對是無聊和乏味的工作。
最常見的縮寫,取每個單詞的首字母,如
cd
Change Directory
dd
Disk Dump
df
Disk Free
du
Disk Usage
pwd
Print Working Directory
ps
Processes Status
PS
Prompt Strings
su
Substitute User
rc
Run Command
Tcl
Tool Command Language
cups
Common Unix Printing System
apt
Advanced Packaging Tool
bg
BackGround
ping
Packet InterNet Grouper
如果首字母后爲“h”,通常保留
chsh
CHange SHell
chmod
CHange MODe
chown
CHange OWNer
chgrp
CHange GRouP
bash
Bourne Again SHell
zsh
Z SHell
ksh
Korn SHell
ssh
Secure SHell
遞歸縮寫[3]也屬於這一類,如:
GNU
GNU's Not Unix
PHP
PHP: Hypertext Preprocessor
RPM
RPM Package Manager
WINE
WINE Is Not an Emulator
PNG
PNG's Not GIF
nano
Nano's ANOther editor
有些縮寫可能有多種定義,如:
rpm
RPM Package Manager RedHat Package Managerbc
Basic Calculator Better Calculator
這方面 Emacs 可謂獨領風騷:
Emacs
Editor MACroS
Emacs Makes A Computer Slow
Escape Meta Alt Control Shift
Emacs Makers Are Crazy Sickos
Emacs Makes All Computing Simple
Emacs Makefiles Annihilate C-Shells
Emacs Manuals Always Cause Senility
Emacs May Allow Customized Screwups
Emacs Manuals Are Cryptic and Surreal
Eventually Munches All Computer Storage
Eight Megabytes And Constantly Swapping
Elsewhere Maybe All Commands are Simple
Excellent Manuals Are Clearly Suppressed
Emacs May Alienate Clients and Supporters
Except by Middle Aged Computer Scientists
Extended Macros Are Considered Superfluous
Every Mode Accelerates Creation of Software
Each Manual's Audience is Completely Stupefied
Exceptionally Mediocre Algorithm for Computer Scientists
Easily Maintained with the Assistance of Chemical Solutions
Eradication of Memory Accomplished with Complete Simplicity
如果只有一個單詞,通常取每個音節的首字母:
cp
CoPy
ln
LiNk
ls
LiSt
mv
MoVe
rm
ReMove
對於目錄,通常使用前幾個字母作爲縮寫:
bin
BINaries
dev
DEVices
etc
ETCetera
lib
LIBrary
var
VARiable
proc
PROCesses
sbin
Superuser BINaries
tmp
TeMPorary
usr
Unix Shared Resources
這種縮寫的其它情況
diff
DIFFerences
cal
CALendar
cat
CATenate
ed
EDitor
exec
EXECute
tab
TABle
regexp
REGular EXPression
如果某種縮寫比較深入人心,例如“mesg”代表“message”,在新的複合縮寫中,將沿用這種縮寫方式
dmesg
Diagnostic MESsaGe
sed
Stream EDitor
stty
Set TTY
fstab
FileSystem TABle
passwd
PASSWorD
有些縮寫中,第一個字母“g”,代表“GNU”
awk
Aho Weiberger and Kernighan
gawk
GNU AWK
gpg
GNU Privacy Guard
grep
GNU Regular Expression Print
egrep
Extended GREP
[3] 定義中包含自身縮寫,如 GNU:
GNU
's Not Unix
使用這個定義來解釋定義中的縮寫:
(GNU's Not Unix)'s Not Unix
這意味着它是可以無限遞歸的:
(((((GNU's Not Unix)'s Not Unix)'s Not Unix)'s Not Unix)'s Not Unix)'s Not Unix ……
命令選項,從a到z
Linux 命令的選項繁複龐雜,讓人眼花繚亂。不過這些選項往往具有相對固定的涵義,熟悉了它們,記憶便不再困難
- -a
-
all : 全部,所有 (ls , lsattr , uname)
archive : 存檔 (cp , rsync)
append : 附加 (tar -A , 7z)
- -b
-
blocksize : 塊大小,帶參數 (du , df)
batch : 批處理模式 (交互模式的程序通常擁有此選項,如 top -b)
- -c
-
commands : 執行命令,帶參數 (bash , ksh , python)
create : 創建 (tar)
- -d
-
debug : 調試
delete : 刪除
directory : 目錄 (ls)
- -e
-
execute : 執行,帶參數 (xterm , perl)
edit : 編輯
exclude : 排除
- -f
-
force : 強制,不經確認(cp , rm ,mv)
file : 文件,帶參數 (tar)
configuration file : 指定配置文件(有些守護進程擁有此選項,如 ssh , lighttpd)
- -g
- -h
-
--help : 幫助
human readable : 人性化顯示(ls , du , df)
headers : 頭部
- -i
-
interactive : 交互模式,提示(rm , mv)
include : 包含
- -k
-
keep : 保留
kill
- -l
-
long listing format : 長格式(ls)
list : 列表
load : 讀取 (gcc , emacs)
- -m
-
message : 消息 (cvs)
manual : 手冊 (whereis)
create home : 創建 home 目錄 (usermod , useradd)
- -n
-
number : 行號、編號 (cat , head , tail , pstree , lspci)
no : (useradd , make)
- -o
-
output : 輸出 (cc , sort)
options : 選項 (mount)
- -p
-
port : 端口,帶參數 (很多網絡工具擁有此選項,如 ssh , lftp )
protocol : 協議,帶參數
passwd : 密碼,帶參數
- -q
-
quiet : 靜默
- -r
-
reverse : 反轉
recursive : 遞歸 (cp , rm , chmod -R)
- -s
-
silent : 安靜
size : 大小,帶參數
subject
- -t
-
tag
type : 類型 (mount)
- -u
-
user : 用戶名、UID,帶參數
- -v
-
verbose : 冗長
version : 版本
- -w
-
width : 寬度
warning : 警告
- -x
-
exclude : 排除 (tar , zip)
- -y
-
yes
- -z
-
zip : 啓用壓縮 (bzip , tar , zcat , zip , cvs)