LINUX命令问题~如何增加命令
root用户可以使用ll来查看目录中的信息,而新建用户QQ只能通过ls-l查看,请问如何才能使QQ也可以输入ll来查看信息我的root用户可以直接输入mail后回车,显示...
root用户可以使用ll来查看目录中的信息,而新建用户QQ只能通过ls -l查看,请问如何才能使QQ也可以输入ll来查看信息
我的root用户可以直接输入mail后回车,显示mail
但是QQ用户输入mail后,却显示错误,是怎么回事? 展开
我的root用户可以直接输入mail后回车,显示mail
但是QQ用户输入mail后,却显示错误,是怎么回事? 展开
3个回答
展开全部
可以用linux别名方式来新添加命令,这样可以根据个人使用习惯来运行命令。
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系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁地输入某个很长命令或用法是不可取的。这时可以使用命令别名功能将这个过程简单化。
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
展开全部
其实ll并不是linux的标准命令,是通过取别名来实现的,你可以在你的/home/qq目录,打开.bash_profile文件,在里面加入一条:alias ll='ls -l'即可。
第二个显示错误是什么错:是不是没有邮件“NO mail for qq”,这表示没有邮件,而不是不能运行。你运行一下:man mail如果可以运行,说明是正常的。
第二个显示错误是什么错:是不是没有邮件“NO mail for qq”,这表示没有邮件,而不是不能运行。你运行一下:man mail如果可以运行,说明是正常的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为mail命令的所有者是root。只有root才有可执行权限,所以非root的用户要出错。
解决的方法有很多种,主要是增加或变更mail命令的所有者。如先找到mail命令的地方,如用whereis命令,再增加该命令的所有者或组,可用usermod -G 来增加所属组。
解决的方法有很多种,主要是增加或变更mail命令的所有者。如先找到mail命令的地方,如用whereis命令,再增加该命令的所有者或组,可用usermod -G 来增加所属组。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询