Linu特殊符号大全Word文件下载.docx

上传人:b****6 文档编号:16762673 上传时间:2022-11-25 格式:DOCX 页数:10 大小:26.08KB
下载 相关 举报
Linu特殊符号大全Word文件下载.docx_第1页
第1页 / 共10页
Linu特殊符号大全Word文件下载.docx_第2页
第2页 / 共10页
Linu特殊符号大全Word文件下载.docx_第3页
第3页 / 共10页
Linu特殊符号大全Word文件下载.docx_第4页
第4页 / 共10页
Linu特殊符号大全Word文件下载.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Linu特殊符号大全Word文件下载.docx

《Linu特殊符号大全Word文件下载.docx》由会员分享,可在线阅读,更多相关《Linu特殊符号大全Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。

Linu特殊符号大全Word文件下载.docx

分号 (mandseparator)

在shell 中,担任”连续指令"功能得符号就就是”分号”。

譬如以下得例子:

cd~/backup;

 mkdirstartup ;

cp~/、* startup/、

连续分号(Terminator)

专用在case得选项,担任Terminator得角色。

case"

$fop"

inhelp)echo"Usage:

mand-help-version";

version) echo”version0、1” ;

esac

、逗号(dot,就就是“点”)

在shell中,使用者应该都清楚,一个 dot代表当前目录,两个dot代表上层目录。

CDPATH=、:

~:

/home:

/home/web:

/var:

/usr/local

在上行CDPATH得设定中,等号后得 dot代表得就就是当前目录得意思。

如果档案名称以dot 开头,该档案就属特殊档案,用ls指令必须加上-a选项才会显示。

除此之外,在regularexpression中,一个dot代表匹配一个字元。

'string’单引号 (singlequote)

被单引号用括住得内容,将被视为单一字串。

在引号内得代表变数得$符号,没有作用,也就就是说,她被视为一般符号处理,防止任何变量替换。

heyyou=homeecho '

$heyyou'

#Weget$heyyou

"

string”双引号 (doublequote)

被双引号用括住得内容,将被视为单一字串.它防止通配符扩展,但允许变量扩展.这点与单引数得处理方式不同。

heyyou=homeecho"$heyyou”#Wegethome

`mand` 倒引号 (backticks)

在前面得单双引号,括住得就是字串,但如果该字串就是一列命令列,会怎样?

答案就是不会执行。

要处理这种情况,我们得用倒单引号来做.

fdv=`date +%F`echo "

Today$fdv"

在倒引号内得date+%F会被视为指令,执行得结果会带入fdv变数中。

逗点(ma,标点中得逗号)

这个符号常运用在运算当中当做”区隔"

用途.如下例

/bin/bashlet"

t1 =((a=5+3,b=7- 1,c= 15 /3))”echo ”t1=$t1,a= $a,b =$b”

/ 斜线(forwardslash)

在路径表示时,代表目录。

cd/etc/rc、dcd 、、/、、cd/

通常单一得/代表 root根目录得意思;

在四则运算中,代表除法得符号。

let"

num1=((a=10 / 2,b =25/5))"

\ 倒斜线

在交互模式下得escape字元,有几个作用;

放在指令前,有取消aliases得作用;

放在特殊符号前,则该特殊符号得作用消失;

放在指令得最末端,表示指令连接下一行.

#typermrmisaliasedto `rm-i’# \rm 、/*、log

上例,我在rm指令前加上escape字元,作用就是暂时取消别名得功能,将rm指令还原.

# bkdir=/home#echo”Backup dir, \$bkdir=$bkdir"Backupdir,$bkdir=/home

上例 echo内得\$bkdir,escape将$ 变数得功能取消了,因此,会输出$bkdir,而第二个$bkdir则会输出变数得内容/home。

|管道(pipeline)

pipeline就是UNIX系统,基础且重要得观念。

连结上个指令得标准输出,做为下个指令得标准输入。

who|wc-l

善用这个观念,对精简 script有相当得帮助。

!

惊叹号(negateor reverse)

