2016-12-16 15 views
0

SQLクエリへの出力として生成されたファイルがあります。ファイル内のnullを空白に置き換える必要があります。 sed -e"s/null//g"のようになります。Sedは特定の部分文字列を置換します

しかし、 'null /'という形式の有効な文字列(末尾にスラッシュが付いています)は置き換えられません。 'null /'をそのまま残して、 'null'値だけを置き換える方法はありますか?

答えて

2

sedのワンライナー:

sed 's#null\([^/]\|$\)#\1#g' file 

はあなたの条件のために働く必要があります。

それはパターンを検索:null and followed by a non-slash char (or EOL)を、

followed non-slash charと交換してください。

したがって、null/には触れません。

+0

何null'なので、行の終わりとしては '場合は? – mouviciel

+0

@mouviciel良い点。 'EOL'を追加しました – Kent

+0

パーフェクト!ありがとう – Craig

0

私は、このコマンドは十分なはずだと思う:

sed -e "s/null[^/]//g" 
+1

これは 'nullable' - >' ble'を変更しますが、OPが 'able'を期待していると思います – Kent

+0

単語の中にOPが' null'で問題はないとは思いますが、 – bracco23

関連する問題