0
ساخت batc file برای تغییر فایل hosts
سلام دوستان
میخوام یه batch file درست کنم وقتی کلاینت اجراش کرد بره تو مسیر C:\Windows\System32\drivers\etc\hosts و یک ایپی و اسم اضافه کنه
ممنون میشم کمکم کنید
از همه مهم تر فقط یک بار اجرا بشه
2 پاسخ
0
کد زیر یک مثاله ، البته دسترسی ّFull به فایل Host هم شرطه
@echo off
set hostpath=%windir%\System32\drivers\etc\hosts
echo 62.116.159.4 ns1.intranet.de >> %hostpath%
echo 217.160.113.37 ns2.intranet.de >> %hostpath%
echo 89.146.248.4 ns3.intranet.de >> %hostpath%
echo 74.208.254.4 ns4.intranet.de >> %hostpath%
exit
1
@echo off مسیر فایل هاست در متغیر قرار میگیرد set "hostpath=%systemroot%\system32\drivers\etc" set "hostfile=hosts" فایل هاست بطور معمول فقط خواندنی هستش با دستور زیر قابل ویرایش میشود attrib -r -s -h "%hostpath%\%hostfile%" مقدار و یا ای پی که دنبالش هستید set find=OLD IP ای پی جدیدی که میخاهید جایگزین قدیمی شود set replace=NEW IP ایجاد حلقه برای جستجو for /f "delims=" %%a in ('type "%hostpath%\%hostfile%"') do ( set "string=%%a" set "string=!string:%find%=%replace%!" >> "newfile.txt" echo !string! ) move /y "newfile.txt" "%hostpath%\%hostfile%" فایل را دوباره بعد از ویرایش و تغییرات به حالت فقط خواندنی برگردانید با دستور زیر attrib +r "%hostpath%\%hostfile%" echo Done. pause