Linux介绍-bash (5) |
|
| 2004-05-25 |
| |
别名
bash 的另一个使你的工作变得轻松的方法是命令别名。命令别名通常是其他命令的缩写,用来减少键盘输入。例如,你经常要键入如下的命令,你也许会倾向于为它建立一个别名来减少工作量:
cd /usr/X11/lib/X11/fvwm/sample-configs
假如为这个长命令建立一个名为goconfig的别名,在bash提示符下键入如下命令:
alias goconfig='cd /usr/X11/lib/X11/fvwm/sample-configs'
现在,除非你退出bash,键入goconfig将和原来的长命令有同样的作用。如果想取消别名,可以使用下面的命令:
unalias goconfig
这是一些很多用户认为有用的别名,你可以把它们写入你的.profile文件中提高工作效:
alias ll='ls -l'
alias log='logout'
alias ls='ls -F'
如果你是一名DOS用户并且习惯了DOS命令,你能下面的别名定义使你的 Linux 表现得象DOS 一样:
alias dir='ls'
alias copy='cp'
alias rename='mv'
alias md='mkdir'
alias rd='rmdir'
--------------------------------------------------------------------------------
注意: 在定义别名时,等号的两头不能有空格,否则 shell 不能决定你需要做 什么。仅在你的命令中包含有空格或特殊字符时才需要引号。
--------------------------------------------------------------------------------
如果你键入不带任何参数的alias命令,将显示所有已定义的别名,例如:
alias dir='ls'
alias ll='ls -l'
alias ls='ls -F'
alias md='mkdir'
alias net='term < /dev/modem > /dev/modem 2> /dev/null&'
alias rd='rmdir'
输入重定向
输入重定向用于改变一个命令的输入源。一些命令需要在命令行里输入足够的信息才能工作。比如 rm,你必须在命令行里告诉 rm 它你要删除的文件。另一些命令则需要更详细的输入,这些命令的输入可能是一个文件。比如命令 wc 统计输入给它的文件里的文件里的字符数,单词数和行数。如果你仅在命令行上键入 wc ,wc 将等待你告诉它要统计什么,这时 bash 就好象死了一样,你键入的每样东西都出现在屏幕上,但什么事也不会发生。这是因为 wc 命令正在为自己收集输入。如果你按下Ctrl-D,wc 命令的结果将被写在屏幕上。如果你输入一个文件名做参数,象下面的例子一样,wc 将返回文件所包含的字符数,单词数,和行数:
wc test
11 2 1
另一种把test文件内容传给 wc 命令的方法是重定向 wc 的输入。< 符号在bash里用于把当前命令的输入重定向为指定的文件。所以可以用下面的命令来把 wc 命令的输入重定向为 test 文件:
wc < test
11 2 1
输入重定向并不经常使用因为大多数命令都以参数的形式在命令行上指定输入文件的文件名。尽管如此,当你使用一个不接受文件名为输入参数的命令,而需要的输入又是在一个已存在的文件里时,你就能用输入重定向解决问题。
输出重定向
输出重定向比输入重定向更常用。输出重定向使你能把一个命令的输出重定向到一个文件里,而不是显示在屏幕上。
很多情况下都可以使用这种功能。例如,如果某个命令的输出很多,在屏幕上不能完全显示,你能把它重定向到一个文件中,稍后再用文本编辑器来打开这个文件;当你想保存一个命令的输出时也可以使用这种方法。还有,输出重定向可以用于把一个命令的输出当作另一个命令的输入时。(还有一种更简单的方法可以把一个命令的输出当作另一个命令的输入,就是使用管道,管道的使用将在本文的“管道”一节介绍)
输出重定向的使用与输入重定向很相似,但是输出重定向的符号是 > 。
--------------------------------------------------------------------------------
注意:记忆输入/输出重定向符号的最好方法是把<看作是一个漏斗,漏斗的小口 指向需要输入的命令(因为需要接受输入的命令会在 的左手边),而把 当作一个大口指向有输出的命令的漏斗。
--------------------------------------------------------------------------------
重定向举例,当你要把 ls 命令的输出保存为一个名为 directory.out 的文件时,你可以使用下面的命令:
ls > directory.out
|
|
| |
|
发表评论
推荐文章
关闭窗口
|
|
|
|