シェル sh で文字列操作

文字列の長さ(文字数)を返す→ expr “[文字列]” : ‘.*’

※ 「.*」はどんな文字列もあらわす正規表現

文字列の中の一部分を切り出す→ “[文字列]” : “[ここの文字列より後ろ]([取り出す文字列]\)[ここの文字列より前]\”

 例 始めの3文字 expr “[文字列]” : “\(…\).*” 
 例 後ろの3文字 expr “[文字列]” : “.*\(…\)”
 例 pattern文字列より後ろ expr “[文字列]” : “pattern\(.*\)”
 例 pattern文字列より前 expr “[文字列]” : “\(.*\)pattern”

htmlファイルのtitleタグを抜き出す
list=`grep “.*” $file`
echo $list
list2=`expr “$list” : “\(.*\)”`
echo $list2
list3=`expr “$list2” : “\(.*\)”`<br /> echo $list3</p> <p>ファイルから`”`で囲まれている2フィールド目を抽出する場合<br /> cut -d\” -f2 accesslog</p> <p>区切り文字-d,-d

シェルスクリプト