linux 设置别名 linux常用的20个命令
这篇文章给大家聊聊关于linux 设置别名,以及linux常用的20个命令对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
linux系统怎样设置命令别名
这篇文章主要介绍了linux系统设置命令别名的方法,需要的朋友可以参考下
最近搞一个Django站点,需要经常进入/var/www/site/mycitsm/这个目录,每次都得重复的输入这一长串路径进入该目录,显得麻烦而费时,有没有一种好的方式可以将“cd/var/www/site/mycitsm”这样一个命令取一个别名,每次只需输入该别名就可以进入该目录呢?
很庆幸,Linux系统提供了一个有用的工具叫alias,可以让我们将一些需要频繁使用的但又过于冗长的命令设置一个别名,这样一来,以后只需输入一个简短的别名就可以达到同样的作用。
用法:alias [-p] [name[=value]... ]注意‘=’和字符串之间不能包含空格
显示当前设置的别名:
shellalias-p
alias l.='ls-d.*--color=tty'
alias ll='ls-l--color=tty'
alias ls='ls--color=tty'
alias vi='vim'
alias which='alias|/usr/bin/which--tty-only--read-alias--show-dot--show-tilde'
或者直接输入:
shellalias-p
alias l.='ls-d.*--color=tty'
alias ll='ls-l--color=tty'
alias ls='ls--color=tty'
alias vi='vim'
alias which='alias|/usr/bin/which--tty-only--read-alias--show-dot--show-tilde'
若只想显示某个别名代表的含义可输入alias name,比如:
shellalias ll
alias ll='ls-l--color=tty'
若想为某个命令设置别名可输入 alias新命令='原命令选项/参数',比如:
shellalias site='cd/var/www/site/mycitsm/'
若想取消某个别名可输入unalias name,比如
shellunalias site
但是,上述设置方法存在一个问题,也即设置的命令别名只针对当前回话有效,一旦连接断开并重连之前设置的别名别不在有效。
可以通过将设置别名的命令写进启动文件使别名持久生效。大多数Linux发行版使用下述三个启动文件中的一个:
$HOME/.bash_profile
$HOME/.bash_login
$HOME/.profile
可将设置别名的命令写进启动文件内,这样,每次连入系统的时候别名都会生效。若想在命令写入启动文件后立即生效记得执行source命令,比如:
source$HOME/.bash_profile
通过上述方式设置命令别名解决了命令别名只针对回话生效的问题,但是,写进每个用户特定的主目录下的启动文件中的命令别名只针对该用户有效。对其他用户没有什么效果,这通常也是正常情况下期望看到的情况。但如果确实像使设置的别名对任意用户有效则可将设置别名的命令写进全局启动文件中,如/etc/profile。
linux命令
我给你举一个简单的文件显示的命令:dos里面有dir命令,而在linux中可以用ls命令加相应的参数显示文件的具体属性,当然也可以用dir命令,但没有ls强大,例如:
#ls
这样显示当前目录下的所有文件,显示的格式只有文件名字
#ls
-l
这样以列的形式显示出来文件,并且带着文件读写的权限,所属的用户和组,
#ls
-lat,加入这些参数,可以显示文件建立的时间,还有文件建立的先后。
这个命令很简单,可以显示出shell命令对文件操作的强大,如果想具体的知道ls和其他的命令的功能也用途,你可以使用#man
命令来操作,
linux下的aliases有什么作用
1、linux系统下aliases是给命令指定别名的命令作用。
2、在linux系统中如果命令太长又不符合用户的习惯,那么可以为它指定一个别名。虽然可以为命令建立“链接”解决长文件名的问题,但对于带命令行参数的命令,链接就无能为力了。而指定别名则可以解决此类所有问题。如下举一些例子:
alias l='ls-l';用 l代替 ls-l命令(Xenix下就有类似的 l命令)
alias cd..='cd..';用 cd..代替 cd..命令(对在 DOS下使用惯了 cd..的人帮助很大)
alias md='mkdir';用 md代替 mkdir命令(对在 DOS下…)
alias c:='mount/dev/hda1/mnt/c& cd/mnt/c';用 c:命令代替命令序列:安装 DOS分区,再进入。
3、通常可以将以上命令放到自己的home目录下的.bashrc文件中,在使用source.bashrc命令即可。
4、全局设置在/etc/profile和/etc/csh.cshrc
5、使工作变得轻松的方法的使用命令别名。命令别名通常是其他命令的缩写,用来减少键盘输入。
6、命令格式为:
alias[alias-name=’original-command’]
其中,alias-name是用户给命令取的别名,original-command是原来的命令和参数。需要注意的是,由于Bash是以空格或者回车来识别原来的命令的,
所以如果不使用引号就可能导致Bash只截取第一个字,从而出现错误。如果alias命令后面不使用任何参数,则显示当前正在使用的被别名化的命令及其别名。为命令取的别名在该次登录期间始终有效。如果用户需要别名在每次登录时都有效,那么就将alias命令写到初始化脚本文件中。
7、如果经常要键入如下的命令,最好为它建立一个别名来减少工作量。
$ cd/usr/X11/lib/X11
假如为这个长命令建立一个名为goconfig的别名,在Bash提示符下键入如下命令:
$ alias goconfig=’cd/usr/X11/lib/X11’
现在,除非您退出Bash,键入goconfig将和原来的长命令有同样的作用。如果想取消别名,可以使用下面的命令:
$ unalias goconfig
这是一些很多人认为有用的别名,可以把它们写入初始化脚本文件中来提高工作效率:
alias ll=’ls–l’
alias log=’logout’
alias ls=’ls–F’
8、如果您是一名DOS用户并且习惯了DOS命令,可以用下面的别名定义使Linux表现得象DOS一样:
alias dir=’ls’
alias copy=’cp’
alias rename=’mv’
alias md=’mkdir’
alias rd=’rmdir’
注意:在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需要引号。如果键入不带任何参数的
alias命令,将显示所有已定义的别名。
9、这里有一个问题。已经定义了一个别名 rm来执行 rm-i。每次试图删除一个文件时,该命令都会提示进行确认。但如果要删除多个文件并确信无需确认即可删除时,该怎么办?
解决方案很简单:要取消该别名,然后只使用命令,我需要输入两个单引号:
$''rm*
注意,rm命令前面有两个单引号('),而不是两个双引号。这将取消别名 rm。另一种方法是使用反斜线(/):
$/rm*
要删除一个以前定义的别名,只需使用 unalias命令:
$ unalias rm