Datorn iFokus

Datorn

Etikettvarningar
Läst 2723 ggr
Zpookey
0

Någon som är duktig på .bat-skript?

Scenario:
En dator har blivit virussmittad och samtliga html och htm-dokument på dator har fått tillagt en iframe-rad samt blivit skrivskyddad.

Det jag behöver hjälp med är att söka upp alla filerna via dos. Öppna dokumenten, leta reda på textraden, plocka bort raden samt att spara och stänga dokumentet och sedan leta vidare efter nästa.
Scriptet ska också plocka bort skrivskyddet på filen innan det ändras och efter att det sparats så ska dokumentet skrivskyddas igen.

Går detta på ett snabbt och smart sett.
Jag vill använda mig av ett bat-script och inget VB-skript.
Det ska gå….klurar bara inte ut hur.

johan-ahlback
0
#1

innehåller alla filerna samma rad? i så fall kan du ju glra ett script som söker igenom alla filerna istället för att vara specifik.

det måste nästan gå med

flr att ta bort skrivskydd använder man

ATTRIB -R kommer dock inte ihåg hur man ger det till alla filer men det borde vara så här:

ATTRIB -R *.html

för att ta bort en rad så kan man använda edlin eller edit. Men jag kommer inte ihåg hur man hittar specefika rader då det var länge sedan jag gjorde något med .bat.

Ålder föder inte visdom. Eftertanke gör det.

Värd för Trackmania iFokus och medarbetare på Hemsidor iFokus

MadeByJohan.se

guraknugen
0
#2

Kanske inte vad som efterfrågas, men…

#0: .bat-skript? Använder inte du Mac?

Och har inte Mac en något sånär Unix-kompatibel ”terminal”? Om du kan komma åt filerna från någon Mac (har ju aldrig haft en sådan så jag vet inte om det är möjligt, men en USB-sticka borde man väl kunna använda annars, om du inte har ett nätverk som du kan komma åt dem via), så gör ett skalskript där istället, vilket skal man nu använder i Macarna. Sådant är väldigt smidigt att göra i Unix-miljö, men kanske lite kryptiskt för den oinvigde, minst sagt…

Jag är inte själv någon expert när det gäller skalskript, men har trots det gjort några och känner att jag börjar fatta saker allt bättre. Om det är en väg att gå kanske jag kan åtminstone hitta en lösning på något sätt.

Fast du har kanske spikat att det MÅSTE vara ett .bat-skript?

Inkanyezi
0
#3

Det finns en utökning av skriptmöjligheterna i TakeCommand, där du kan programmera ungefär likadant som i UNIX-skal. möjligen kan det gå att använda 4DOS, men jag skulle i första hand använda TakeCommand för att göra det där; cmd.exe har väldigt lite programmeringsmöjligheter.

Kaj
0
#4

Kan du inte använda utforskaren och göra en sökning på alla filer med *.htm* och ett sökord på textraden som iframen innehåller.

När resultatet kommer upp kan du markera alla filer och välja egenskaper och sedan bocka ur skrivskyddsflaggan

Därefter ta fil för fil och tvätta bort Iframen

Kaj
0
#5

För att se vilka filer som är skrivskyddade kan du i utforskaren välja att visa attribut på alla filerna. Ställ dig i den grå menyraden för filerna och högerklicka och välj Attribut. Filer som är skrivskyddade har ett R där (filer kan ha flera attribut så det kan stå tex RC osv. men alla filer som har R bland de olika attributen är skrivskyddade).

Detta funkar även att göra på ett sökresultat.

guraknugen
0
#6

#4: Fil för fil?? Jisses! Hade det varit så få filer, hade han väl säkert redan gjort det för länge sedan. Det hade ju gått lika fort som att ställa frågan här på forumet, nästan…

Personligen utgick jag från att det gällde hundratals filer, eller åtminstone kanske 50 eller så. Då är det ju automatik som gäller, om man inte är gjord av överbliven tid… Med några få kommandon i ett skript, bör detta (från man tryckt Enter för att köra skriptet) vara överstökat på några sekunder eller så (beroende på hur många och stora filer man har förstås, men om man tänker sig några hundra filer eller så).

Jalking
0
#7

Måste det göras i DOS?
Annars finns enklare sätt: Sök *.htm > Markera alla > h-klick - Egenskaper  Sen kan du lägga till eller ta bort skrivskydd för alla.
Jag googlade på "find replace html" och hittade detta. Har inte lusläst texten, men vid en första blick verkar det kunna göra vad du är ute efter.

(Anar att om det var så enkelt hade du nog redan gjort så)

Zpookey
0
#8

#2
Jo jag har Mac…också. Men detta gällde ett företag som vi supportar.
#4
Det gällde c:a 3000 filer per dator….20 datorer ;)

Det hela löstes med en speciell bootbar NOD32 som har BartPE.

Skurken i dramat var nämligen en virussmittad explorer.exe som inte gick att rensa ens i felsäkert läge. När filen väl var ren så startade jag om datorn, avaktiverade antivirusprogrammet och körde "attrib -R c:\*.htm /S" samt "attrib -R c:\*.html /S". Efter det så kördes programmet Advanced find and replace som sökte upp raden med kod och raderade den. Därefter aktiverades antivirusprogrammet igen och en genomsökning gjordes…..rent.
Anledningen till att antivirusprogrammet var tvunget att inaktiveras var för att annars hade man inte fått tillgång till att ändra filerna med textraden. Och eftersom att explorer.exe inte längre var infekterad gjorde inte heller html-filerna någon skada…så länge de inte kördes.

Hittade inget bra bat-commando för att plocka bort textsträngen men Advanced find and replace gjorde ett ypperligt jobb.