Tôi đang cố gắng viết một tập lệnh shell để lấy URL động mà ComboFix được đặt tại BleepingComputer.com/doad/combofix
Tuy nhiên, vì một số lý do, tôi dường như không thể lấy regex của mình khớp với liên kết tải xuống của "nhấp vào đây" nếu quá trình tải xuống không hoạt động. Tôi đã sử dụng một trình kiểm tra regex và nó nói rằng tôi khớp với liên kết, nhưng dường như tôi không thể làm cho nó hoạt động khi tôi thực hiện nó, nó cho ra một kết quả trống. Đây là toàn bộ kịch bản của tôi:
#!/bin/bash
# Download latest ComboFix from BleepingComputer
wget -O Listing.html "http://www.bleepingcomputer.com/download/combofix/" -nv
downloadpage=$(sed -ne 's@^.*<a href="\(http://www[.]bleepingcomputer[.]com/download/combofix/dl/[0-9]\+/\)" class="goodurl">.*$@\1@p' Listing.html)
echo "DL Page: $downloadpage"
secondpage="$downloadpage"
wget -O Download.html $secondpage -nv
file=$(sed -ne 's@^.*<a href="\(http://download[.]bleepingcomputer[.]com/dl/[0-9A-Fa-f]\+/[0-9A-Fa-f]\+/windows/security/anti[-]virus/c/combofix/ComboFix[.]exe\)">.*$@\1@p' Download.html)
echo "File: $file"
wget -O "ComboFix.exe" "$file" -nv
rm Listing.html
rm Download.html
mkdir Tools
mv "ComboFix.exe" "Tools/ComboFix.exe" -f
Hai lần tải xuống đầu tiên hoạt động thành công và tôi kết thúc với: http://www.bleepingcomputer.com/doad/combofix/dl/12/
Nhưng nó không phù hợp với sed cuối cùng sẽ cho tôi liên kết tải xuống.
Mã được cho là khớp với:
<a href="http://download.bleepingcomputer.com/dl/6c497ccbaff8226ec84c97dcdfc3ce9a/5058d931/windows/security/anti-virus/c/combofix/ComboFix.exe">click here</a>
DUNG DỊCH:
Đối với bất kỳ ai quan tâm, mã cuối cùng hoạt động là:
#!/bin/bash
# Download latest ComboFix from BleepingComputer
wget -O Download.html "http://www.bleepingcomputer.com/download/combofix/12" -nv
file=$(sed -ne 's@^.*<a href=\x27\(http://download[.]bleepingcomputer[.]com/dl/[0-9A-Fa-f]\+/[0-9A-Fa-f]\+/windows/security/anti[-]virus/c/combofix/ComboFix[.]exe\)\x27>.*$@\1@p' Download.html)
echo "File URL: $file"
wget -OSN "ComboFix.exe" "$file" -nv