歌词:
平安夜 圣(🌇)善夜
(📸) 万暗中 光华射
照着圣母也照(📚)着(🍺)圣婴
多少慈祥也多(⛅)少天真
(🛫) 静享(🏼)天赐安眠
(📇)静享天赐安眠
平安(🥄)夜 圣善夜
牧羊人(🤱) 在旷野
(🧤) 忽然看见(🍅)了天(💤)上光华
(💥) 听见(🏜)天使(🧝)唱哈利路(😾)亚
(😦) 救(🤳)主今夜降生
救主今夜降生
平安夜(🦋) 圣善夜
牧羊人(🏘) 在旷野(📵)
救赎宏(📺)恩的黎明(✝)来(❇)到
圣耶稣我主降生(🖲)普(🚠)照
散发出(🧤)来荣光
(🕵)耶稣(🦌)我主降生
(平(🚬)安夜 圣善夜)
歌手简介:
蔡琴(Tsai Chin),1957年12月22日出(🌰)生于台湾高雄(🔌)市,祖籍湖北沔(♒)阳((🎀)今仙桃),中(🧀)国台湾女(😎)歌手、歌舞剧演员、主(🚘)持人。1979年以(🌌)一曲《恰似你的温柔》出道,同年发行(❕)首张个人专辑《出塞曲》,凭(🙈)借其中歌曲《抉择》获得第1届金鼎奖唱片类最佳演唱人奖;1981年(💳)发行专辑《你(🗝)的(🏗)眼(⚡)神》国语粤语双(🔵)版;1982年9月发行个人专辑《一千个春天(👓)》;1989年10月发(📝)行专辑《谈心(🌘)》,凭借此专辑获得第2届台湾金曲奖(📚)最佳女演唱人奖 ;(🐉)1990年3月凭借广播节目“日正当(😘)中”及电(🦗)视节目“第一现场”同时入围广播电视金钟奖最佳广播节目主持人奖及最佳电视综艺节目主持人(🎌)奖;1996年加入(💣)中(🛏)华音乐人交流协会;1998年首次在果陀剧团出演舞台剧《天使(🅿)不(🥗)夜城》;从2003年开始在世界各(✨)地举行世界巡回(👙)演唱(💳)会。至(🚯)2014年(📣),共发行唱片50余张,同时亦涉及广(🚦)播、(🦔)写作、电(✋)影、服装设计、主持等领域。
1、基本的通配(🌩)符有哪些?
·“?”可(🖋)替(🚰)代单个(👚)字符(✌)。
·“*”可替代任意字符。
·(🚄)方括号“[charset]”可替(❕)代charset集中的(🦔)任何单个(✔)字符。
对最后一条(🤠)做些解释。[cChH]通配符便可替代c或h字符的大(🈳)小(🏐)写形式。
通配符集还能描述介(⬆)于字(🏠)符对之(📒)间的所有字符。如“[a-z]”就可以代
替任意小写字母,而[a-zA-Z]则可替代任意字母。注意(🏬)可替代的字(🕒)符
包括字符包括字(🦎)符(🙉)对之间的所有字(🙄)符。
与DOS相比,UNIX的(🏨)通配(🍍)符(🚈)机制要比(🧚)DOS好得多。在DOS中,任(📿)何在“*”
之后(🚭),在(🤤)“.”之彰(📚)的(🏅)字(💷)符均(👐)被忽略,所(🎻)以下面的指令将不能得到你想(🛣)
象的结(🈹)果。
del *bak.*
在(🏔)DOS中,用户只能(✋)用此(🐰)命令(😰)删除当前目(🔬)前下的所有文件,除(⛲)非(😊)系统要
求你不这样做。而(🔟)在UNIX系统中,“*”可替代包(🦁)括(🛴)0在(🉐)内的(🆘)任意数字的
字符,但一行中的其余特(😘)征也仍需匹(🍬)配,因此“bak.*”可匹配
newbak.save、oldbak.new甚至bak.temp,但不能和newbak匹配,因(🍜)为后
者不含“.”。这非常巧妙,可大大方(🥖)便用户(😄),而“*bak”则可匹(👤)配以上
所有的词条,包括newbak。
2、(🧣)能(💌)在一条指令中用多个通配符吗?(🕒)
可以,如
rm a*out*tmp?
该命令可以删除一系列临时性的输出文件(📼),如(🏕)ab.out.temp1、ab.out.temp1
等。
3、如何利用通配符使指令更灵活?
UNIX可将有一(😠)定(💂)关的文件看作一集合的一部(🕝)分,用(💎)户可以用该集合(📧)去匹配。
所以(🛶),如果你需(🤴)要(🤞)删除file1.temp、file2.temp……file9.temp,只须健入:
rm file[0-9].temp
该技巧的用处在于可以用删(🌅)除(⚫)那些相要删(🚎)除的文件。如果(🐷)你每天都要为一个
非常重要的数据库做一个“dump”报告(🛃),你把文件存入dump.'date%h%d',
它(❄)包括一系(🌰)列(🤖)文件如下:
dump.jun23
dump jun24
dump jun25
dump.jun26
再让我们假设因为每个(⛎)文(🗜)件的容量都在100M左右,所以磁盘空间(🈲)很快会被占满,
因此需要每隔几天删去一些老的(🐿)文(❄)件,只留下最近的(😩)两个文件,为此,键入:
rm –i du*[34]
这(🐹)条指令将删(👣)去那些以(🌩)“du”开头并以“3”或“4”结(💫)尾的文件。
通配符的使用
在使用文(🙀)件时,主文件名和扩展名中还可(🏄)以(🎅)使用通配符“*”“?”。其中“*”代表从它所在位置直到“.”(主文件名中为(🤒)到“.”前(🤟),扩展名为“.”后(🗯))的所(🤸)有(🕳)字符;(🎗)“?”代表它所在位(🎻)置的(🥈)任意字符。
实(🍷)例:
A.?? 表示文件主名为A,扩展名不超过两(🌻)个字(🆕)符的文件
???.com 表示文件名(🏙)不超(🌉)过三个字符,扩展(🔦)名(⛎)为COM的文件(💧)
*.* 表示所有文件
ABC.* 表示文件名(♉)为ABC,具(🌫)有任(✖)意扩展名的(🌖)文(🏣)件(📑)
*.EXE 表示以EXE为扩展(🛥)名的所有文件
A*.* 表示以字符A开头的所有(⏳)文(🤡)件 例如: ABC.txt ABD.com等
A??.* 表示文件主名以(⛵)A开头且不超过三(😁)个字(🌓)符,具(🧦)有任意扩(🍞)展名(🐗)
的文(⭕)件
tabs)
%x
匹配任何数量(💜)的非空格
[range]
匹配任何数量的在[range]中列出的字符(🕑)
^
强制从一行(👇)的开始进行(🕚)匹配
$
强(😦)制匹配到一行的结束
(pattern)
保(🏨)存(♎)匹(🎺)配的式样到参数%1~%9
~
包括其中(🎈)的字符不会被解释为特殊字符
{val1|val2|val3|...}
匹(📜)配其中列出(㊗)的任何特殊的(💰)串(📼)
{^string}
不匹配(🤾)其中(💇)包(🚢)括的串
使用[range]时(💝),你可以(👡)在其中列(📖)出需要的字符例如(🕸) [abc] 或使(💱)用范围 [a-c] 。
为了匹(👍)配特殊字符(🐂)本身,可以使用~将特殊字符括住,例如:~[test~] 将匹配字符串
[test] 而不是作为 [range] 来(🏎)匹配。
只使(😦)用$可(🧠)以匹配(🎸)一个空(🔳)行(🥣)。
别名中使用参(😃)数(🎻)的例子
我们在解谜过程中向npc提(😽)出(🚼)的问题(😄)通常是以:(🔦)
ask npc about here
ask npc about rumors
ask npc about name
这样三(🔄)个命令开始的(🏂),把他(👦)们定义成别名(🐶)可(⏭)以(🌙)节省一些时间,像这样:
#al askn {ask %1 about here;ask %1 about here;ask %1 about name}
可如果npc的名(🍄)字有两个单词,或一堆同名的npc中你要问其中第二个,就需要把别名
中的参数改为%-1,此(🐬)时执行askn bing 2或(🗯)askn tian bing就(🤰)不会出(🥌)错了(🔊)。
为了更好的理(👍)解参数的作用,试试执行(🏥)下面的命(☕)令:
#al tt test1 %1 test2 %2 test3 %-1 test4 %-2
看看执行{tt a1 a2 a3 a4 a5}的结果,一切都清楚了吧?
表达式
当执(🤳)行运(⛓)算时,如果所有参数均为数字,则执行数学运(🦈)算,否则(🥞)执行字符串(🔦)操作。以
下是一些常用的表(👽)达式(v1和v2代表变量或另(👺)外的(💸)表(🌋)达式):
v1 v2
如果v1或v2不是数字(🧛),则(💶)执行字符串相加
v1-v2
从v1中减(🏿)去(🤰)v2
v1*v2
相乘
v1/v2
v1除v2,结(📳)果不含小数
v1\v2
取模
v1&v2
逻辑运算and
v1 and v2
同上
v1 | v2
逻辑运算or
v1 or v2
同(🏄)上
v1 xor v2
逻辑运算xor
v1 = v2
如(💴)果(🗳)v1等于v2返回真
v1 > v2
如果v1大(🌸)于(🗑)v2返回真
v1 < v2
如(💑)果v1小于v2返(🐨)回真
v1 >= v2
如果v1大于等于v2返回真
v1 <= v2
如果v1小于等(😏)于(🈺)v2返回真
v1 <> v2
如(🗞)果v1不等于v2返回真
v1 != v2
同上
v1 =~ v2
如果表(🤫)达式v1中的pattern包含v2,返回真
v1 ~= v2
同上(😿)
-v1
返回(🍑)v1的负(🤐)值
!v1
逻辑运(💆)算非
命令:
number]
Syntax:牋?#number command
这个命令向MUD重复发送(🈲)number次命令,number必须是一个常数,如果要使用变量(🎿),请
使用loop命令。当前已经重复的计数保存在系统变量%repeatnum中。
实例:
#4 fight bing %i
命令将被解释成{fight bing 1;fight bing 2;...;fight bing 4}发往(🍆)MUD10
abort
Syntax:牋?#AB
停(📒)止分(😢)析处理当前的命令行中#ab以后的(🎣)部分
实例:
get all corpse;#ABORT;split
在这个例子中,split将(📟)被忽略
action
Syntax:牋?#AC pattern command [classname]
Related:牋?#TRIGGER #T #T- #IGNORE
这是zMUD中最(🙅)有用的特性之一。当从(🍻)MUD中(🧙)收(🏂)到一(👵)条匹(🎛)配的文本(🗿)时,预先定义的命令将(🛃)
被执行。这条命令的第(🌕)一(😒)个参数是被匹配的文本,如果文(🔖)本中包含空(🎀)格,你需(💋)要将它
用括号{}括起来。pattern中(🛺)能够包含特殊的pattern matching symbols 和(🎤)通配符。
第二(💾)个参数是将要被执行的命令,超(🔜)过一(👂)个单词的命令也需要使用括号{}。第三个参
数用于(🏙)给不(🥑)同的触发动作命名分类,便于管理。高级的(🔆)触发设置必须使用参数(📷)
(Preferences)对话(🅾)框,在对话框中,你(🦀)可以决定触(🚽)发(😭)的动作是紧跟(🏡)在匹配的文(🏚)本之
后还是在新的一行(📉)中执行。
一(🌪)个简单(🥫)的例子:
#AC {你买下一件(👑)藤甲} {wear jia}
这(🛹)样,无(🦊)论何时只要你(🌇)买了藤甲,立(📟)刻可以自动穿上。
自(🎨)动登(🦁)录的(🐈)例子(🧜):
#AC {^您的(🔊)英文名(💧)字:} {river}
#AC {^请输入相应密码:} {12345}
然后(🖤)在参数对话框中关闭 Trigger on Newline 设置并且(💓)打开 Trigger on Prompt 这
样名字和密码将紧接着提示(💣)行输入而(📓)不会(🆘)等待换行。注意,字符 ^ 将强制从一行的头
部开始(🕔)匹配。
触发中的参数
#AC {^You get (%d) coins} {chat I get oin } rich
当你看到一行“You get [number] coins”时,其(🤙)中的数值将被(⛴)存放在变量%1中,其
后执行的(🕶)命令可以使用(📡)这个数值。在这个例(🐎)子中用到了(🎴)类(class)名rich,这样你(🏭)就(🙋)
能够使用t 和t-命(📭)令来打开或(💳)关闭这个触发(🧠)。
add
Syntax:牋?#AD variable amount
这(😦)个例子允(🧟)许你做一个简(🥉)单(🗻)的(✡)算术计算(🐖)。amount可以(👠)是数值(💃)或(🐊)变量。如果要做减法,
可以使用负值。复杂一些的算术计(🛵)算(🗺),请使(📹)用 #math 命令。
实例:
#AD moves 1
给变量@moves加一
#ACTION {You get (%d) coins} {#AD gold %1}
当捡到钱时,把捡(🚛)钱的数量加(🦀)到 @gold 变量(🏫)中
alarm
Syntax:牋(🔜)?#ALA timepattern command
Related:牋?#TRIGGER
建立一个基于时间的触发(⌚),而不是根据从MUD中获得的信(⛏)息触发。timepattern可(🗓)以(🔳)是
特定(♏)的时间或包括通配符。如果在minus前加上(-),则表示连(🌪)线时间而不是实际时
间。
timepattern 的(😝)格式(🆗)表示成 hours:minutes:seconds ,其中的(💘)小(🌱)时和分钟是可选项,
如果不指明,则假定小时和分(🚛)钟被通配符(👮)*取代。通配符*可以代替任何数值,而*10可
以匹配10、20、30等等。你也可以指定几个数值用(|)来分隔。Finally, you can
put parenthesis around the wildcards to save the values matched to the
%1..%9 parameters。(这(🤺)句话我(🙎)不懂,谁来帮我?)(🤗)
实例:
#ALARM -30:00 {save}
这里的 hour 没有指定,所以(🐜)默(🍰)认为*。 因此,这个例子将在连线后(🌔)每隔30分钟执行
save 命令。
#ALARM 3:00:00 {gossip Why arent you sleeping?}
命令将在(🛃)凌晨3点触(🚯)发。
#ALARM -59:(55|56|57|58|59) {#SHOW 60-%1}
这个命令在(😿)你连线(💟)时每(🏓)个小时(👹)的最后5秒在屏幕(🤕)上显示(😛) 5 4 3 2 1。
alias
Syntax:牋?#AL [aliasname] [string]
Related:牋?#VARIABLE
保(🏽)存一个或一(🏙)组命令到一个较短的别名中(😐)。当(🔘)执行别名时(🤶),命令中(🦂)的变量能够被扩
展。如果需要延迟(🛌)变量扩展,可以使用两个(🍄)变量标志(🛋)(%%)。
如果不带参(🐥)数执行命令alias,所有的别名将被列出在输出窗口。如果在命令alias中
指定别名(🌒),被指定(👼)的别名将被显示。
别名能够用<tab>键扩展。在命(✖)令行中键入一个别名并(📳)按下<tab>键,命令行中(🏭)的别名
将(👚)被替换成别名中包含的命令。
如果在定义别名(🆖)时使用(🦃)参数(%1,%2,...),在命(🌤)令行中紧随(🛢)别名的文(🗜)本(🗾)将取代这些
参(💖)数。特殊的(🥟)参(🛤)数%-1到%-99表(🗻)示-n之后的所有文本。(使用参数(🕶)的例子)
实例
#AL fs {fill waterskin}
当(👦)执行fs时,fill waterskin将(⛏)被(🌰)送往MUD。
#AL fs {fill @container}
在别(🏞)名中使用变量,变量可以在购买容器时用触发赋值。
#AL make {#ALIAS %1 {cast %1 %%1]
在这个(🎎)例子中(🕳),执(🎴)行make heal将发(😀)出#ALIAS heal {cast heal %1}命(🏴)令,这样就建立
了一个新的别名heal。
all
Syntax:牋?#ALL command
发(🤑)送一个命令到(📩)所(📩)有角色的(🛎)窗口
实(🥦)例:
#ALL quit
发送 quit 命令到所有激活的角色窗(🐛)口。
backup
Syntax:牋?#BA
Related:牋(💾)?#PATH #RETRACE
从当前正(🕖)在记录(🍠)的路径中删除最后一步
实例:
如(🧐)果当(🐦)前路(🆚)径是 .nsew 那(🚴)麽执行 #BA 将使其(🤘)成为 .nse 。如果当前路径是 .n4s 则
执(🛶)行 #BA 后(🎒)将成为 .n3s 。?
beep
Syntax:牋?#BEEP [value]
Related:牋?#PLAY
在pc机喇叭中发声,value 对应相应(🍆)的 windows 事件(🗝)。
实(👽)例(🔃):
#BEEP 16
播放windows 事件 16 的声音。
#BEEP;#WAIT 500;#BEEP
beep两(🚱)次(💙),中间间隔(🐶)0.5秒。
button
Syntax:牋?#BU number
触发一个自定义按(😫)钮,编号(从1至16)决定(🖥)触发的(🌂)按(😃)钮。number 可以是一个变量。
实例:
#BU 1
触发第一个按钮,效果相当(💆)于在屏幕上(🍟)按下(🤰)这个按钮(👪)
c
Syntax:牋(😌)?#C [name]
Related:牋?#C-
开始获(📀)取文本到窗口name中,如果省略name,文本将送入command editor,(如果
editor中的capturing设置可用(📏))。如(💟)果(🥀)在preferences对话框中选(👦)中Capture
Commands设置,键入的命令也将被送往这(🚔)个(👭)窗口。
例子:
#c temp
开始拷贝所有从MUD中(🆘)获得(🥈)的文本到名为temp的窗口中(⌚)
c-
Syntax:牋?#C-
Related:牋?#C
停止获取文本到另一(⏳)个窗口
capture
Syntax:牋?#CAP [number] [name]
Related:牋(📄)?Editor window
获取(🏟)最后number行送到另一个窗口(🚮)。如果省略number,则只获取最(📆)后一行。如果(📃)
number是-1,所有的行将被拷贝。如(🚧)果name省略(🔗),发送的目标将是command editor
window。
例子
#tr {咖啡(💟)告诉你(📡):救命!} {#cap tell}
将tell的内容存入名为tell的窗口,避免忽略。
case
Syntax:牋?#CA index command1 [commandn]
允许从命令列表中选(🍅)择一个(😳)命令执行(📶)。index参数决(🍤)定(😖)执行哪一(📭)个命令(⬜)。如果index大
于列(🍟)表(🧙)中的命令数,将(🗓)从(🎿)第(🚡)一个开始重新选择(⏫)。例如,列表中有(🌳)4个命令,而index=
6,则第(⬅)二个命令将(🍐)被执行(🐠)。你也可以用变量%random随(🐰)机的选择需执行的命令。
实例(🏴):
#CASE 2 {first command} {second command} {third command}
执行第二个(🔷)命令
#CASE @joincmd {join} {rescue}
如果变量@join是奇数,执行join,偶数执行rescue。
#CASE %random {Hello} {Hi there} {Hiya} {Hi}
随机选择问候语。
character
Syntax:牋?#CH
Related:牋(⏱)?#HOST #PW
从Charater atabase中返回当(🎭)前角色的名字(💘)
colse
Syntax:牋?#CL filenum
Related:牋?#FILE
根(🖋)据给定的文(🎶)件号关闭(😈)文件,文件必须是已经用#file命令打开的。
实(🗞)例:
#CLOSE 1
关闭一号文(🍱)件
clr
清(💆)除屏幕。如果(😸)要清空scrollback buffer并收回内(🎟)存,请使用菜单命(🎮)令Empty。
color
Syntax:牋(👑)?#CO attribute [pattern]
Related:牋?#HIGHLIGHT
如果省略pattern参(💭)数(🔷),这个命令将改变最后一(👾)行的颜色(🚚)。颜色属(⛪)性见下表。如果包括
pattern参数,将建立一个颜色(💌)触发,引起触(🎓)发的(🔠)条件除了字(😸)符对应外还需要有(📽)相(💑)同的(🚎)
颜色(🛳)。
Color values:
black牋?
0
blue牋
1
green
2
cyan
3
red
4
magenta
5
brown
6
gray
7
tellow
14
white
15
bold
128
要显示亮色,在基(🍢)本值(🚳)上(🔈)加8,作为背景颜色,需要用基本(🏭)值乘16。例如:使用红(💙)色背
景的值是4*16或64。在前(⏬)景上使用粗体字,需要再加128。这样,在蓝色背景上的(🦋)粗体
白字的(🏏)值(✌)是(🐛):128 1*16 15=159。
实例:
#CO red
将最后一行的颜色变成红色
#CO bold,red
将(💷)最后一行变成红色粗体
connect
Syntax:牋(🤯)?#CON
Related:牋?#DISCONNECT
断(🐒)开并重新连接到当前的(🍤)MUD,与菜单命令File/Reconnect 相同
cr
Syntax:牋?#CR
送一个空行到MUD
cw
Syntax:牋?#CW color
Related:牋?#COLOR
在一次成(📰)功的触发之(💌)后,改变引起触发的内容(🤪)的颜色
实例:(🦑)
#TRIGGER {告诉你} {#CW red}
当有人tell 你时,显示较为醒(🎽)目(😃)的颜色
dde
Syntax:牋?#DDE server topic macro
这个命令允许你通过(➕)动态数据交换使用外部程序(🥊)。zMUD也有一些内建的(🏓)函(⏪)数(🍈)用于DDE: