我最近使用gedit编写程序,
在gedit中有一个变量叫做$GEDIT_CURRENT_DOCUMENT_PATH
可以获取当前编辑的文件的目录以及文件名
例如用c++写HelloWorld
$GEDIT_CURRENT_DOCUMENT_PATH=/home/lry/HelloWorld.cpp
为了使用g++ -o来命名
我们需要把该变量名变成 /home/lry/HelloWorld
看到网上有人使用了这种方法
g++ $GEDIT_CURRENT_DOCUMENT_PATH -o ${GEDIT_CURRENT_DOCUMENT_PATH%.*}
对于上例${GEDIT_CURRENT_DOCUMENT_PATH%.*}= /home/lry/HelloWorld
的确成功了,但是我不明白
${GEDIT_CURRENT_DOCUMENT_PATH%.*}
的具体含义是什么
在shell脚本中%.*是什么意思 或者分别是什么意思??
望高手解答。谢谢。
问关于SHELL中一个变量的问题[望高手帮忙解答]
-
- 帖子: 10
- 注册时间: 2008-05-22 8:54
- xiooli
- 帖子: 6956
- 注册时间: 2007-11-19 21:51
- 来自: 成都
- 联系:
Re: 问关于SHELL中一个变量的问题[望高手帮忙解答]
代码: 全选
xiooli(~)>> a="hh.ll.gg"
xiooli(~)<< echo ${a%.*}
hh.ll
xiooli(~)>> echo ${a/.*}
hh
xiooli(~)<<
-
- 帖子: 10
- 注册时间: 2008-05-22 8:54
Re: 问关于SHELL中一个变量的问题[望高手帮忙解答]
大体就是找到一个'.'
然后
还是不太明白……能详解一下吗?
然后
还是不太明白……能详解一下吗?
- HuntXu
- 帖子: 5776
- 注册时间: 2007-09-29 3:09
- xiooli
- 帖子: 6956
- 注册时间: 2007-11-19 21:51
- 来自: 成都
- 联系:
Re: 问关于SHELL中一个变量的问题[望高手帮忙解答]
这个应该是从前面开始还是从后面开始的分别哦。HuntXu 写了:贪婪和懒惰...
嗯...是这么叫没错...
- greco
- 帖子: 2487
- 注册时间: 2007-04-06 10:24
- 来自: ~/Shanghai
Re: 问关于SHELL中一个变量的问题[望高手帮忙解答]
他说的是正则的说法xiooli 写了:这个应该是从前面开始还是从后面开始的分别哦。HuntXu 写了:贪婪和懒惰...
嗯...是这么叫没错...
http://silenceisdefeat.com/~greco
代码: 全选
''.join([chr(ord(c)-2) for c in 'O{"G/ockn"ku<"itgeq0ujkBiockn0eqo'])
echo -n "Z3JlY28uc2hpQGdtYWlsLmNvbQ==" | base64 -d
- cnkilior
- 论坛版主
- 帖子: 4984
- 注册时间: 2007-08-05 17:40
- xiooli
- 帖子: 6956
- 注册时间: 2007-11-19 21:51
- 来自: 成都
- 联系:
Re: 问关于SHELL中一个变量的问题[望高手帮忙解答]
我知道,但是这两个都是属于懒惰的阿,贪婪的应该是这么写的:greco 写了:他说的是正则的说法xiooli 写了:这个应该是从前面开始还是从后面开始的分别哦。HuntXu 写了:贪婪和懒惰...
嗯...是这么叫没错...
${a//.*}和${a%%.*}
- HuntXu
- 帖子: 5776
- 注册时间: 2007-09-29 3:09