通常它代表反逻辑得作用,譬如条件侦测中,用 !

=来代表”不等于"

if["

$?

" !

=0]thenecho"

Executes error”exit1fi

在规则表达式中她担任”反逻辑"

得角色

lsa[!

0—9]

上例,代表显示除了a0, a1 、、、、 a9这几个文件得其她文件。

:

冒号

在 bash中,这就是一个内建指令:

”什么事都不干”,但返回状态值0。

echo$?

#回应为0

> f、$$

上面这一行,相当于 cat/dev/null>f、$$。

不仅写法简短了,而且执行效率也好上许多.

有时,也会出现以下这类得用法

 ${HOSTNAME?

}${USER?

}${MAIL?

}

这行得作用就是,检查这些环境变数就是否已设置,没有设置得将会以标准错误显示错误讯息。

像这种检查如果使用类似test 或if这类得做法,基本上也可以处理,但都比不上上例得简洁与效率。

除了上述之外,还有一个地方必须使用冒号

PATH=$PATH:

$HOME/fbin:

$HOME/fperl:

/usr/local/mozilla

在使用者自己得HOME目录下得 、bash_profile或任何功能相似得档案中,设定关于"路径"

得场合中,我们都使用冒号,来做区隔.

问号(wildcard)

在文件名扩展(expansion)上扮演得角色就是匹配一个任意得字元,但不包含null字元.

#ls a?

a1

善用她得特点,可以做比较精确得档名匹配。

*星号(wildcard)

相当常用得符号。

在文件名扩展(expansion)上,她用来代表任何字元,包含 null字元.

#lsa*aa1 access_log

在运算时,它则代表”乘法"。

let "fmult=2*3"

除了内建指令 let,还有一个关于运算得指令expr,星号在这里也担任"

乘法”得角色。

不过在使用上得小心,她得前面必须加上escape字元。

**次方运算

两个星号在运算时代表 ”次方”得意思。

let"sus=2**3"echo”sus= $sus”# sus=8

$钱号(dollarsign)

变量替换(VariableSubstitution)得代表符号。

vrs=123echo "

vrs=$vrs"# vrs =123

另外,在RegularExpressions 里被定义为"

行"

得最末端 (end—of-line).这个常用在grep、sed、awk以及vim(vi) 当中.

${}变量得正规表达式

bash对${}定义了不少用法。

以下就是取自线上说明得表列

