Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->Linux程序设计 ->正文

Linux程式设计-11.ShellScript(bash)--(13)Bash内建指令集

来源:Linuxdby.com 作者:Webmaster 时间:2007-06-04 点击: [收藏] [投稿]


cd[dir]
更换目录到dir。如果没有指定,内定为HOME所指定的目录。



--------------------------------------------------------------------------------

command[-pVv]command[arg...]
用command指定可取消正常的shellfunction寻找。只有内建命令及在PATH中找得到的才会被执行。"-p"选项,搜寻命令的方式是用PATH来找。"-V"或"-v"选项,会显示出该命令的一些简约描述。



--------------------------------------------------------------------------------

declare[-frxi][name[=value]]
typeset[-frxi][name[=value]]
宣告参数并给它们设定属性。如果没有给定名称,将会显示各参数值。

-f:仅使用函数名称。
-r:将name设为readonly。
-x:将name输出给後续环境使用。
-i:该参数被设为integer来使用,可用於算术表述。

用" "时,关闭该属性。



--------------------------------------------------------------------------------

dirs[-l][ /-n]
显示目前记忆的目录。目录可透过pushd/popd来操作。

n:显示开始的记录n个。
-n:显示结尾的记录n个。
-l:显示较多的资讯。



--------------------------------------------------------------------------------

echo[-neE][arg...]
输出显示args,由空白分隔。返回值永为零。

-n:不跳行。
-e:启动"\"符号的解译。
-E:将ESC解译功能取消。

"\a":alert(bell),发出声响。
"\b":backspace,倒退。
"\c":suppresstrailingnewline,不跳行。
"\f":formfeed,跳行跳格。
"\n":newline,新行。
"\r":carriagereturn,回到行起点。
"\t":horizontaltab,水平跳位。
"\v":verticaltab,垂直跳位。
"\\":输出"\"。
"\nnn":输出ASCIICode号码nnn(八进位)。



--------------------------------------------------------------------------------

enable[-n][-all][name...]
启动或关闭内建函数命令。使用"-n"将所有指定命令皆关闭,否则都是启动的。如果只有"-n"参数,它将会显示所有关闭的函数。如果只有"-all",它将会显示所有内建命令。



--------------------------------------------------------------------------------

eval[arg...]
读取args,并将args合为一个命令,然後执行。其返回值成为eval的返回值。如果没有参数,eval返回True。



--------------------------------------------------------------------------------

exec[[-]command[arguments]]
当命令执行时,该命令取代shell,没有新的process产生。如果第一个参数是"-",shell会将"-"放入第零个参数,传给command。



--------------------------------------------------------------------------------

export[-nf][name[=word]]...
export-p
将name输出给环境,给往後的命令使用。"-f"选项表示name是函数。"-p"显示出所有export的名称。"-n"移除name。



--------------------------------------------------------------------------------

set[--abefhkmnptuvxldCHP][-ooption][arg...]
-a:自动将变数标记为可让後面环境所使用。
-b:立即报告被终结的背景程式状态。
-e:当命令(simple-command,见後面)返回非零值时,立即跳出。
-f:取消pathnameexpansion。
-h:找出所记忆的函数命令位置。
-k:所有keyword参数都放到环境中。
-m:监督模式。
-n:读取命令,但不要执行。可用於语法检查。
-p:打开privileged模式。
-t:当读取一个命令并执行後,立即离开。
-u:当参数展开时,把unset参数当成是错误。
-v:列出shellinputlines。
-x:在展开每个simple-command後,bash显示展开值在PS4上。
-l:储存并还原namebinding在for语法中。
-d:关闭hasingcommand搜寻。
-C:跟`noclobber=`一样。请见内定参数一节。
-H:启动!stylehistorysubstitution。
-P:在使用像cd这种指令时,不要跟随symboliclinks。
--:"--"之後,没有参数跟在後面。
-:指定将所有後面的参数当成是位置参数。
-ooption-name:option-name可以是以下之一
allexport:与"-a"相同。
braceexpand:启动BraceExpansion。这是内定设定。
emacs:使用emacs-style命令列编辑界面。
errexit:与"-e"相同。
histexpand:与"-H"相同。
ignoreeof:效果跟`IGNOREEOF=10`一样。
interactive-commands:允许#做为解。
monitor:与"-m"相同。
noclobber:与"-C"相同。
noexec:与"-n"相同。
noglob:与"-f"相同。
nohash:与"-d"相同。
notify:与"-b"相同。
nounset:与"-u"相同。
physical:与"-P"相同。
posix:Bash行为修改为Posix1003.2标准。
privileged:与"-p"相同。
verbose:与"-v"相同。
vi:使用vi-style命令列编辑程式。
xtrace:与"-x"相同。



--------------------------------------------------------------------------------

unset[-fv][name...]
移除对映於name的参数。要注意PATH、IFS、PPID、PS1、PS2、UID、EUID不能unset。若RANDOM、SECONDS、LINENO、HISTCMD被unset,它们会丧失原有意义,既始它们後来被重设也一样。返回值为True,除非name是不能被unset的。



--------------------------------------------------------------------------------

fc[-eename][-nlr][first][last]
fc-s[pat=rep][cmd]
修正命令。



--------------------------------------------------------------------------------

getoptsoptstringname[args]
解析位置参数。



--------------------------------------------------------------------------------

hash[-r][name]
对每个name命令的完整路径记录下来。"-r"选项强迫忘记所有命令位置。如果没有给参数,则将会印出所有的资讯。返回值为True。



--------------------------------------------------------------------------------

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Linux程式设计-11.ShellScript(bash)--(11)参数与变数   下一篇:Linux程式设计-11.ShellScript(bash)--(12)函数function

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号