10 个实用的 Bash alias
alias 即“别名”,为便于理解,你可以将其看成是一个命令的快捷方式。使用 alias 的最大好处是,可以简化输入,从而为你节省时间,并提高效率。定义的 alias 可以保存到 ~/.bashrc 文件中,以后在命令行中就可以直接使用了。
TechRepublic 介绍了 10 个 Bash alias,个人觉得都很实用:
- ssh 别名 -
alias server_name='ssh -v -l USERNAME IP ADDRESS',更改 server_name、USERNAME 及 IP 地址以适应你的需要。对于经常要使用 ssh 登录远程 shell 的同学来说,这是一个值得收藏的别名。 - ls 别名 -
alias ll='ls -l',另一个alias la='ls -a'。意思很明显,在此就不多作解释了。 - rm 别名 -
alias rm='rm -i',这个别名让你更加安全地执行删除操作。 - df 别名 -
alias df='df -h',让你以 MB 或 G 为单位查看磁盘的空间。 - Firefox 别名 -
alias ff1='/home/jlwallen/firefox/firefox'及alias ff2='/home/jlwallen/firefoxb3/firefox',适合使用两个 Firefox 版本的朋友,如一个稳定版,另一个为测试版。 - 书签别名 -
alias fftr='/home/jlwallen/firefox/firefox http://linuxtoy.org',用于打开一个指定的网址。 - 文件别名 -
alias emenu='aterm nano -e ~/.e16/menus/user_apps',如常常需要编辑的配置文件。 - apt-get update 别名 -
alias update='sudo apt-get update',使用其他 Linux 发行版的同学可以换一下其中的 sudo apt-get update。 - rpm 批量安装别名 -
alias brpm='rpm -ivh ~/RPM/*rpm',便于同时安装多个 rpm 包。 - 长路径别名 -
alias astart='cd ~/GNUstep/Library/AfterStep/start',对于需要经常访问的路径特别长的目录也可为其定义别名。
更新
一些读者的补充:
- fcicq:
alias convmv-utf8=”convmv -f gbk -t utf-8 –notest”
alias nano=”nano -w”
alias emerge=”sudo emerge”
- lostsnow:
alias ..=”cd ..” - zhuqin:
不想用 alias 时,可在该 alias 的命令前加 \。
[via TechRepublic]
版权声明: 允许非商业性转载,但转载时必须标明作者及原文链接.
本文网址: http://linuxtoy.org/archives/10-bash-alias.html
不錯!
alias convmv-utf8="convmv -f gbk -t utf-8 --notest"
alias nano="nano -w"
alias emerge="sudo emerge"
http://blogs.techrepublic.com.com/10things/?p=352&tag=rbxccnbtr1
这是原帖,我昨天看的
站长,能不能把RSS改回原来的模式啊?
现在用RSS看全文还要点“Continue reading →”,很不方便~
从5往后用处都不是很大。涉及到GUI的直接在桌面上添加快捷方式直接用鼠标点击不是更方便?
另外,能不能把RSS的全文输出打开?
补充一个万一不想用到alias时候的方法:
在该被alias的命令前加\
比如上面的rm=rm -i,每次执行都要按回车确认,如果只是一次还好,多了你就知道难受了。这时就可以用\rm来避免不必要的麻烦。
支持 RSS 全文输出。
rm的那个alias有时候并不见得就方便,同理还有mv,好像在redhat里是默认别名到-i的。
我用的
alias ..="cd .."
超爽
对路长路径,我通常的做法是建立符号链接 short_name 到 $HOME,需要去的时候就 cd ~/short_name 或者 cd -P ~/short_name,-P 参数的意义是进入符号链接指向的物理目录,而不是跟随符号链接。
现在的RSS输出确实不方便,支持全文输出的提议!
支持RSS全文输出!!
(1) 请勿跑题
(2) 不要忘记以前的痛苦. http://linuxtoy.org/archives/accuse-scraper.html
很好,谢谢!
这几个还是很实用的
很感谢楼上几位同学的补充。另,rss 问题,目前我只能说抱歉。
ssh请使用~/.ssh/config文件做配置。不要使用alias.
这有个反面例子,后面的评论众口一辞,建议使用~/.ssh/config,且有很多例子,可以参考。
http://www.howtoforge.com/tips-to-make-ssh-scp-usage-more-convenient
第1個和第10個,我通常是加在Konsole的bookmarks裏。
re netcasper.
ssh我一般都是 "ssh abc"
其中abc在.ssh/config中定義:
Host abc
Hostname xx.xx.xx.xx
Port xxx
再配合密鑰省去輸密碼的過程。
这算是什么"实用"?
LZ也不是新来的了, 别的不说. rm的乱改名就是死罪, 建议用".."的也是死罪
也不知道LZ和那个建议使用".."的, 是不是把*nix当windows玩了.
这样做的唯一用处就是让你的大批量脚本不知所措, 行为怪异
建议还是不要太多别名自造鸿沟,免得离开自己机器就犯傻,
别名还是留给不那么重要的吧
alias acs='apt-cache search -n'
alias acw='apt-cache show'
alias l='ls'
alias la='ls -lha'
alias ll='ls -lh'
alias ls='ls --color=auto'
有些和俺的一样,alias是懒人的最爱啊。
alias ll='ls -l'
alias la='ls -a'
alias lla='ls -la'
alias up='sudo apt-get update'
alias is='sudo apt-get install'
alias grade='sudo apt-get dist-upgrade'
@toy
错啦,是\不是/
我也来贡献一点自己的alias(用于arch):
alias cp='cp -v'
alias grep='grep --color'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -l'
alias ls='ls --color'
alias mv='mv -v'
alias p='pacman'
alias pacman='pacman-color'
alias pgrep='pgrep -l'
alias po='sudo pacman-optimize && sync'
alias rm='rm -v'
alias semacst='sudo emacs --no-splash -nw'
alias sp='sudo pacman-color'
alias y='yaourt'
alias yR='y -Rscn'
alias yc='y -C'
alias yqdt='y -Qdt'
alias yqet='y -Qet'
alias yqi='y -Qi'
alias yql='y -Ql'
alias yqs='y -Qs'
alias yr='y -Rsn'
alias ys='y -S'
alias ysc='y -Sc'
alias yscc='y -Scc'
alias ysi='y -Si'
alias yss='y -Ss'
alias ysyu='y -Syu --aur'
df不如用df -Th
@zhuqin:汗,笔误,已修正。
也来贡献几个
alias x='startx'
alias sd='sudo poweroff'
alias rb='sudo reboot'
alias Scc='sudo pacman -Scc'
alias Syu='sudo pacman -Syu'
alias ls='ls -a --color=auto'
alias ll='ls -l'
alias ..='cd ..'
alias ubuntu='lftp username:password@ftp.ubuntu.org.cn'
alias convmv-utf8=”convmv -f gbk -t utf-8 –notest”
这个,有点危险吧,可以先把--notest拿到外面~
加1个
alias ...='cd ../..'
楼上的增强版
str='..'
level='./../'
for i in `seq 1 10`;
do
eval "alias '$str=cd $level'"
level=$level'../'
str=$str'.'
done
我也帖一个,呵呵:
alias ..='cd ..'
alias ...='cd ../..'
alias cd..='cd ..'
alias cls='clear'
alias egrep='egrep --color -n'
alias fm='free -mt'
alias gi='gvim'
alias git-diff='git-diff --color'
alias grep='grep --colour=auto'
alias info='pinfo'
alias ki='kwrite'
alias l='ls -alF'
alias l.='ls -a .* -d'
alias la='ls -la'
alias ll='ls -l'
alias ls='ls --color=auto'
alias mat='matlab -nodesktop -nosplash'
alias o='less'
alias pa='ps aux'
alias pe='ps -e'
alias pt='pstree'
好吧,我出必杀了。虽然不是 alias。
用于在当前目录以及所有子目录中搜索包含特定 pattern 的文件,可以用 pattern 来过滤将要搜索的文件名。
用法:
阿哦,排版乱掉了,请自己在 vim 里 gg=G 排版一下吧。
@Rainux: 感谢你的补充,我重新排了一下版。