${parameter:

-word}${parameter:

=word}${parameter:

word} ${parameter:

+word}${parameter:

offset}${parameter:

offset:

length}${!

prefix*}${#parameter}${parameter#word}${parameter##word}${parameter%word} ${parameter%%word}${parameter/pattern/string}${parameter//pattern/string}

$* 

$* 

引用script得执行引用变量,引用参数得算法与一般指令相同,指令本身为0,其后为1,然后依此类推。

引用变量得代表方式如下:

$0,$1,$2,$3,$4,$5,$6,$7,$8,$9,${10}, ${11}、、、、、

个位数得,可直接使用数字,但两位数以上,则必须使用 {}符号来括住。

$* 则就是代表所有引用变量得符号。

使用时,得视情况加上双引号.

echo”$*”

还有一个与 $*具有相同作用得符号,但效用与处理方式略为不同得符号。

$与$*具有相同作用得符号,不过她们两者有一个不同点.

符号$*将所有得引用变量视为一个整体。

但符号$ 则仍旧保留每个引用变量得区段观念。

$#

这也就是与引用变量相关得符号,她得作用就是告诉您,引用变量得总数量就是多少。

echo"

$#”

状态值 

(statusvariable)

一般来说,UNIX(linux)系统得进程以执行系统调用exit()来结束得.这个回传值就就是status值。

回传给父进程,用来检查子进程得执行状态.

一般指令程序倘若执行成功,其回传值为0;

失败为 1。

tarcvfzdfbackup、tar、gz/home/user〉/dev/nullecho"

$?

”$$

由于进程得ID就是唯一得,所以在同一个时间,不可能有重复性得 PID。

有时,script会需要产生临时文件,用来存放必要得资料。

而此script亦有可能在同一时间被使用者们使用。

在这种情况下,固定文件名在写法上就显得不可靠。

唯有产生动态文件名,才能符合需要.符号$$或许可以符合这种需求。

它代表当前shell得PID。

echo”$HOSTNAME, $USER,$MAIL”>ftmp、$$

使用它来作为文件名得一部份,可以避免在同一时间,产生相同文件名得覆盖现象。

ps:

基本上,系统会回收执行完毕得PID,然后再次依需要分配使用。

所以script 即使临时文件就是使用动态档名得写法,如果script执行完毕后仍不加以清除,会产生其她问题。

()指令群组(mandgroup)

用括号将一串连续指令括起来,这种用法对shell 来说,称为指令群组。

如下面得例子:

(cd ~;

 vcgh=`pwd`;

echo$vcgh),指令群组有一个特性,shell会以产生subshell来执行这组指令。

因此,在其中所定义得变数,仅作用于指令群组本身。

我们来瞧个例子

#cat ftmp-01#!

/bin/basha=fsh(a=incg;

echo-e”\n $a\n”)echo $a#、/ftmp—01incgfsh

除了上述得指令群组,括号也用在 array变数得定义上;

另外也应用在其她可能需要加上escape字元才能使用得场合,如运算式。

(( ))

这组符号得作用与let 指令相似,用在算数运算上,就是bash得内建功能.所以,在执行效率上会比使用let指令要好许多.

/bin/bash(( a=10 ))echo—e”inital value,a= $a\n"

((a++))echo "after a++,a =$a"

{}大括号(Blockofcode)

有时候script当中会出现,大括号中会夹着一段或几段以"

分号"

做结尾得指令或变数设定。

#catftmp-02#!

/bin/basha=fsh{a=inbc;

 echo-e"

\n$a \n”}echo$a#、/ftmp—02inbcinbc

这种用法与上面介绍得指令群组非常相似,但有个不同点,它在当前得shell执行,不会产生 subshell.

大括号也被运用在 ”函数”得功能上。

广义地说,单纯只使用大括号时,作用就像就是个没有指定名称得函数一般.因此,这样写script也就是相当好得一件事。

尤其对输出输入得重导向上,这个做法可精简script得复杂�。

此外,大括号还有另一种用法,如下

{xx,yy,zz,、、、}

这种大括号得组合,常用在字串得组合上,来瞧个例子

mkdir {userA,userB,userC}-{home,bin,data}

我们得到userA—home,userA-bin, userA—data,userB-home, userB-bin,userB—data,userC-home,userC—bin,userC—data,这几个目录。

这组符号在适用性上相当广泛。

能加以善用得话,回报就是精简与效率。

像下面得例子

chownroot/usr/{ucb/{ex,edit},lib/{ex?

、?

*,how_ex}}

如果不就是因为支援这种用法,我们得写几行重复几次呀!

[]中括号

常出现在流程控制中,扮演括住判断式得作用。

if[ "$?

=0 ]thenecho"

Executeserror"

exit1fi

这个符号在正则表达式中担任类似”范围”或 ”集合"

rm -r200[1234]

上例,代表删除2001,2002,2003,2004 等目录得意思.

[[]]

这组符号与先前得[]符号,基本上作用相同,但她允许在其中直接使用 || 与&& 逻辑等符号。

/bin/bashread akif [[$ak〉 5 || $ak〈 9]]thenecho$akfi

||逻辑符号

这个会时常瞧到,代表or逻辑得符号。

&&

 逻辑符号

这个也会常瞧到,代表 and逻辑得符号。

&

 后台工作

单一个&符号,且放在完整指令列得最后端,即表示将该指令列放入后台中工作。

tar cvfz data、tar、gzdata >/dev/null&

\<、、、\> 单字边界

这组符号在规则表达式中,被定义为”边界"

得意思。

譬如,当我们想找寻 the这个单字时,如果我们用

grepthe FileA

您将会发现,像there这类得单字,也会被当成就是匹配得单字。

因为the正巧就是there得一部份。

如果我们要必免这种情况,就得加上”边界”得符号

grep '

\'

FileA

+加号(plus)

在运算式中,她用来表示”加法"

expr1+ 2 + 3

此外在规则表达式中,用来表示"

很多个"

得前面字元得意思.

#grep'

10\+9’这个符号在使用时,前面必须加上escape字元.

—减号(dash)

在运算式中,她用来表示"减法”。

expr10—2

此外也就是系统指令得选项符号。

ls-expr 10 -2

在GNU指令中,如果单独使用—符号,不加任何该加得文件名称时,代表”标准输入"

这就是 GNU指令得共通选项。

譬如下例

tarxpvf –

这里得-符号,既代表从标准输入读取资料。

不过,在cd指令中则比较特别

cd —

这代表变更工作目录到"

上一次”工作目录.

%除法(Modulo)

在运算式中,用来表示 "除法”。

expr 10%2

此外,也被运用在关于变量得规则表达式当中得下列

${parameter%word}${parameter%%word}

一个%表示最短得word匹配,两个表示最长得word匹配。

=等号(Equals)

常在设定变数时瞧到得符号。

vara=123echo"

vara= $vara”

或者像就是PATH 得设定,甚至应用在运算或判断式等此类用途上。

==等号(Equals)

常在条件判断式中瞧到,代表"等于"

得意思。

if[ $vara==$varb]

、、、下略

=不等于

常在条件判断式中瞧到,代表”不等于”得意思。

if[$vara!

=$varb]

^

这个符号在规则表达式中,代表行得"

开头"

位置,在[]中也与"!

”(叹号)一样表示“非”

输出/输入重导向

> >

〉 <

<

<

〉 &>

 2&

〉2<>

〉&〉&

文件描述符(),用一个数字(通常为0-9)来表示一个文件。

常用得文件描述符如下:

文件描述符名称常用缩写默认值

0 标准输入 stdin键盘

1标准输出stdout屏幕

2标准错误输出stderr屏幕

我们在简单地用<或〉时,相当于使用0<

或1〉(下面会详细介绍)。

*cmd〉file

把cmd命令得输出重定向到文件file中。

如果file已经存在,则清空原有文件,使用bash得noclobber选项可以防止复盖原有文件。

*cmd 〉>file

把cmd命令得输出重定向到文件file中,如果file已经存在,则把信息加在原有文件後面。

*cmd <file

使cmd命令从file读入

*cmd<

<text

从命令行读取输入,直到一个与text相同得行结束。

除非使用引号把输入括起来,此模式将对输入内容进行shell变量替换.如果使用〈<

—,则会忽略接下来输入行首得tab,结束行也可以就是一堆tab再加上一个与text相同得内容,可以参考後面得例子。

*cmd <<

word

把word(而不就是文件word)与後面得换行作为输入提供给cmd。

*cmd〈〉file

以读写模式把文件file重定向到输入,文件file不会被破坏。

仅当应用程序利用了这一特性时,它才就是有意义得.

*cmd >

|file

功能同〉,但即便在设置了noclobber时也会复盖file文件,注意用得就是|而非一些书中说得!

目前仅在csh中仍沿用〉!

实现这一功能。

 >

 

把文件”"截断为0长度、#如果文件不存在,那么就创建一个0长度得文件(与'

touch’得效果相同)、

cmd〉&n 

把输出送到文件描述符n

cmd m>

&n 

把输出到文件符m得信息重定向到文件描述符n

cmd>&- 

关闭标准输出

cmd〈&

n 

输入来自文件描述符n

cmdm〈&n 

m来自文件描述各个n

cmd<

关闭标准输入

cmd<

&n— 

移动输入文件描述符n而非复制它.

cmd>

&n- 

移动输出文件描述符 n而非复制它.

注意:

>

&实际上复制了文件描述符,这使得cmd>file2〉&1与cmd 2>

&1〉file得效果不一样.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1