2010-12-02 60 views

回答

12
$ foo=test.test.test 
$ echo "${foo//./}" 
testtesttest 
+0

爲m的新本,u能解釋一下... THX – rupali 2010-12-02 06:47:21

+1

http://tldp.org/LDP/abs/html/parameter-substitution.html – 2010-12-02 06:48:34

+1

很好地工作在伯恩般的貝殼裏。在tcsh中不太好`%tcsh -c'foo = test.test.test; echo「$ {foo //./}」'' Missing} .` – Johnsyweb 2010-12-02 06:51:32

7

的一般的方法是將管它的sed:

sed -e 's/\.//g' 

在命令提示:

$ echo $hostname       // you type this 
test.test.test       // this is the result 
$ echo $hostname | sed -e 's/\.//g' 
testtesttest 
12

也可通過管道進入

tr -d '.' 

但這樣做的最好方法是不使用外部命令並使用內置的外殼。

4

不只是。但 - 和_以及

HOSTNAME=test.test.test 
HOSTNAME=${HOSTNAME//[-._]/} # testtesttest 
相關問題