2016-03-21 7 views
0

私は変数から正規表現を取り、sedに入れる小さなコードを書いています。スクリプトを実行すると、私はこのようなものを手に入れます。最初のReは空ではないかもしれない

sed: first RE may not be empty 

スクリプトは、変数から仕様に従って行を削除します。変数は空にすることができます。

NR=$1 

sed '/'"${NR}"'/d' in.txt > out.txt 

私はそれを修正することができますか、それを使用することができるより良い機能ですか? :)

+0

それは何をすべきでしょうか?何も削除しない?すべて削除しますか? –

+0

ちょうどsedをスキップします。何も削除しません。 :) – user3463055

答えて

1

あなたが使用することができます: `$ 1`、その結果は` NR`が空の場合

# re is set to $1 or $^ if $1 is not provided 
re="${1:-\$^}" 

# $^ being an invalid regex will NOT delete anything 
sed "/$re/d" in.txt > out.txt 
+0

空変数を設定するだけですか? :) – user3463055

+0

'sed'は正規表現の中で空の値を受け入れませんし、それをする理由は何ですか? – anubhava

関連する問題