シェルスクリプト総合 その13
■ このスレッドは過去ログ倉庫に格納されています
0639名無しさん@お腹いっぱい。
2009/01/13(火) 12:20:07多大なるヒントを有難う。
やっぱりawkだけで書けるわ。
#!/bin/sh -
searchLine=`head -n 1 "$2"`
matchLines=`echo \`wc -l < "$2"\` `
cmpList=`tr '\012' ' ' < "$2"`
awk '
$0 !~ /^'"$searchLine"'$/ {
print $0
next
}
$0 ~ /^'"$searchLine"'$/ {
matchList = $0
for ( i = 1; i < '"$matchLines"'; ++i ) {
getline
matchList = matchList " " $0
}
matchList = matchList " "
if ( matchList ~ /^'"$cmpList"'$/ ) system("cat '"$3"'")
else {
sizeOfArray = split(matchList, pArray, " ")
for ( i = 1; i <= sizeOfArray; ++i)
print pArray[i]
}
}' "$1"
■ このスレッドは過去ログ倉庫に格納されています