2010-12-02 10 views

答えて

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

、uは少し説明することができます... THX – rupali

+1

http://tldp.org/LDP/abs/html/parameter-substitution.html –

+1

はうまく動作しますボーンのような殻で。 tcsh '%tcsh -c 'foo = test.test.testではあまりよくありません。エコー "$ {foo //./}" ' が見つかりません}。 – Johnsyweb

7

"testtesttest" のようにする必要があります:コマンドで

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

プロンプト:

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

okie ... thx \ charの置き換えについて教えてください。 – rupali

+0

@rupali:これはうまくいくはずです: 'sed -e 's/\\\ // g'' – darioo

+0

スペースを置き換えると、sed -e' s/\\ // g 'それはokieですか? – rupali

12

をすることもできます

tr -d '.' 
へのパイプ

しかし、これを実行する最良の方法は、外部コマンドを使用してシェルを組み込むことではありません。

4

だけでなく、しかし - と_だけでなく

これに新しいメートルとして
HOSTNAME=test.test.test 
HOSTNAME=${HOSTNAME//[-._]/} # testtesttest 
+0

最後のダッシュを削除する必要がありました。 – peteroak

関連する問題