入力ファイルには次の行があります。
line1
##### 1592524754
### okoko
## ### ## sfsffsf
予想される出力は次のとおりです。
line1
1592524754
okoko
sfsffsf
sed では、[[:space:]]* と #'shes セットのみを置き換えることができます。
$ cat temp_file|sed 's/^[[:space:]]*//;s/^[[:space:]]*\#*//'
line1
1592524754
okoko
### ## sfsffsf
$
$ cat temp_file|sed 's/^[[:space:]]*//;s/^[[:space:]]*\#*//;s/^[[:space:]]*//;s/^[[:space:]]*\#*//;s/^[[:space:]]*\#*//;s/^[[:space:]]*//'
line1
1592524754
okoko
sfsffsf
$
sedフィルタですべてを削除する簡単な方法はありますか?
答え1
^[[:blank:]#]*
#
行の先頭に固定されたゼロ個以上の水平スペースまたは文字と一致します。
だから
$ sed 's/^[[:blank:]#]*//' temp_file
line1
1592524754
okoko
sfsffsf