「root Soft nproc」に対応する値を180000から40000に変更する必要があります。サンプルファイルは次のとおりです。これを1行で簡単に行う方法はありますか?
map hard nofile 1000
root soft nofile 1000
root hard nofile 1010
map soft nproc 1200
map hard nproc 1200
root soft nproc 180000
root hard nproc 180000
答え1
あなたはそれを使用することができます
sed 's/^\(root\s*soft\s*nproc\s*\)180000$/\140000/' file > newfile
代替価値所定の位置にオプションの使用-i
sed -i 's/^\(root\s*soft\s*nproc\s*\)180000/\140000/' file
構文は次のとおりです。sed 's/replace_old/with_new/' file
^
行の先頭に一致します。\s*
スペース文字(スペースとタブ)の数に関係なく一致します。$
行末の一致
内部部分は\(...\)
グループとしてキャプチャされ、キャプチャグループの逆参照である下の\140000
部分に置き換えられます。\1