变相怪杰 发表于 2015-1-14 20:14:45

给大家带来shell变量的特别用法

如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!假定我们界说了一个变量为:
file=/dir1/dir2/dir3/my.file.txt
能够用${}分离交换失掉分歧的值:
${file#*/}:删失落第一个/及其右边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:删失落最初一个/及其右边的字符串:my.file.txt
${file#*.}:删失落第一个.及其右边的字符串:file.txt
${file##*.}:删失落最初一个.及其右边的字符串:txt
${file%/*}:删失落最初一个/及其右侧的字符串:/dir1/dir2/dir3
${file%%/*}:删失落第一个/及其右侧的字符串:(空值)
${file%.*}:删失落最初一个.及其右侧的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:删失落第一个.及其右侧的字符串:/dir1/dir2/dir3/my

影象的***为:
#是往失落右边(键盘上#在$的右边)
%是往失落右侧(键盘上%在$的右侧)
单一标记是最小婚配;两个标记是最年夜婚配
${file:0:5}:提取最右边的5个字节:/dir1
${file:5:5}:提取第5个字节右侧的一连5个字节:/dir2

也能够对变量值里的字符串作交换:
${file/dir/path}:将第一个dir交换为path:/path1/dir2/dir3/my.file.txt
${file//dir/path}:将全体dir交换为path:/path1/path2/path3/my.file.txt


使用${}还可针对分歧的变数形态赋值(]设定、空值、非空值):
${file-my.file.txt}:假设$file]有设定,t利用my.file.txt作传回值。(空值及非空值r不作处置)
${file:-my.file.txt}:假设$file]有O定或榭罩担t利用my.file.txt作骰刂怠(非空值r不作处置)
${file+my.file.txt}:假设$fileO榭罩祷蚍强罩担褂my.file.txt作骰刂怠(]O定r不作处置)
${file:+my.file.txt}:若$file榉强罩担t利用my.file.txt作骰刂怠(]O定及空值r不作处置)
${file=my.file.txt}:若$file]O定,t利用my.file.txt作骰刂担r$filex值my.file.txt。(空值及非空值r不作处置)
${file:=my.file.txt}:若$file]O定或榭罩担t利用my.file.txt作骰刂担r$filex值my.file.txt。(非空值r不作处置)
${file?my.file.txt}:若$file]O定,tmy.file.txt出至STDERR。(空值及非空值r不作处置)

${file:?my.file.txt}:若$file没设定或为空值,则将my.file.txt输入至STDERR。(非空值r不作处置)
${#var}可盘算出变量值的长度:

${#file}可失掉27,由于/dir1/dir2/dir3/my.file.txt是27个字节
欢迎大家来到仓酷云论坛!

小魔女 发表于 2015-1-15 07:07:44

给大家带来shell变量的特别用法

高手云集果断围观

莫相离 发表于 2015-1-17 20:10:06

我们这一代90后,从小接触的是windows98,家里条件好的自己有电脑装的是2000,后来又有了XP,上大学时又有了win7。

乐观 发表于 2015-2-5 05:54:02

现在的linux操作系统如redhat,难点,红旗等,都是用这么一个内核,加上其它的用程序(包括X)构成的。

透明 发表于 2015-2-11 07:30:43

任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。

冷月葬花魂 发表于 2015-3-2 00:55:36

现在的linux操作系统如redhat,难点,红旗等,都是用这么一个内核,加上其它的用程序(包括X)构成的。

老尸 发表于 2015-3-11 03:58:14

主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。

分手快乐 发表于 2015-3-17 22:09:26

目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。

第二个灵魂 发表于 2015-3-17 22:09:26

就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务

飘飘悠悠 发表于 2015-3-25 08:18:59

Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。
页: [1]
查看完整版本: 给大家带来shell变量的特别用法