文字列から特定の文字を削除する

文字列から特定の文字を削除する

スペースをコンマで置き換えてから、文字列から追加の特定の文字を削除する必要があります。

echo "$d"
>>Mon Apr 22 05:06:00 UTC 2019
jent=$(echo $jt1 | sed 's/[[:space:]]/,/g')
echo "$jent"
>>Mon,Apr,22,05:06:00,UTC,2019 #this does the first job of replacing the space with comma

しかし、UTC部分と前のカンマも削除したいと思います。どうすればいいですか?

必要な出力は次のようになります。

Mon,Apr,22,05:06:00,2019

答え1

次のように単一のsed呼び出しでこれを実行できます。

$ echo "Mon Apr 22 05:06:00 UTC 2019" | sed 's/ \(UTC \)\?/,/g'
Mon,Apr,22,05:06:00,2019

答え2

日付には標準出力と固定数の列があるため、awkを使用して必要なデータを印刷できます。

[user@server1 ~]$ echo "Mon Apr 22 05:06:00 UTC 2019" | awk '{print $1","$2","$3","$4","$6}'
Mon,Apr,22,05:06:00,2019

答え3

単に次のように言うことができます。

~]$ export jent="$(echo $jent | sed 's/,UTC//g')"
~]$ echo $jent
Mon,Apr,22,05:06:00,2019

答え4

awkとsedを使用して、次の方法で行いました。

注文する:

echo "Mon Apr 22 05:06:00 UTC 2019"|awk '{$(NF-1)="";print $0}'| sed -r "s/\s+/ /g"| sed "s/ /,/g"

出力:

Mon,Apr,22,05:06:00,2019

関連情報