facebook twitter hatena line email

「Linux/コマンドメモ/sed」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(dir内のファイルを対象にある文字を置換)
(grep内のファイルを対象にある文字を置換)
行27: 行27:
 
==grep内のファイルを対象にある文字を置換==
 
==grep内のファイルを対象にある文字を置換==
 
  grep hoge ./ -r -l | xargs sed -i -e "s/hoge/piyo/g"
 
  grep hoge ./ -r -l | xargs sed -i -e "s/hoge/piyo/g"
 +
 +
==一致する文字を削除==
 +
sed -i -e /E36A38/d $XML_FILE

2019年10月21日 (月) 18:16時点における版

置換して表示

sed -e "s/hoge/piyo/g" test.txt 

置換して上書き保存

sed -i -e "s/hoge/piyo/g" test.txt

直下のtxt拡張子のすべてを置換して上書き保存

sed -i -e "s/hoge/piyo/g" *.txt

変数を置換する場合

TEST="hoge"
TEST=`echo $TEST| sed "s/hoge/piyo/g"`

正規表現

sed -i -e "s/<string name=¥"app_flag¥">¥(true¥|false¥)/<string name=¥"app_name¥">true/g" strings.xml

区切り文字

以下区切り文字が使える

/
|
%
:

dir内のファイルを対象にある文字を置換

ls schema/* | xargs sed -i "s/CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP/0/g"

grep内のファイルを対象にある文字を置換

grep hoge ./ -r -l | xargs sed -i -e "s/hoge/piyo/g"

一致する文字を削除

sed -i -e /E36A38/d $XML_FILE