Linux シェル,指定した文字を削除する

スポンサーリンク

鍛錬 132

Linux シェルスクリプト,指定した文字を削除する

指定した文字を削除するには、tr を使用します。
 
使用方法は、以下に示す通りです。

tr -d 削除する文字

オプション

以下は、上記のオプションについてです。

オプション 機能
-d 指定した文字を削除する
スポンサーリンク

実行結果

以下は、様々なパターンの文字を削除しています。

今回操作する文字列は、以下に示す通りです。

今回操作する文字列
ABCDEFG123456789+-*/=,.;:abcdefg

B を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d B)
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 ACDEFG123456789+-*/=,.;:abcdefg

C と E を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d CE)
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 ABDFG123456789+-*/=,.;:abcdefg

B ~ F の範囲で文字が存在する場合、削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d [B-F])
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 AG123456789+-*/=,.;:abcdefg

文字(アルファベット)を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d '[:alpha:]')
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 123456789+-*/=,.;:

数値を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d '[:digit:]')
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 ABCDEFG+-*/=,.;:abcdefg

文字(アルファベット)と数値を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d '[:alnum:]')
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 +-*/=,.;:

小文字(アルファベット)を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d '[:lower:]')
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 ABCDEFG123456789+-*/=,.;:

大文字(アルファベット)を削除

#!/bin/sh

str="ABCDEFG123456789+-*/=,.;:abcdefg"

echo "操作前 $str"
tmp=$(echo -n $str | tr -d '[:upper:]')
echo "操作後 $tmp"
***@ubuntu:~/***/test/shell$ 
***@ubuntu:~/***/test/shell$ ./string.sh
操作前 ABCDEFG123456789+-*/=,.;:abcdefg
操作後 123456789+-*/=,.;:abcdefg
タイトルとURLをコピーしました