cqw25116
8/2/2014 - 11:09 PM

SED (windows)

SED (windows)

HTMLエンティティーをデコードして文字に戻す

.bak 拡張子を付けて、バックアップをとる  -i.bak   対象ファイルを1つずつ読み込んで、置換を行う( -e をつけてダラダラ書く)

ls | xargs sed -i.bak -e "s/\&amp;/\&/g" -e "s/\&lt;/</g" -e "s/\&gt;/>/g" -e "s/\&quot;/\""/g"

&amp; ⇒ &    &lt; ⇒ <    &gt; ⇒ >    &quot; ⇒ ”


Change currency format to generic number using sed 『$,"の除去』

echo "$1,234,567.89" | sed "s/[$,\""]//g" Output 1234567.89


Wget page title 『キーワードの間を抽出』

小説を読もう! タイトル (sample-1)

・titleタグが複数ある場合を考慮して、<head> </head>の間にある<title> </title>の間を抽出する) wget -q -O - %URL% | sed -n -e "H;${x;s!.*<head[^>]*>\(.*\)</head>.*!\1!;tnext};b;:next;s!.*<title>\(.*\)</title>.*!\1!p"


小説を読もう! サブタイトル (sample-2)

・(<p class="novel_subtitle"> </p>の間を抽出) wget -q -O - %URL% | sed -n -e "s!.*<p class=\""novel_subtitle\"">\(.*\)</p>.*!\1!p"

http://stackoverflow.com/questions/9312154/wget-page-title


zero padding sed 『0詰め桁揃え』

sed 3.02 (Unxutils) ・・・古いバージョンでは -e で繋いでゴリゴリ書く

echo 13 |sed -e "s/^\([0-9]\{1\}\)\>/000\1/" -e "s/^\([0-9]\{2\}\)\>/00\1/" -e "s/^\([0-9]\{3\}\)\>/0\1/"

http://stackoverflow.com/questions/3121596/is-it-possible-to-pad-integers-with-zeros-using-regular-expressions/3121625#3121625


#### **sed 4.0.7 (UnixUtils Update) ・・・シンプル!でもUnxUtilsは要アップデート!** >`echo 13 | sed -e :a -e "s/^.\{1,4\}$/0&/;ta"`

http://www.theunixschool.com/2012/04/different-ways-to-zero-pad-number-or.html  printf,awk等についても記載有


※batch 遅延環境変数を使う ・・・別途コマンド不要。これも有りかと。。。

setlocal ENABLEDELAYEDEXPANSION for /L %%F IN (%1,1,%2) DO (set /a など何かの処理   set DT=0000%%F     set DT=!DT:~-4!   echo !DT! )