2016-11-20 16 views

答えて

3

あなたは、実際のTAB文字を入力する必要があります。VTAB、TAB文字を挿入するには、コマンドライン、 に

var=${var///} 
     ^that's really meant to be a TAB character 
      but might not be visible on this site 

を プレスコントロールを。

0

\ tはbash正規表現でTABを賛美しません。

${var//$(echo -e "\t")/ } 
+2

'エコー-e'は、またはあなたがやりたいことではない場合があります。実装の中には、出力の一部として "-e"を出力するものがあります。 'printf '\ t''ははるかに移植性があります。 –

+1

いくつかの実装だけでなく、いくつかのモードではbashさえあります(つまり、 'xpg_echo'と' posix'ランタイムフラグが設定されている場合)。もしあなたがコマンド置換をしたいならば、 'printf '\ t''はもっと信頼できます。 –

+1

(これは "bash regex"ではありません - fnmatch/glob式です)。 –

2

実際のタブ文字をPuTTYを通してbashシェルに入力すると、ここに追加するのは簡単ではありません。 CTRLVTABCTRLVがペーストとしてウィンドウにキャプチャされているため動作しません。

は、代わりに私が使用します。

${var//$'\t'/ } 

例:

$ var="te"$'\t'"st" 

$ echo $var 
te st 

$ echo ${var//$'\t'/i} 
teist 
+2

'echo $ var' '(実際にはタブを出す)、' echo $ var'(文字列分割と両側を 'echo'とは別の引数として渡すことでスペースで区切る)を表示するかもしれません。同様に 'echo $ {var // $ '\ t'/i}" 'は現在の/既知の' var'値と正常なIFSで何も修正できないかもしれませんが、他の場所で使う。 –

関連する問題