Linux系统的命令别名功能
命令别名功能
在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁地输入某个很长命令或用法是不可取的。这时可以使用命令别名功能将这个过程简单化。
1.系统定义的别名
通常情况下,系统中已经定义了一些命令别名,要查看已经定义的命令别名,可以使用alias命令:
#alias命令将输出所有已经定义的命令别名
# alias
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
从上面的结果中可以看出,当我们使用命令cp(复制文件命令)时,系统会用cp -i代替命令中的cp。除此之外,还定义了ls命令及其使用的颜色、移动文件命令mv、删除命令rm等。
用于设置系统别名的相关文件保存在/etc/profile.d/目录中(系统别名目录),使用以下方式可以查看: www.2cto.com
#进入目录/etc/profile.d/
# cd /etc/profile.d/
#查看目录中的文件
# ls
colorls.csh glib2.sh krb5-workstation.csh lang.sh vim.csh
colorls.sh gnome-ssh-askpass.csh krb5-workstation.sh less.csh vim.sh
glib2.csh gnome-ssh-askpass.sh lang.csh less.sh which-2.sh
#查看文件less.csh的内容
# cat less.csh
#以下为less.csh的内容,其中定义了ls命令使用的颜色等别名
# less initialization script (csh)
if ( -x /usr/bin/lesspipe.sh ) then
setenv LESSOPEN "|/usr/bin/lesspipe.sh %s"
endif
# cat colorls.sh
# color-ls initialization
alias ll='ls -l' 2>/dev/null
alias l.='ls -d .*' 2>/dev/null
......
2.用户自定义别名
许多时候管理员都会按自己的使用习惯定义命令别名。例如让查看当前文件内容的命令兼容DOS中的查看文本命令type:
#为cat命令定义一个别名type
# alias type='cat'
#使用type命令查看文件alias.txt的内容
# type alias.txt
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'
上面的命令中,先为cat命令定义了一个名为type的别名。当用户使用命令type时,系统会自动使用cat命令将其替代。 www.2cto.com
3.取消定义的别名
要取消已经定义好的命令别名,可以对别名使用unalias命令:
# unalias type
# type alias.txt
-bash:type: command not found
4.保存别名设置
当系统重新启动或用户重新登录时,使用alias命令定义的别名将会丢失。可以在系统别名目录中添加别名配置文件,但这种方式定义的别名对所有的用户都生效,通常不建议使用这种方法。
如果要定义全局别名,通常建议将命令添加到全局配置文件/etc/profile中。例如定义全局别名:
# echo "alias type='cat'">>/etc/profile
这条命令将alias pg='cat'添加到文件/etc/profile中。
注意:在对/etc/profile这样的系统配置文件进行操作时,一定要谨慎,否则有可能会损坏系统。因此上面的命令中使用的是">>"而不是">",">>"表示将内容追加到文件结尾。
如果某个用户想要定义自己的命令别名,可以将命令添加到用户家目录中的文件.bash_profile中。例如要定义用户自己的别名:
# echo "alias vi='vim'">>~/.bash_profile
最后,退出并重新登陆以使定义生效。
Linux系统的命令别名功能的更多相关文章
- Linux系统的命令别名功能(转)
在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁地输入某个很长命令或用法是不可取的.这时可以使用命令别名功能将这个过程简单化. 1.系统定义的别名通 ...
- Linux系统-解压缩命令集合
Linux系统-解压缩命令集合 linux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. ...
- Linux系统——awk命令
awk命令不仅仅是Linux系统的命令,也是一种编程语言,用来处理数据和生成报告(Exel),处理的数据可以是一个或多个文件(标准输入和管道获取标准输入).可在命令行上编辑操作,也可以写成awk程序运 ...
- 查看linux系统版本命令 (转)
查看linux系统版本命令 分类: Linux 知识小结2011-10-10 15:26 240162人阅读 评论(9) 收藏 举报 linuxredhatdebianx86susesun 一.查看内 ...
- Linux系统ifconfig命令找不到,centos ifconfig Command not found
centos ifconfig Command not found,Linux系统ifconfig命令找不到 >>>>>>>>>>>& ...
- Linux系统基础命令
这是看itercast的学习笔记 Linux系统基础命令 日期时间 命令date用以查看.设置当前系统时间:格式化显示时间: +%Y--%m--%d 命令hwclock(clock)用以显示硬件时钟时 ...
- LINUX系统VMSTAT命令详解
linux系统vmstat命令详解 [转自 https://www.cnblogs.com/wensiyang0916/p/6514820.html] vmstat 1 1表示每秒采集一次vms ...
- 【转载】Linux系统下命令行连接蓝牙设备 查看查找 蓝牙
Linux系统下命令行连接蓝牙设备 2018年11月26日 10:47:27 Zz笑对一切 阅读数:741 1.打开系统蓝牙 sudo service bluetooth start 1 进入bl ...
- 给大家介绍一下linux系统高级命令
输出重定向(mip.0834jl.com) ;覆盖文件内容 回声' 123 ' 测试;覆盖原始内容 回声' 123 ' 测试;原始存在(共存) echo 'ken2 '(www.jl0834.com) ...
随机推荐
- php随机获取金山词霸每日一句
header('Content-Type:text/html; charset=utf-8'); $nowyear=date("Y"); $nowmouth = date('m') ...
- NSDate简单的使用
NSDateFormatter *dateFormtter=[[NSDateFormatter alloc] init]; [dateFormtter setDateFormat:@"yyy ...
- form 表单练习
创建战网通行证账号,开启您的冒险之旅.<form> <table border="0"> <tr> & ...
- Win8/Win8.1都有哪些版本?我该选择哪个?(二)
Windows版本分类比较复杂,下文主要为大家理清Win8/Win8.1的版本种类.如果想了解更多,可以结合<Win7/Win8/Win8.1众多版本,我该选择哪个?>一文来了解. 细数W ...
- 【LeetCode练习题】Valid Palindrome
Valid Palindrome Given a string, determine if it is a palindrome, considering only alphanumeric char ...
- 04747_Java语言程序设计(一)_第10章_网络与数据库编程基础
例10.1说明InetAddress类的用法的应用程序. public class Example10_1 { public static void main(String args[]) { try ...
- 《Java程序员面试笔试宝典》之 instanceof有什么作用
instanceof是Java语言中的一个二元运算符,它的作用是判断一个引用类型的变量所指向的对象是否是一个类(或接口.抽象类.父类)的实例,即它左边的对象是否是它右边的类的实例,返回boolean类 ...
- iOS开发-Runtime详解(简书)
简介 Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的.比如: [receiver message]; // ...
- SPRING源码分析:IOC容器
在Spring中,最基本的IOC容器接口是BeanFactory - 这个接口为具体的IOC容器的实现作了最基本的功能规定 - 不管怎么着,作为IOC容器,这些接口你必须要满足应用程序的最基本要求: ...
- hdu 2846
字典树的变形,常规字典树用来求前缀的,所以把每个单词拆成len个词建树,为了避免abab这样的查ab时会出现两次,每次加一个标记,如果该节点上次的建树的单词与本次相同就不更新,否则更新 #includ ...