Tamam beyler .. Ben bir php script ayrıştırmak ve abit verileri bozmak için gereken bir HTML var. En iyi açıklama için ben awk, grep, egrep, ve boruların bir tanrı korkunç seti yoluyla sed kullanarak bir bash betiği bunu nasıl göstereceğim. Netlik için Yorum.
curl -s http://myhost.net/mysite/ | \ # retr the document
awk '/\/\action/,/submit/' | \ # Extract only the form element
egrep -v "delete|submit" | \ # Remove the action lines
sed 's/^[ \t]*//;s/[ \t]*$//' | \ # Trim extra whitespaces etc.
sed -n -e ":a" -e "$ s/\n//gp;N;b a" | \ # Remove every line break
sed '{s|<br />|<br />\n|g}' | \ # Insert new line breaks after <br />
grep "onemyndseye@localhost" | \ # Get lines containing my local email
sed '{s/\[[^|]*\]//g}' | \ # Remove my email from the line
Bu komutlar, bu gibi görünüyor form öğesi alır:
<form action="/action" method="post">
<input type="checkbox" id="D1" name="D1" /><a href="http://www.linux.com/rss/feeds.php">
http://www.linux.com/rss/feeds.php
</a> [email:
onemyndseye@localhost (Default)
]<br />
<input type="checkbox" id="D2" name="D2" /><a href="http://www.ubuntu.com/rss.xml">
http://www.ubuntu.com/rss.xml
</a> [email:
onemyndseye@localhost (Default)
]<br />
<input type="submit" name="delete_submit" value="Delete Selected" />
Ve başka bir forma sokulacak Hazır .. tam tek hat giriş tabloların içine mangles:
<input type="checkbox" id="D1" name="D1" /><a href="http://www.linux.com/rss/feeds.php">http://www.linux.com/rss/feeds.php</a> <br />
<input type="checkbox" id="D2" name="D2" /><a href="http://www.ubuntu.com/rss.xml">http://www.ubuntu.com/rss.xml</a> <br />
Büyük soru PHP bunu gerçekleştirmek için nasıl? Ben bir sayfa kıvırmak için PHP kullanarak rahat değilim ... ama ben çıktı filtreleme kaybetti duyuyorum görünüyor.
Şimdiden teşekkürler. :)