Scripts voor pc op een notitieblok. Programma's (scripts) schrijven wij in Windows Kladblok. Scripts zijn eenvoudig. Hernoem een ​​groep bestanden

Kladblok voor de site is een eenvoudige PHP- en JQuery-applicatie waarmee gebruikers notities kunnen schrijven. Alle vermeldingen worden opgeslagen in tekstbestanden op de server.

Stap 1. HTML
Laten we eerst eens kijken naar de opmaak. Laten we hiervoor een normaal HTML5-document maken. Hieronder vindt u alleen het belangrijke deel, de rest van de code kunt u vinden in het bronbestand index.php.

Opmerking

Zoals je hebt gemerkt, is de opmaak niet ingewikkeld, we zullen natuurlijk CSS-stijlen toevoegen, jQuery en ons script.js-script verbinden. Merk op dat de phpecho-expressie zich in het tekstgebied bevindt.

Stap 2: CSS
Om een ​​achtergrond in de vorm van een vel papier voor notities te maken, gebruik je het pseudo-element:after. Wanneer u het tekstinvoergebied in jQuery-code vergroot of verkleint, wordt het onderste gedeelte automatisch naar beneden verplaatst.

#pad( positie: relatief; breedte: 374px; marge: 180px auto 40px; ) #note( lettertype: normaal 15px "Courgette", cursief; regelhoogte: 17px; kleur:#444; achtergrond: url("../ img/mid.png") repeat-y; weergave: blok; rand: geen; breedte: 329px; min-hoogte: 170px; overloop: verborgen; formaat wijzigen: geen; omtrek: 0px; opvulling: 0 10px 0 35px; ) # pad h2( achtergrond: url("../img/header.png") no-repeat; overflow: verborgen; tekstinspringing: -9999px; hoogte: 69px; positie: relatief; ) #pad:after( positie:absoluut inhoud:""; achtergrond:url("../img/footer.png") geen herhaling hoogte:40px;

Stap 3: PHP
De PHP-code voor ons voorbeeld is vrij eenvoudig. De inhoud van de notitie wordt gelezen en uitgevoerd wanneer de pagina wordt geladen, en wanneer jQuery een AJAX-verzoek verzendt, schrijven we de inhoud naar een bestand. Het opnamebestand wordt overschreven.

$note_name = "note.txt"; $uniqueNotePerIP = waar; if($uniqueNotePerIP)( // Gebruik het IP-adres van de gebruiker om het notitiebestand een naam te geven. // Deze techniek is handig in gevallen waarin de toepassing // door meerdere gebruikers tegelijkertijd wordt gebruikt. if(isset($_SERVER[" HTTP_X_FORWARDED_FOR"]))( $note_name = "notities/".$_SERVER["HTTP_X_FORWARDED_FOR"].".txt"; ) else( $note_name = "notities/".$_SERVER["REMOTE_ADDR"]..txt"; ) ) if(isset($ _SERVER["HTTP_X_REQUESTED_WITH"]))( // AJAX-verzoek if(isset($_POST["note"]))( // Schrijf het bestand naar schijf file_put_contents($note_name, $_POST[" note"]); echo "( "opgeslagen":1)"; ) exit; ) $note_content = ""; if(file_exists($note_name))( $note_content = htmlspecialchars(file_get_contents($note_name)); )

Let op de variabele $uniqueNotePerIP. Als dit waar is, krijgt elke gebruiker een uniek notitiebestand met de naam op basis van het IP-adres. Indien false, zal iedereen hetzelfde bestand gebruiken.

Stap 4: jQuery
De taak van jQuery in deze toepassing is om te luisteren naar wijzigingen in het tekstinvoergebied en een AJAX-postverzoek naar index.php te sturen, waar de tekst naar een bestand wordt geschreven.

$(function())( var note = $("#note"); var saveTimer, lineHeight = parseInt(note.css("line-height")), minHeight = parseInt(note.css("min-height" ) ), lastHeight = minHeight, newHeight = 0, newLines = 0; var countLinesRegex = new RegExp("n", "g"); . ("input",function(e)( // Het wissen van de timer voorkomt dat // elke toetsaanslag wordt opgeslagen clearTimeout(saveTimer); saveTimer = setTimeout(ajaxSaveNote, 2000); // Tel het aantal nieuwe regels newLines = note. val().match (countLinesRegex); if(!newLines)( newLines = ; ) // Verhoog de hoogte van de noot (indien nodig) newHeight = Math.max((newLines.length + 1)*lineHeight, minHeight); // Verhoog/verlaag de hoogte slechts één keer bij het wijzigen van if(newHeight != lastHeight)( note.height(newHeight); lastHeight = newHeight; ) )).trigger("input" // Deze regel verandert de grootte van de notitie wanneer de pagina de functie laadt ajaxSaveNote())( / / Voer een AJAX POST-verzoek uit om het bericht op te slaan $.post("index.php", ( "note": note.val() ));

De gebruikelijke aanpak in dergelijke gevallen is om een ​​handler aan de toetsaanslaggebeurtenis te binden. Maar soms is deze methode niet voldoende, omdat de gebruiker eenvoudigweg de tekst naar het invoergebied kan kopiëren, een suggestie uit de automatische corrector van de browser kan selecteren, of de bewerking Ongedaan maken/Opnieuw kan gebruiken.

Dat is het. Klaar!

Als je pas onlangs het pad van programmeren bent ingeslagen en nog niet eens hebt geprobeerd met het geïnstalleerde besturingssysteem te spelen, dan kan manipulatie met behulp van scripts redelijke vragen oproepen over de noodzaak en het gemak. Maar zelfs afgezien van het simpele feit dat ze je helpen beter te begrijpen hoe het besturingssysteem in de toekomst werkt bij het maken van applicaties, kan scripting een uiterst nuttige vaardigheid zijn.

We wenden ons tot PowerShell om de volgende scripts uit te voeren. Elke systeembeheerder (van beroep of in hart en nieren) kent de mogelijkheden ervan en gebruikt deze periodiek voor alle anderen; het is slechts een opdrachtregelinterface of een vreemd woord. Op populaire bronnen kun je veel ideeën vinden over hoe je PowerShell voor je plezier en zakelijk kunt gebruiken, maar hier zullen we alleen eenvoudige scripts overwegen die je zullen helpen op de hoogte te zijn.

Afsluiten en opnieuw opstarten

De eenvoudigste handeling is dus het uitschakelen van uw computer. Open Kladblok en schrijf:

afsluiten -s -t 0

Sla het bestand op als *.cmd (* is de naam van uw bestand, bijvoorbeeld shutdown.cmd) en vergeet niet bij het type “alle bestanden” te selecteren. Dat is alles, het uitvoerbare bestand zal uw computer uitschakelen bij het opstarten. “-s” betekent in dit geval afsluiten, vervang het door “-r” en start opnieuw op. “-t” is een timer, we hebben deze ingesteld op 0 seconden, maar als u deze instelt op 60, wordt deze na 60 seconden uitgeschakeld.

Het verwijderen van onnodige dingen

In de verschillende samenstellingen die vooraf op uw computer of laptop zijn geïnstalleerd, kunt u veel volledig onnodige applicatiepakketten tegenkomen. Ze verwijderen met behulp van een script is net zo eenvoudig als het pellen van peren:

get-appxpakket -naam *APPNAAM* | verwijder-appxpakket

Zoals u begrijpt is *APPNAME* de naam van de add-on waarin u niet geïnteresseerd bent. Ja, u kunt deze pakketten op de standaardmanier of via speciale programma's verwijderen, maar u kunt ook een script maken dat ze allemaal met één dubbelklik verwijdert.

Wij beheren processen

Er zijn twee handige opdrachten in PowerShell waarmee je windmolens kunt bestrijden (processen die de prestaties verminderen). U kunt ze eenvoudig op het scherm weergeven door te schrijven:

of informatie over een specifieke dienst onder de codenaam *NAME* (deze plaats moet de naam van de betreffende dienst bevatten):

Ontvang service *NAAM*

Maar dit kan gedaan worden in Taakbeheer, maar het kan erg handig zijn om een ​​bestand te maken dat, als je erop klikt, alle processen sluit met een verhoogd bronnenverbruik (browsers, antivirusprogramma's, enz.). Gebruik hiervoor de opdracht Stop-Service:

Stop-Service -Naam *ANTIVIRUS*

Stop-Service -Naam *BROWSER*

Vervangende namen worden aangegeven in * *.

Hernoem een ​​groep bestanden

Nog een vervelend probleem: je hebt afbeeldingen gekopieerd van je camera of telefoon. Een enorme stapel foto's met dezelfde naam als HGNMD034, waarbij HGNMD de naam is van een gemeenschappelijke map waarin bestanden worden gecombineerd die bijvoorbeeld op één dag zijn gemaakt. Om de namen van deze bestanden mooier te maken of om meerdere mappen te kunnen combineren zonder dat er chronologische verwarring ontstaat door namen, kun je een bulk hernoemingsscript gebruiken:

$path = "$comp\desktop\reis\rusland"
$filter = "*.jpg"
get-childitem -pad $pad -filter $filter |
rename-item -newname ($_.name -replace "HGNMD", "RUSLAND")

Geef op de eerste regel, tussen aanhalingstekens, het exacte pad naar de bestanden op. De tweede regel bevat de extensie van de te wijzigen bestanden. In de laatste regel, in plaats van "HGNMD" - een algemene bestandsnaam die ergens door vervangen moet worden, in plaats van "RUSSIA" - de naam die u wilt toewijzen. Als u dit script opnieuw opslaat als uitvoerbaar bestand, zullen vergelijkbare bewerkingen van hetzelfde type slechts enkele seconden duren.

Op zoek naar bestanden

Een andere eenvoudige taak die in PowerShell is geïmplementeerd, is het zoeken naar bestanden in een map. Overweeg in dit geval om naar logbestanden te zoeken:

Get-Childitem C:\Windows\*.log

Of een iets complexer voorbeeld, waarbij de zoekopdracht ook in submappen wordt uitgevoerd:

Get-ChildItem C:\Windows\* -Include *.log -Recurse -Force

Dit is een iets correctere en completere invoer, waarbij "Include" - het onderdeel aangeeft waarnaar u op zoek bent, "Recurse" - een zoekopdracht in submappen, "Force" - de zoekopdracht omvat systeem- en verborgen bestanden.

Referentie

We hebben dus min of meer de algemene principes van het functioneren van PowerShell ontdekt. Als iets niet duidelijk is, raadpleeg dan de helpinformatie als volgt:

Hulpdiensten

Dit is een opdracht die alle beschikbare opdrachten met een korte beschrijving weergeeft. Wilt u meer details? Er is niets eenvoudiger:

Get-Help -Naam *CMDLET*

Waar in plaats van *CMDLET* een interessant commando wordt ingevoegd.

Gegevens vinden

Laten we nu verder gaan met eenvoudige scripts die worden beschreven met iets complexere opdrachten. Met PowerShell kunt u bijvoorbeeld vrijwel alle informatie over hardware en componenten extraheren. Als alternatief is hier een script om het laadniveau van de batterij te schatten:

Add-Type -AssemblyName Systeem.Windows.Forms
.GetConstructor("NonPublic, Instance", $null, @(), $null).Invoke($null)

CPU-architectuur van de externe computer:

Assembly.GetType("System.Management.Automation.PsUtils"
).GetMethod("GetProcessorArchitecture", 40
).Aanroepen($null, @())

Soms is het controleren van de beheerdersrechten van de huidige gebruiker een belangrijke taak. Hier is een eenvoudige manier in PowerShell:

Assembly.GetType("System.Management.Automation.Utils").GetMethod(
"IsAdministrator", 40).Invoke($null, @())

Laten we daar voorlopig stoppen. Zoals je waarschijnlijk hebt gezien, is PowerShell niet de meest complexe, maar het is een zeer nuttige tool die zowel eenvoudige als vrij complexe bewerkingen kan uitvoeren. PowerShell is echter niet de enige scripttool voor Windows. Maar daarover de volgende keer meer.

Hoe schrijf je scripts voor een besturingssysteem, websites of alleen games? Het antwoord hierop is, geloof me, een gemakkelijke vraag en zal in het kader van dit artikel worden besproken.

Algemene informatie

Het is zeer wenselijk om op zijn minst minimale kennis van programmeren te hebben. Maar als iets onbegrijpelijk lijkt, kunnen een of twee artikelen de leemte opvullen. Laten we eerst definiëren wat een script is. Dit is de naam voor een algoritme dat in bepaalde programmeertalen is geschreven en dat op de computer van een persoon wordt opgeslagen en kan communiceren met bepaalde bestanden, programma's zoals browsers en systeeminstellingen. Dit alles stelt u in staat de standaardmogelijkheden aanzienlijk aan te vullen en geautomatiseerde assistenten te creëren die een deel van het werk op zich zullen nemen.

Laten we gaan werken met browsers

Dit is misschien wel een van de gemakkelijkste activiteiten. Als we scripts in JavaScript schrijven, is een gewoon notitieblok en kennis van deze programmeertaal voldoende. Toegegeven, er zijn hier ook nadelen. Iedereen die hetzelfde Kladblok heeft, kan dus zien wat het script is. En als hij slechte bedoelingen heeft, en er zit een kwetsbaarheid in de code, dan kunnen er problemen ontstaan. Als antwoord op de vraag hoe je scripts in JavaScript kunt leren schrijven, moet worden opgemerkt dat het hiervoor voldoende is om deze programmeertaal te bestuderen. Om betere en complexere programma's te maken, kunt u verschillende bibliotheken gebruiken. Maar ze vereisen geschikte webbrowserextensies. En bij het wisselen van computerapparatuur zult u aanvullende instellingen moeten maken. En als u ontwikkelingen van derden gebruikt, moet u ervoor zorgen dat het script geen gebruikersgegevens naar services van derden verzendt. Opgemerkt moet worden dat elke browser zijn eigen specifieke beperkingen heeft. Maar over het algemeen kun je bijna alles met hun hulp doen. Waarom worden ze in dergelijke gevallen geschreven? Ze zijn nodig wanneer menselijke activiteiten moeten worden geautomatiseerd.

Wij werken met het Windows besturingssysteem

Laten we zeggen dat we de computerconfiguratie moeten wijzigen. Hiervoor is een breed scala aan grafische hulpmiddelen beschikbaar, maar helaas dekken ze niet alles. Daarom is het vaak nodig om systeemscripts te maken. Ze hebben de extensie .bat. Iedereen die al langere tijd achter een computer werkt, is dergelijke bestanden al tegengekomen. Maar hoe schrijf je scripts voor Windows? Hiervoor hebben we hetzelfde Kladblok nodig. Maak eerst een nieuw tekstbestand. Het is noodzakelijk om systeemopdrachten erin op te nemen. Hierna moet u de bestandsextensie wijzigen in .bat. En het enige dat overblijft is het lanceren van deze ontwikkeling. Als alles correct is, worden de opdrachten met succes uitgevoerd, zoals u kunt zien. Maar in het geval van fouten of het schrijven van ongeletterde code zal er in het beste geval niets gebeuren. Daarom is het beter om te begrijpen wat u opschrijft. Het zomaar ergens vandaan halen en gedachteloos invoegen is absoluut niet aan te raden! Dit kan tot aanzienlijke problemen met het besturingssysteem leiden. En je zult geluk hebben als dergelijke gevaarlijke acties worden uitgevoerd vanaf een gastaccount. Een opdracht van een beheerder kan een computer immers in een ‘steen’ veranderen.

Hoe zit het met Linux?

Houd er rekening mee dat Windows niet het enige besturingssysteem is. Er is ook Linux, dat behoorlijk populair is. Hoe schrijf ik scripts in dit besturingssysteem? Ze zijn gemaakt met behulp van een shell - een speciale opdrachtinterpreter, die de interface is tussen een persoon en de kernel van het besturingssysteem. In Linux zijn scripts in wezen slechts een bestand met systeemopdrachten. Het is eenvoudig en handig tegelijk. Maar de shell moet weten hoe zo'n bestand moet worden verwerkt. Standaard wordt er gewoon gelezen. En als u wilt uitvoeren, wordt de constructie "#!" gebruikt, die vóór de opdracht moet worden geplaatst. Alle scripts hebben de extensie .sh. Opgemerkt moet worden dat je met hun hulp heel wat complexe dingen kunt doen. Bijvoorbeeld het maken van back-ups van bestanden. Over het algemeen zijn er extreem veel gebruiksscenario's.

Scripts leren schrijven

We moeten dus eerst beslissen in welke omgeving we de code zullen typen. Bijna altijd is één Kladblok hiervoor voldoende. Maar het is niet erg handig om de structuur van structuren weer te geven; bovendien worden operators en andere elementen niet benadrukt. Daarom kan Notepad++ als waardig alternatief worden aangeboden. Voor degenen die Engels kennen, is het niet zo moeilijk om te vertalen dat dit ook een "Kladblok" is. Maar met uitgebreide mogelijkheden. Deze kleine maar erg leuke ontwikkeling is vooral gericht op programmeurs. Daarin kunt u de weergave-instelling inschakelen van vrijwel alles wat beschikbaar is. Er is een handig hulpmiddel voor het weergeven van codes en vele andere, zij het kleine, maar leuke kleine dingen die het schrijfproces comfortabeler zullen maken. Over het algemeen heeft de vraag "waar scripts te schrijven" veel verschillende antwoorden gekregen, die elk hun eigen draai geven. Er zijn ook zeer geavanceerde omgevingen, met emulators en veel foutopsporingstools. Kies wat je hartje begeert. Hierna moet je voor je kennis zorgen. Hulp bij de programmeertaal of besturingssysteemopdrachten is geschikt als basis. Voor een meer gevorderde studie kunt u verschillende boeken lezen waarin de kenmerken van machinelogica en codeverwerking worden uitgelegd.

Realtime trainingsdiensten

Als u geïnteresseerd bent in het leren schrijven van scripts, mag u de mogelijkheid om te leren met behulp van informatie-educatieve technologieën niet uitsluiten. Hoe ziet zo’n ‘programmeursmederij’ eruit? Volgens het programma, samengesteld volgens de mening van ervaren ontwikkelaars, wordt een beginner van de gemakkelijkste naar de moeilijkste momenten geleid. Zo kan het dynamisch bijwerken van gegevens in eerste instantie worden bestudeerd om vervolgens over te gaan tot het maken van socketservers. En de persoon ondergaat de training langzaam, stap voor stap, waarbij hij de maximale hoeveelheid gegevens absorbeert. Daarom kunt u, als er zich problemen voordoen, bij hen terecht voor hulp. Het is geen feit dat de eerste die je tegenkomt aan al je behoeften zal voldoen, maar dan zul je gewoon iets anders moeten proberen.

Waarom studeren?

Veel mensen zijn geïnteresseerd in het schrijven van scripts voor games. Nou, dit is niet erg moeilijk, maar het is niet het enige gebruik van een dergelijke functie. Maar laten we het spel als voorbeeld bekijken. Laten we zeggen dat iemand graag entertainment speelt op een bepaalde site. Maar helaas bepaalt het dat het nodig is om ofwel je geld te investeren, ofwel om bepaalde acties langdurig en eentonig uit te voeren. En als het tweede pad werd gekozen, dan zijn scripts precies wat hier nodig is. Dit kan ook worden gebruikt in stationaire spellen op een computer. Er zijn personages die worden bestuurd door kunstmatige intelligentie, en om ermee te vechten, kun je je eigen versie van de AI maken, waardoor een gevecht tussen de computer en zichzelf wordt geregeld (en voor een gemakkelijkere doorgang). Maar scripts kunnen niet alleen met succes in games worden gebruikt. Laten we zeggen dat er een website is van een serieus bedrijf. Een belangrijk aspect is maximale ondersteuning in de communicatie met klanten. En hiervoor wordt een klein formulier toegevoegd in de vorm van een script, waarmee u online deskundig advies kunt krijgen. Er zijn veel mogelijke toepassingen!

Conclusie

Helaas is het in het kader van dit artikel erg moeilijk om over te brengen hoe je scripts correct schrijft. Je kunt natuurlijk algemene zinnen gebruiken over hoe de code minder ruimte in beslag moet nemen, optimaal moet zijn en nog veel meer, maar je kunt dit pas echt in de praktijk begrijpen. Alleen ervaring en het zoeken naar optimale oplossingen kunnen immers helpen om programma’s zo uit te voeren dat ze met minimale inspanning hun “verantwoordelijkheden” vervullen. Bij programmeren in het algemeen, en niet alleen bij het schrijven van scripts, hangt veel af van de praktijk! Daarom moet je voortdurend leren, verbeteren en nadenken over hoe je de taak op de best mogelijke manier kunt implementeren.

Elke beginnende Linux-systeembeheerder komt vroeg of laat zo’n concept tegen als “ script”, zij het een van de opstartscripts zoals /etc/rc.d/rc of een configuratiescript geschreven door de softwareontwikkelaar configureren. In dit artikel zal ik proberen aan te tonen dat het schrijven van scripts in schelp is niet iets ongewoons en is zelfs voor een beginner in de wereld van Linux heel haalbaar.

Laten we beginnen met te kijken naar wat er achter de Engelse termen verborgen zit. schelp En script. Schelp, of shell, zoals de term soms wordt vertaald, is een opdrachtinterpreter, een interface tussen de gebruiker en het besturingssysteem, de kernel ervan. Maar meer nog: het is ook een krachtige programmeer- en scripttaal. Het bevat zijn eigen functiewoorden en besturingsstructuren en maakt het mogelijk er programma's op te schrijven. Dit scripttaalprogramma heet script, kan systeemaanroepen en opdrachten van het besturingssysteem combineren, evenals externe hulpprogramma's, waardoor een krachtig hulpmiddel voor systeembeheer ontstaat.

Een van de taken van systeembeheer is het maken van back-ups van belangrijke informatie. Laten we daarom eens kijken naar een voorbeeld van een script dat back-upinformatie implementeert.

Het begin begon

Allereerst moeten we dus de structuur van het script begrijpen. Het is niets ingewikkelds. Over het algemeen is het eenvoudigste script eenvoudigweg een lijst met systeemopdrachten. Bijvoorbeeld:

Echo Dit is slechts een voorbeeld
whoami
naam -a

Deze opdrachten worden gecombineerd in één bestand. Maar de shell moet weten dat hij dit bestand moet verwerken en niet alleen de inhoud ervan moet lezen. Hiervoor bestaat een speciale constructie: #!

Dit ontwerp heet " sha-bang" Eigenlijk specificeert # een opmerking, maar in dit geval betekent sha-bang dat daarna het pad naar de scripthandler zal gaan. Bijvoorbeeld:

#!/bin/bash
#!/bin/sh
#!/usr/bin/perl

We houden het bij de Bash, Bourne-Again-shell. Deze shell wordt standaard op bijna alle Linux-systemen geïnstalleerd en /bin/sh linkt ernaar. Het einde van het script wordt aangegeven door het servicewoord exit.

Laten we, gewapend met deze kennis, ons eerste script schrijven:

#!/bin/bash
echo Eenvoudig script # Het echo-commando drukt een bericht op het scherm af
echo jij:
whoami #whoami toont de naam van de geregistreerde gebruiker
echo Uw systeem is gestart
uptime # uptime toont het tijdstip waarop de machine werd ingeschakeld
echo Vandaag
date # date toont de huidige datum en tijd
echo Dat was het voor nu
Uitgang

Laten we dit bestand opslaan onder de naam tutor1.sh. Laten we de opdracht uitvoeren om het script uitvoerbaar te maken.

Chmod +rx-tutor1.sh

Het resultaat van het uitvoeren van het script is:

:~/Doc/Open Source$ ./tutor1.sh
Eenvoudig script
Jij:
voland
Uw systeem is gestart
14:38:46 tot 1:48, 2 gebruikers, laadgemiddelde: 0,47, 0,43, 0,41
Vandaag
Zo 26 februari 14:38:46 MSK 2006
Dat is alles voor nu

Laten we verder gaan met iets ernstigers.

Nu we hebben geleerd hoe we basisscripts moeten schrijven, is het tijd om verder te gaan met de serieuze zaken: het schrijven van een back-upscript.

Allereerst moeten we bepalen waarvan we een reservekopie gaan maken. Daarom moet ons script met de opdrachtregel kunnen werken. Opdrachtregelargumenten worden gespecificeerd na de scriptnaam, gescheiden door een spatie: somescript arg1 arg2 arg3. Het script neemt argumenten waar aan de hand van hun volgnummers, dus we zullen constructies gebruiken in de vorm $argument_number, d.w.z. $1, $2, $3. $ is een jokerteken dat we ook nodig hebben bij het werken met variabelen. Variabelen in het script worden gespecificeerd in de vorm variabele_naam=waarde. We zullen de variabelen MAXPARAMS gebruiken om het maximale aantal opdrachtregelparameters te definiëren, BACKUPFILE om de naam van het archief in te stellen, BACKUPDIR voor de map waarvan we een back-up zullen maken en ARCHIVEDIR voor de map waarin we het archief zullen plaatsen. Het belangrijkste onderdeel van het script zijn de opdrachten om alle gevonden bestanden en mappen in de opgegeven map te zoeken en te archiveren:

Vinden. -type f-print0 | xargs -0 tar rvf "$archive.tar" > /dev/null
gzip $archive.tar

Laten we eens kijken wat deze commando's doen. find zoekt in de huidige map (dit wordt aangegeven door het eerste argument ".") naar alle bestanden en retourneert het volledige pad ernaartoe (print0). Deze paden worden omgeleid naar de tar-opdracht, die alle bestanden in één verzamelt. Vervolgens archiveren we met behulp van de opdracht gzip het resulterende tar-bestand. Team > /dev/null handig als u een groot aantal bestanden archiveert. In dit geval worden hun namen en het volledige pad ernaartoe niet weergegeven op de console.

De volgende stap is om de gebruiker tips te geven over hoe hij het script moet gebruiken als hij fouten maakt.

Dit ontwerp bijvoorbeeld

If [ $# -lt "$MAXPARAMS" ];
Dan
echo

echo
uitgang 0
fi

geeft aan dat de gebruiker niet genoeg opdrachtregelargumenten heeft opgegeven. Als [voorwaarde]...fi specificeert een voorwaardelijke constructie. $# -lt "$MAXPARAMS" controleert het ingevoerde aantal parameters en als dit aantal kleiner is dan MAXPARAMS, ontvangt de gebruiker een bericht dat een foutieve invoer aangeeft. Exit 0 zorgt ervoor dat het script wordt beëindigd zonder een foutcode op te geven. De overschrijding van het toegestane aantal parameters wordt op een vergelijkbare manier gecontroleerd, alleen in plaats van ls (kleiner dan - kleiner dan), moet u gt opgeven (groter dan - groter dan). Nu de belangrijkste punten van het script zijn uitgelegd, kunnen we doorgaan naar de volledige versie:

#!/bin/bash
# Beschrijving:
#+ Maakt een back-up van alle bestanden in de opgegeven map
#+ in "tarball" (archief tar.gz).
#+ Gebruik:
#+ sh backup.sh archiefnaam bronmap doelmap
#+

# Maximaal aantal opdrachtregelparameters
MAXPARAMES=3

if [ $# -lt "$MAXPARAMS" ];
Dan
echo
echo "Gebruik: sh `basisnaam $0` archiefnaam bronmap bestemmingsmap"
echo
uitgang 0
fi

als [ $# -gt "$MAXPARAMS" ];
Dan
echo
echo "Dit script vereist alleen $MAXPARAMS opdrachtregelargumenten!"
echo
uitgang 0
fi

# Variabelen die we in het script gebruiken
BACKUPFILE=$1-backup-$(datum +%m-%d-%Y)
archief=$BACKUPFILE
BACK-UPDIR=$2
ARCHIVEDIR=$3

# Controleer of er een bronmap en een doelmap is
als [! -e $BACKUPDIR];
Dan
echo
echo "\"$BACKUPDIR\" bestaat niet!"
echo
uitgang 0
fi

als [! -e $ARCHIVEDIR ];
Dan
echo
echo "\"$ARCHIVEDIR\" bestaat niet, er wordt gemaakt..."
mkdir $ARCHIVEDIR
echo "Klaar."
fi

# Controleer of er archieven in de bron en bestemming zijn.
cd $ARCHIVEDIR
if [ -e $archive.tar.gz ];
vervolgens rm $archive.tar.gz
fi

cd $BACKUPDIR
if [ -e $archive.tar.gz ];
vervolgens rm $archive.tar.gz
fi

# Het grootste deel van het script...
echo "Een reservekopie maken van \"$BACKUPDIR\" naar het bestand \"$archive.tar.gz\"..."
vinden . -type f-print0 | xargs -0 tar rvf "$archive.tar" > /dev/null
gzip $archive.tar
echo "\"$BACKUPDIR\" is succesvol gearchiveerd naar het bestand \"$archive.tar.gz\"."

# Verplaats het archief naar de map ARCHIVEDIR
echo "Het archief \"$archive.tar.gz\" verplaatsen naar de map \"$ARCHIVEDIR\"."
mv $archive.tar.gz $ARCHIVEDIR/$archive.tar.gz
echo "Klaar."

Ik hoop dat ik de belangrijkste punten voldoende gedetailleerd heb toegelicht. Als je vragen hebt, kun je contact met me opnemen via Ik raad ook het prachtige boek Advanced Bash-Scripting Guide van Mendel Cooper aan, dat me veel heeft geholpen toen ik net kennis maakte met scripts. Veel programmeerplezier.

P.S. Hartelijk dank mrt voor haar commentaar en advies.

Met dit artikel leer je niet programmeren of zelfs maar een programma als zodanig schrijven, maar vind je hier uitstekende VBS-scripts en BAT-bestanden die je gemakkelijk in een gewoon Windows-kladblok kunt schrijven en die je op je eigen manier kunt verbeteren, en laat het dan zien aan je vrienden en familie. Misschien vrolijkt dit je op en zul je een geweldige tijd hebben.

De meeste vergelijkbare scripts zijn geschreven voor het gemak en de automatisering van alle acties op een computer met Windows. De hieronder gepresenteerde scripts zullen niet erg nuttig zijn (misschien lijkt dat wel zo), maar ze zijn perfect voor een eerste kennismaking met "codering". Je zult een geweldige tijd hebben om zowel jezelf als andere dummies (niet-programmeurs) te verrassen, en dit is ook een goede optie.

Enkele terminologie:

  • VBS is een programmeertaal voor het maken van scripts in Windows OS, gemaakt/bewerkt in Windows Kladblok, heeft de toestemming ".vbs". Ik denk dat het geen zin heeft om door te gaan, omdat het vooral voor beginners weinig zal zeggen. Voor degenen die geïnteresseerd zijn -.
  • BAT is een batchbestand, in de volksmond gewoon een “batchbestand”. Bestandsextensie ".bat". Verder soortgelijke - .

Deze extensies (vbs, bat) bestanden worden aangemaakt in het bekende Windows Kladblok (Kladblok). Voor meer gemak bij het maken van scripts wordt aanbevolen om een ​​verbeterd (laten we zeggen) notitieblok te gebruiken - Notepad++. Het is handig voor het accentueren van de syntaxis van een groot aantal programmeertalen. Als dit u niet veel zegt, download het dan en schrijf erin - u zult minder fouten in de code maken, of het zal gemakkelijker zijn om ze te vinden dan in de code. hetzelfde weinig functionele Windows Kladblok.

Voor de duidelijkheid een voorbeeld (aan de linkerkant is Windows Kladblok, aan de rechterkant is Kladblok++):

Laten we beginnen

Als u al bekend bent met VBS-scripts en batchbestanden, dan zullen de volgende voorbeelden hoogstwaarschijnlijk niet interessant voor u zijn, maar als u een beginner bent, dan is dit wat u nodig heeft voor een eerste introductie.

Laten we een computer leren hallo te zeggen

  1. Open Kladblok (of Kladblok Plus Plus).
  2. Kopieer en plak de code:

    Set sapi=CreateObject("sapi.spvoice")
    sapi.Spreek "Hallo!"

  3. Verplichte voorwaarde: de aanhalingstekens moeten “zo” zijn, “Kerstbomen” werkt niet, het script wordt niet verwerkt en er verschijnt een foutmelding. In plaats van het woord "Hallo" kun je alles schrijven, zelfs in het Russisch, als je een Russische stemmotor hebt.
  4. Selecteer vervolgens Bestand - Opslaan als - Bestandstype - Alle bestanden - naam.vbs
  5. Noem het bestand hoe je maar wilt, maar vergeet niet om aan het einde de extensie - .vbs (bijvoorbeeld - Liguster.vbs) toe te voegen.
  6. Probeer nu uw script te testen - dubbelklik op het bestand.

Eén waarschuwing: Als je woorden tussen aanhalingstekens in Russische letters hebt geschreven en als je begint, wordt er iets onbegrijpelijks uitgesproken, dan heb je simpelweg niet de Russische stemengine geïnstalleerd. Gedetailleerde installatie en configuratie van de stemengine valt buiten het bestek van ons artikel, dus lees meer in detail en kom hier nog eens terug.

Laten we nu het volgende doen: we voegen dit script toe aan het opstarten, wat betekent dat wanneer u de computer opstart, de woorden die in het programma zijn geschreven, tegen u worden uitgesproken als er, zoals in het voorbeeld, staat; "Hallo" elke keer dat u de computer aanzet. Hoe dit te doen?

Het is eenvoudig: u kunt op dezelfde manier een programma (script) toevoegen om op te starten, dat wil zeggen via hetzelfde VBS-script. Maak een bestand in Kladblok, kopieer/plak (Ctrl+C/Ctrl+V) de volgende code:

Dim vOrg, objArgs, root, sleutel, WshShell
root = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\"
KeyHP = "Programma"
Stel WshShell = WScript.CreateObject("WScript.Shell") in
WshShell.RegWrite root+keyHP,"C:\Privet.vbs /autorun"

We veranderen het pad naar het "talker" -script, deze regel - C:\Privet.vbs naar het onze. We schrijven op waar je dit script hebt en hoe het heet. Sla vervolgens het nieuw gemaakte miniprogramma op in Kladblok en voer het uit. Dat is alles, nu zal de computer u begroeten elke keer dat u hem aanzet.

Open schijf

  1. Kladblok openen. Kopieer/plak de volgende code:

    Stel een = CreateObject("WMPlayer.OCX.7") in
    Stel b = a.CdromCollection in
    Stel c = b.Item(0) in
    Stel d = c.Uitwerpen

  2. Opslaan met extensie .vbs
  3. Voer het script uit en de schijf wordt geopend.

Er is een interessantere wijziging van dit script:

Set WMPlayer = CreateObject("WMPlayer.OCX.7")
Doen
WMPlayer.CdRomCollection.Item(0).Eject()
lus

In dit geval wordt het cd-/dvd-station op laptops voortdurend geopend en gesloten; in dit geval wordt het geopend na elke keer dat het wordt gesloten.

Aandacht! De tweede code (het openen en sluiten van de schijf) wordt door sommige antivirussen gezien als een kwaadaardig programma. Kaspersky Anti-Virus (inclusief) ziet het precies zo en vernietigt het onmiddellijk. In het eerste geval (gewoon de schijf openen) is het geen kwaadaardig script voor antivirusprogramma's.

Om het automatisch openen en sluiten van de aandrijving te stoppen, moet u:

  1. Start Taakbeheer (- Ctrl+Alt+Del).
  2. Ga naar het tabblad "Processen".
  3. Zoek het proces wscript.exe - rechtermuisknop - beëindig het proces.

Spel

Een interessante vondst van internet - een spel op VBS. Je moet een getal van 0 tot 100 raden. Wanneer je het script start, stelt (lost) het script automatisch het getal in dat je moet raden en voer het in een speciaal venster in als je verkeerd antwoordt, er worden hints gegeven, bijvoorbeeld; minder of meer.

Hieronder staat dezelfde code die in Kladblok moet worden gekopieerd en geplakt en vervolgens moet worden opgeslagen (extensie .vbs).

U kunt berichten ook op uw eigen manier wijzigen; alles wat in Cyrillisch is geschreven, kunt u zonder problemen bewerken. Wees niet bang om de code te breken. Experiment. Als er iets gebeurt, kopieert u de werkende code vanaf hier opnieuw.

Stel y = CreateObject("Scripting.FileSystemObject") in
Stel y = Niets in
Doen
een = 0
u = 0
Willekeurig
Getal = Int((RND*99)+1)
MsgBox "Ik heb een getal van 1 tot 100 geraden, probeer het te raden",64,"Raadspel"
Doen
een = een + 1
c = InputBox("Raad het getal" & vbCrLf & vbCrLf & "Probeer: " & a & vbCrLf & vbCrLf & "Om de resultaten te zien, voer het getal in!" & vbCrLf & vbCrLf & "Laat het veld leeg om af te sluiten" & vbCrLf & vbCrLf," Raadspel")
Als c = "!" Vervolgens CreateObject("WScript.Shell"). Voer "notepad C:\Windows\Result.dll" uit,3,True: Afsluiten Doen
Als c "" Dan
Als IsNumeriek(c) = Waar dan
If CInt(c) If CInt(c) > Number Then MsgBox "Nee, dit is niet " & c & ". Ik heb een getal minder geraden",64,"Raadspel"
Als CInt(c) = Getal Dan
Stel y = CreateObject("Scripting.FileSystemObject") in
MsgBox("Aantal pogingen: " & a)
If MsgBox ("Dat klopt, het was het nummer " & c & ". Moet ik opnieuw beginnen?",36,"Guessing Game") = 6 Dan afsluiten Do Else WScript.Quit
Einde Als
Anders
MsgBox "Dit is geen getal!",16,"Raadspel"
een = een - 1
Einde Als
Anders
een = een - 1
l = MsgBox ("Je hebt niets ingevoerd. Sluit het programma af?",36,"Raad")
Als l = 6 Dan WScript.Quit
Einde Als
Lus
lus

Laten we, voordat we verder gaan met de body-bestanden (.BAT), het nuttigste VBS-script gebruiken van alle scripts die in dit artikel worden vermeld.

Script afsluiten wscript.exe

Het script zelf:

Set TaskKill = CreateObject("WScript.Shell")
TaskKill.Run "TaskKill /f /im wscript.exe"

In wezen doet het hetzelfde als wat iets hoger werd uitgelegd in Taakbeheer, je kunt bijvoorbeeld niet zomaar het vervelende script dat de schijf opent en sluit, nemen en sluiten, maar door dit script uit te voeren, zullen alle actieve scripts dat doen. gesloten zijn. Het is alsof je een wig eruit slaat met een wig.

We hebben een beetje kennis gemaakt met VBS-scripts en hoe we ze in Kladblok kunnen schrijven. Laten we nu eens kijken naar verschillende voorbeelden van het gebruik van BAT-bestanden (hierna een batchbestand genoemd).

Een heel eenvoudig bodybestand dat uit slechts één regel bestaat.

  1. Open Kladblok.
  2. We schrijven de volgende code:

    afsluiten -s -t 1 -c -f

  3. Volgend bestand - Opslaan als - naam.bat
  4. Let op de bestandsextensie, dit is niet langer een VBS-script, maar een batchbestand, daarom schrijven we .bat aan het einde van de naam (bijvoorbeeld compoff.bat).
  5. We starten het nieuw gemaakte batchbestand door te dubbelklikken met de muis en de computer wordt uitgeschakeld (afsluiten).

Er is deze codeoptie:

afsluiten -r -t 1 -c -f

We schrijven alles op dezelfde manier in Kladblok, slaan het op met de .bat-extensie en na het opstarten zal de computer opnieuw opstarten (normale computer opnieuw opstarten).

Updates verwijderen

Dit batchbestand is handig als u al. Wat is het punt? Dit batchbestand bevat opdrachten voor het verwijderen van verschillende updates, zoals de naam al doet vermoeden - telemetrie-updates, of slechts één van de spyware-dingen van het systeem, we hebben ooit al gesproken over hoe je dit kunt uitschakelen, in dit geval maak je eenvoudig een batchbestand en kopieer je de code hieronder in de inhoud en voer uit, waarna de vermelde updates worden verwijderd.

@echo
echo
echo Stap 1: Updates Telemetrie verwijderen
wusa /uninstall /kb:3068708 /quiet /norestart
wusa /uninstall /kb:3022345 /quiet /norestart
wusa /uninstall /kb:3075249 /quiet /norestart
wusa /uninstall /kb:3080149 /quiet /norestart

Op deze manier kun je absoluut elke update verwijderen, zelfs de vervelende KB971033 die controleert.

Er zijn veel verschillende scripts op internet die zogenaamd onschadelijk zijn, maar wees voorzichtig voordat u een onbekend script probeert. Sommige kunnen schade aanrichten, bijvoorbeeld door wijzigingen in het register aan te brengen, en in geval van fouten zal het systeem fouten genereren , in welk geval u Windows moet gebruiken of een systeemherstel moet uitvoeren.

Hallo. Het is lang geleden dat we nog nuttige jQuery-dingen hebben gehad. Vandaag maken we een scroll-up-script met jQuery. Dit is op vrijwel elke website nodig, maar je wilt hier eigenlijk geen plug-in van derden voor gebruiken met een berg onnodige code.

Als het onderwerp van het maken van een website zelf niet erg interessant voor je is, dan is het maken van een kant-en-klare website door professionals een uitstekende oplossing.

Hoe maak je een scroll-up-script in jQuery

Laten we beginnen met iets eenvoudigs, HTML:

Dit is de code voor de knop zelf die aan de HTML moet worden toegevoegd.

Laten we verder gaan met de CSS, de stijl van de knop beschrijven, deze rechtsonder statisch maken, doorschijnend, met een schaduw, rond, zodat deze bij het zweven meer opvalt.

Zoals u kunt zien, hebben we het via CSS toegevoegd om het pijlsymbool niet aan de HTML toe te voegen en daardoor de lay-out te vereenvoudigen. Bovendien hebben we alles voor de knop in CSS beschreven: hij is rond met een schaduw, rechtsonder vast en valt beter op als hij erover zweeft.

We zijn klaar met CSS. Laten we nu naar jQuery kijken. We zijn van jQuery afhankelijk van 2 dingen:

  • bepalen of de knop “terug naar boven” moet worden weergegeven of niet (afhankelijk van de mate van scrollen op de pagina)
  • eigenlijk soepel scrollen van de pagina omhoog wanneer u op de knop drukt

Laten we dit doen:

Eerst wijzen we een gebeurtenishandler voor het scrollen van pagina's toe en controleren deze: als er meer op de pagina wordt gescrolld dan de schermgrootte, kunnen we de knop "terug naar boven" al weergeven, maar als er minder op de pagina wordt gescrolld, dan integendeel, wij verbergen het.

Vervolgens voegen we een klikgebeurtenishandler toe aan onze knop "terug naar boven". Daarin animeren we tegelijkertijd de eigenschap scrollTop van html en body (voor compatibiliteit tussen browsers).

Klaar, de knop omhoog werkt.

Het resultaat kun je hier zien:

In eerste instantie is de knop niet zichtbaar, u moet een beetje door het voorbeeldgebied scrollen (zodat de handler en het vinkje werken).

U kunt deze code veilig op uw website installeren en u zult aangenaam verrast zijn dat deze werkt en geen extra plug-ins of scripts vereist. Slechts een paar regels code in JS, CSS en slechts één regel in HTML (je kunt overigens ook zonder HTML en alleen JS gebruiken, en er een knop aan toevoegen nadat de pagina is geladen).

Hoe schrijf je scripts voor een besturingssysteem, websites of alleen games? Het antwoord hierop is, geloof me, een gemakkelijke vraag en zal in het kader van dit artikel worden besproken.

Algemene informatie

Het is zeer wenselijk om op zijn minst minimale kennis van programmeren te hebben. Maar als iets onbegrijpelijk lijkt, kunnen een of twee artikelen de leemte opvullen. Laten we eerst definiëren wat een script is. Dit is de naam voor een algoritme dat in bepaalde programmeertalen is geschreven en dat op de computer van een persoon wordt opgeslagen en kan communiceren met bepaalde bestanden, programma's zoals browsers en systeeminstellingen. Dit alles stelt u in staat de standaardmogelijkheden aanzienlijk aan te vullen en geautomatiseerde assistenten te creëren die een deel van het werk op zich zullen nemen.

Laten we gaan werken met browsers

Dit is misschien wel een van de gemakkelijkste activiteiten. Als we scripts in JavaScript schrijven, is een gewoon notitieblok en kennis van deze programmeertaal voldoende. Toegegeven, er zijn hier ook nadelen. Iedereen die hetzelfde Kladblok heeft, kan dus zien wat het script is. En als hij slechte bedoelingen heeft, en er zit een kwetsbaarheid in de code, dan kunnen er problemen ontstaan. Als antwoord op de vraag hoe je scripts in JavaScript kunt leren schrijven, moet worden opgemerkt dat het hiervoor voldoende is om deze programmeertaal te bestuderen. Om betere en complexere programma's te maken, kunt u verschillende bibliotheken gebruiken. Maar ze vereisen geschikte webbrowserextensies. En bij het wisselen van computerapparatuur zult u aanvullende instellingen moeten maken. En als u ontwikkelingen van derden gebruikt, moet u ervoor zorgen dat het script geen gebruikersgegevens naar services van derden verzendt. Opgemerkt moet worden dat elke browser zijn eigen specifieke beperkingen heeft. Maar over het algemeen kun je bijna alles met hun hulp doen. Waarom worden ze in dergelijke gevallen geschreven? Ze zijn nodig wanneer menselijke activiteiten moeten worden geautomatiseerd.

Wij werken met het Windows besturingssysteem

Laten we zeggen dat we de computerconfiguratie moeten wijzigen. Hiervoor is een breed scala aan grafische hulpmiddelen beschikbaar, maar helaas dekken ze niet alles. Daarom is het vaak nodig om systeemscripts te maken. Ze hebben de extensie .bat. Iedereen die al langere tijd achter een computer werkt, is dergelijke bestanden al tegengekomen. Maar hoe schrijf je scripts voor Windows? Hiervoor hebben we hetzelfde Kladblok nodig. Maak eerst een nieuw tekstbestand. Het is noodzakelijk om systeemopdrachten erin op te nemen. Hierna moet u de bestandsextensie wijzigen in .bat. En het enige dat overblijft is het lanceren van deze ontwikkeling. Als alles correct is, worden de opdrachten met succes uitgevoerd, zoals u kunt zien. Maar in het geval van fouten of het schrijven van ongeletterde code zal er in het beste geval niets gebeuren. Daarom is het beter om te begrijpen wat u opschrijft. Het zomaar ergens vandaan halen en gedachteloos invoegen is absoluut niet aan te raden! Dit kan tot aanzienlijke problemen met het besturingssysteem leiden. En je zult geluk hebben als dergelijke gevaarlijke acties worden uitgevoerd vanaf een gastaccount. Een opdracht van een beheerder kan een computer immers in een ‘steen’ veranderen.

Hoe zit het met Linux?

Houd er rekening mee dat Windows niet het enige besturingssysteem is. Er is ook Linux, dat behoorlijk populair is. Hoe schrijf ik scripts in dit besturingssysteem? Ze zijn gemaakt met behulp van een shell - een speciale opdrachtinterpreter, die de interface is tussen een persoon en de kernel van het besturingssysteem. In Linux zijn scripts in wezen slechts een bestand met systeemopdrachten. Het is eenvoudig en handig tegelijk. Maar de shell moet weten hoe zo'n bestand moet worden verwerkt. Standaard wordt er gewoon gelezen. En als u wilt uitvoeren, wordt de constructie "#!" gebruikt, die vóór de opdracht moet worden geplaatst. Alle scripts hebben de extensie .sh. Opgemerkt moet worden dat je met hun hulp heel wat complexe dingen kunt doen. Bijvoorbeeld het maken van back-ups van bestanden. Over het algemeen zijn er extreem veel gebruiksscenario's.

Scripts leren schrijven

We moeten dus eerst beslissen in welke omgeving we de code zullen typen. Bijna altijd is één Kladblok hiervoor voldoende. Maar het is niet erg handig om de structuur van structuren weer te geven; bovendien worden operators en andere elementen niet benadrukt. Daarom kan Notepad++ als waardig alternatief worden aangeboden. Voor degenen die Engels kennen, is het niet zo moeilijk om te vertalen dat dit ook een "Kladblok" is. Maar met uitgebreide mogelijkheden. Deze kleine maar erg leuke ontwikkeling is vooral gericht op programmeurs. Daarin kunt u de weergave-instelling inschakelen van vrijwel alles wat beschikbaar is. Er is een handig hulpmiddel voor het weergeven van codes en vele andere, zij het kleine, maar leuke kleine dingen die het schrijfproces comfortabeler zullen maken. Over het algemeen heeft de vraag "waar scripts te schrijven" veel verschillende antwoorden gekregen, die elk hun eigen draai geven. Er zijn ook zeer geavanceerde omgevingen, met emulators en veel foutopsporingstools. Kies wat je hartje begeert. Hierna moet je voor je kennis zorgen. Hulp bij de programmeertaal of besturingssysteemopdrachten is geschikt als basis. Voor een meer gevorderde studie kunt u verschillende boeken lezen waarin de kenmerken van machinelogica en codeverwerking worden uitgelegd.

Realtime trainingsdiensten

Als u geïnteresseerd bent in het leren schrijven van scripts, mag u de mogelijkheid om te leren met behulp van informatie-educatieve technologieën niet uitsluiten. Hoe ziet zo’n ‘programmeursmederij’ eruit? Volgens het programma, samengesteld volgens de mening van ervaren ontwikkelaars, wordt een beginner van de gemakkelijkste naar de moeilijkste momenten geleid. Zo kan het dynamisch bijwerken van gegevens in eerste instantie worden bestudeerd om vervolgens over te gaan tot het maken van socketservers. En de persoon ondergaat de training langzaam, stap voor stap, waarbij hij de maximale hoeveelheid gegevens absorbeert. Daarom kunt u, als er zich problemen voordoen, bij hen terecht voor hulp. Het is geen feit dat de eerste die je tegenkomt aan al je behoeften zal voldoen, maar dan zul je gewoon iets anders moeten proberen.

Waarom studeren?

Veel mensen zijn geïnteresseerd in het schrijven van scripts voor games. Nou, dit is niet erg moeilijk, maar het is niet het enige gebruik van een dergelijke functie. Maar laten we het spel als voorbeeld bekijken. Laten we zeggen dat iemand graag entertainment speelt op een bepaalde site. Maar helaas bepaalt het dat het nodig is om ofwel je geld te investeren, ofwel om bepaalde acties langdurig en eentonig uit te voeren. En als het tweede pad werd gekozen, dan zijn scripts precies wat hier nodig is. Dit kan ook worden gebruikt in stationaire spellen op een computer. Er zijn personages die worden bestuurd door kunstmatige intelligentie, en om ermee te vechten, kun je je eigen versie van de AI maken, waardoor een gevecht tussen de computer en zichzelf wordt geregeld (en voor een gemakkelijkere doorgang). Maar scripts kunnen niet alleen met succes in games worden gebruikt. Laten we zeggen dat er een website is van een serieus bedrijf. Een belangrijk aspect is maximale ondersteuning in de communicatie met klanten. En hiervoor wordt een klein formulier toegevoegd in de vorm van een script, waarmee u online deskundig advies kunt krijgen. Er zijn veel mogelijke toepassingen!

Conclusie

Helaas is het in het kader van dit artikel erg moeilijk om over te brengen hoe je scripts correct schrijft. Je kunt natuurlijk algemene zinnen gebruiken over hoe de code minder ruimte in beslag moet nemen, optimaal moet zijn en nog veel meer, maar je kunt dit pas echt in de praktijk begrijpen. Alleen ervaring en het zoeken naar optimale oplossingen kunnen immers helpen om programma’s zo uit te voeren dat ze met minimale inspanning hun “verantwoordelijkheden” vervullen. Bij programmeren in het algemeen, en niet alleen bij het schrijven van scripts, hangt veel af van de praktijk! Daarom moet je voortdurend leren, verbeteren en nadenken over hoe je de taak op de best mogelijke manier kunt implementeren.

Instructies

Afhankelijk van waar het script wordt uitgevoerd, worden scripts onderverdeeld in “client” en “server”. Wanneer we naar een bepaald adres op het netwerk gaan, sturen we de URL van de betreffende pagina naar de server, en deze voert het script uit dat zich op het opgegeven adres bevindt. Het script voert de acties uit die erin op de server zijn geprogrammeerd, stelt de pagina samen uit de benodigde blokken en stuurt deze naar de browser. Dit is een serverscript. Nadat we de pagina hebben ontvangen, geeft de browser van ons deze voor ons weer en als de ontvangen paginacode een soort script bevat, wordt dit script al uitgevoerd. Dit is een clientscript.
Om ervoor te zorgen dat een server of browser een script kan lezen, begrijpen en uitvoeren, moet het worden samengesteld en geschreven volgens de bij hen bekende regels. Dergelijke sets regels worden scriptprogrammeertalen genoemd. De meeste scripts aan de serverzijde zijn nu in PHP geschreven, en de meeste scripts aan de clientzijde zijn nu in JavaScript geschreven. Om een ​​script te schrijven, volstaat het om een ​​gewone teksteditor te hebben: kladblok. Maar voor het constant programmeren van scripts kun je niet zonder een gespecialiseerde editor. Zo'n editor neemt het leeuwendeel van het routinewerk van het schrijven van scripts op zich, waardoor de programmeur meer tijd overhoudt voor creativiteit.
Laten we een eenvoudig script schrijven in PHP op de server. De eerste regel moet de uitvoerder informeren dat het script vanaf dit punt begint. In PHP ziet deze openingstag er als volgt uit:Tussen deze twee tags staan ​​instructies: de taal. Druk bijvoorbeeld de inscriptie af die O. Bender op de rotsen van de Kaukasus als volgt heeft achtergelaten: echo ("Kisya en Osya waren hier"); En de instructie om de huidige tijd in het UUR:MINUTE-formaat weer te geven is als volgt geschreven: echodatum ("H:i"); Compleet Een PHP-script dat uit deze instructies bestaat, zou er als volgt uitzien:echodatum("H:i");
echo ("Kisya en Osya waren hier!");?>Na het uitvoeren van dit script zou het uitvoerende programma (taalinterpreter) er als volgt uitzien:

En hetzelfde script in client-JavaScript ziet er als volgt uit: var now = new date();
document.write("In");
document.write(now.getHours() + static: + now.getMinutes());
document.write ("Kisya en Osya waren hier!"); Hier geeft de regel var now = new date() de scriptuitvoerder de opdracht om een ​​nieuw object te maken met de naam "now", dat de huidige datum en tijd vertegenwoordigt. document.write() is om te schrijven wat tussen haakjes op de pagina staat, en de opdrachten now.getHours() en now.getMinutes() vereisen het extraheren van het huidige uur en de huidige minuut uit het object "now".
Voor meer duidelijkheid hoeft u alleen nog maar deze twee scripts in één bestand te combineren, het op de server op te slaan en de URL in de adresbalk van de browser te typen. Als gevolg hiervan zullen we identieke regels zien, waarvan er één is uitgevoerd volgens ons script op de server (door de PHP-interpreter) en de andere op onze computer (door de JavaScript-interpreter).

Video over het onderwerp

Bronnen:

  • Scripts voor een HTML-website - waar u ze kunt verkrijgen en hoe u ze kunt installeren

Bij internetprogrammering is er altijd behoefte aan het aantrekken van een soort virtuele uitvoerder om de acties uit te voeren die nodig zijn voor de programmeur in de browser of op de server. Acties kunnen bijvoorbeeld visuele effecten zijn of het verwerken van bezoekersinvoer in de browser. Of het samenstellen van de opgevraagde pagina uit losse blokken op de server. De virtuele uitvoerder van deze acties zal de server- of browsersoftware zijn, en het script voor de uitvoerder zal in een van de volgende moeten worden geschreven: gescript programmeertalen. Om een ​​algemeen idee te krijgen van hoe scripts worden gemaakt, gaan we een eenvoudig script in JavaScript schrijven.

Instructies

Het JavaScript-script draait er direct in, dus alles wat je nodig hebt om te schrijven en uit te voeren is er al. Als werkinstrument voor programmeurs zullen we een gewone teksteditor gebruiken - standaard Kladblok. Dit is voldoende om een ​​eenvoudig script te maken, maar voor een permanent script is het natuurlijk beter om een ​​gespecialiseerde editor te gebruiken. Eerste stap: maak een nieuw document om instructies naar de browser te schrijven.

Nu kunt u beginnen met het coderen van de instructies. De browser begrijpt meer dan één taal. HTML (HyperText Markup Language) wordt bijvoorbeeld gebruikt om een ​​pagina te markeren, en CSS (Cascading Style Sheets) wordt gebruikt om een ​​uitgebreide beschrijving te geven van het uiterlijk van pagina-elementen. Om de scriptrunner te laten weten dat dit deel van de broncode van de pagina in JavaScript is geschreven, moeten alle instructies binnen de openings- en sluitingstags worden geplaatst: Instructies door taaloperatoren. Het lezen en onthouden van de huidige datum en tijd voor later gebruik in een script ziet er bijvoorbeeld als volgt uit: var aTime = new Date(); Nu bevat het aTime-object datum- en tijdgegevens en, indien nodig, kunnen deze worden opgehaald en verwerkt. Een andere instructie - om een ​​bericht in de hoofdtekst van de pagina af te drukken - ziet er als volgt uit: document.write("een bericht"); Let op: hier wordt een object met de naam "document" gespecificeerd, dit hoeft niet te worden gemaakt gebeurt automatisch. Het is een virtuele afbeelding van de huidige pagina. Uit dit object kunt u informatie over de pagina extraheren en er verschillende transformaties mee uitvoeren. In deze regel code heeft u bijvoorbeeld de tekst 'een bericht' in een document geschreven met behulp van de write-operator. Gebruik nu beide regels in de script - schrijf de huidige tijd op de pagina :document.write("Huidige tijd " + aTime.getHours() + " + aTime.getMinutes()); Hier heeft u met een eenvoudige optelbewerking (+) de vier componenten van de afgedrukte string. In zijn uiteindelijke vorm ziet uw eenvoudige script er als volgt uit:

Schrijf of selecteer een nuttige website script- dit is het halve werk, we moeten nog steeds een manier vinden om dit te bereiken. Laten we eens nader bekijken wat er nodig is om de meest voorkomende typen uit te voeren script ov.

Instructies

Een voorwaarde om aan welke voorwaarde dan ook te voldoen script en (dat wil zeggen het script) is uiteraard de aanwezigheid van de uitvoerder zelf. Bij programmeertalen zal een dergelijke uitvoerder de tolk zijn script nieuwe taal. Afhankelijk van waar het script moet worden uitgevoerd, kan de taalvertaler deel uitmaken van de serversoftware of deel uitmaken van de browsercode. Daarom is het mogelijk om elke server uit te voeren script(bijvoorbeeld php- of perl- script) moet u een actieve server hebben. U kunt een server op het netwerk of thuis selecteren. Het is bijvoorbeeld erg populair onder Russischsprekende programmeurs vanwege de relatieve eenvoud en de gratis serversoftware genaamd "Denver". Of u kunt zich niet druk maken over de installatie thuis, maar gebruik maken van de diensten van een hostingprovider. De aanbieder geeft u toegang en u heeft geen zorgen over het onderhoud en de service. Meestal zijn deze wel betaald, maar niet duur.

De situatie is hetzelfde met “cliënt” script vriend. Dit zijn de scripts die rechtstreeks moeten worden uitgevoerd. Om dit te doen script, bijvoorbeeld geschreven in JavaScript, is niets anders nodig dan een browser en een eenvoudige teksteditor (een standaard notitieblok is voldoende). Hier is bijvoorbeeld de eenvoudigste script: var nu = nieuwe datum();
document.write("Dit script uitgevoerd in " + now.getHours() + " hours " + now.getMinutes() + " minutes"); Om het uit te voeren, slaat u deze code gewoon op in een bestand met een HTML-extensie (bijvoorbeeld test.html) en vervolgens dubbelklik erop met de muis. De html-extensie (HyperText Markup Language) in het besturingssysteem is gereserveerd voor bestanden die webpagina's bevatten. Daarom start het besturingssysteem uw browser en geeft het het adres van dit bestand door, en de browser zal het herkennen. script, zal zijn script lezen en uitvoeren. Als gevolg hiervan zullen we hetzelfde eenvoudige zien als script het bevat:

Video over het onderwerp

Je schreef shell- script, maar weet niet hoe ik het moet uitvoeren. Veel beginnende Linux-gebruikers worden met dit probleem geconfronteerd. Om te script lanceerbaar is geworden, moet het op een speciale manier worden voorbereid. Dit kan op verschillende manieren.

Instructies

De gemakkelijkste manier script s uitvoerbaar en voer ze uit met het Midnight Commander-programma. De meeste Linux-distributies hebben het al. Het ontbreekt echter meestal in ALT Linux en Ubuntu, in welk geval het moet worden geïnstalleerd door de volgende opdracht uit te voeren: Om dit programma in ALT Linux te installeren, moet u het downloaden als een RPM-bestand en vervolgens installeren. Navigeer naar de map waar het bestand zich bevindt met behulp van de opdracht cd, gevolgd door het volledige pad naar die map. Voer vervolgens de volgende opdracht uit: rpm -i ./bestandsnaam.rpm
waarbij bestandsnaam.rpm het bestand is dat u hebt gedownload. In Ubuntu is het download- en installatieproces geautomatiseerd. Om het uit te voeren, hoeft u alleen maar het volgende te gebruiken: sudo apt-get install mc Voer alle bovenstaande opdrachten uit vanuit de rootmodus. Ubuntu heeft zo'n modus niet, daarom wordt de opdracht sudo vóór apt-get gebruikt. Zodra Midnight Commander is geïnstalleerd, kan elke gebruiker het starten met de volgende opdracht: mc

Als Midnight Commander niet wordt gebruikt, wijzig dan de bestandsrechten vanuit shell- script om zodat het kan worden uitgevoerd, kunt u het volgende commando gebruiken: chmod 755 bestandsnaam
waarbij bestandsnaam de naam is van uw bestand script om.Probeer het nu uit te voeren: ./filename

Als u Midnight Commander liever gebruikt, wijzigt u de machtigingen in script y als volgt. Start dit programma, ga naar de map met het bestand dat u hebt gemaakt, verplaats de aanwijzer ernaartoe en zoek vervolgens in het menu "Bestand" het item "Machtigingen". Vink de selectievakjes aan voor 'Starten/zoeken naar eigenaar', 'Starten/zoeken naar groep' en 'Starten/zoeken naar anderen' (sommige hiervan hoeft u mogelijk niet aan te vinken als u het starten niet wilt toestaan script andere gebruikers). Sla de instellingen op met de knop “Installeren” Nu wordt de bestandsnaam in de lijst groen en verschijnt er links ervan een sterretje. Door de aanwijzer ernaartoe te verplaatsen en op de "Enter"-toets te drukken, kunt u het bestand uitvoeren.

Om iets te laten werken script, het moet op de een of andere manier worden aangeroepen (geactiveerd). Er zijn verschillende manieren om dit te doen. Omdat een dergelijk probleem zich meestal voordoet in verband met script die we gebruikten bij het werken met hypertekstpagina's, dat wil zeggen dat het zinvol is om allereerst de activeringsmethoden te overwegen script ov in de meest populaire talen op dit gebied - JavaScript, PHP, Perl.

Instructies

Als script geschreven in een "client" -taal, vereist de uitvoering ervan in de regel geen installatie en uitvoering van speciale software. JavaScript-scriptbestanden worden bijvoorbeeld gedownload en opgeslagen op de computer van de gebruiker, samen met de pagina waarin ze zijn ingesloten. Om dergelijke te bellen (activeren). script Zoek het bestand en dubbelklik erop. Er moet echter aan worden herinnerd dat in script Er zijn geen geprogrammeerde oproepen naar de elementen van de pagina waarin deze is ingebed. Als u een dergelijk script afzonderlijk van de pagina activeert, ziet u mogelijk helemaal geen tekenen van de werking ervan - het is beter om dit te doen door de "native" pagina in de browser te laden script A.

Als u de client activeert script is vereist nadat de pagina in de browser van de gebruiker is geladen, dan kan de oproep ervan aan een gebeurtenis worden gekoppeld: het indrukken van een knop die in de pagina is ingebouwd, het bewegen van de cursor over een element, het verstrijken van de timer die is gestart tijdens het laden, enz. Om dit te doen , gebruik dan de attributen die overeenkomen met de gebeurtenis. Plaats een link naar script toe aan het onClick-attribuut, zodat het wordt geactiveerd wanneer er met de muis wordt geklikt. Gebruik het onFocus-attribuut als u wilt dat JavaScript wordt geactiveerd wanneer de gebruiker een veld in een tekstinvoerelement begint in te vullen. De onKeyDown- en onKeyUp-gebeurtenissen helpen bij de programma-activatie script en wanneer u een toets indrukt en loslaat, onMouseOver - wanneer u de muisaanwijzer beweegt, onMouseOut - omgekeerd, wanneer u de cursor verplaatst, enz.

Als u de server moet activeren script(bijvoorbeeld in php of perl), doe dit dan door de URL ervan in de adresbalk te typen. Je kunt een dergelijke overgang op de gebruikelijke manier (met een link) in de broncode van de pagina programmeren, of door deze, zoals in de vorige stap, aan een bepaalde gebeurtenis te koppelen. Server script het zal niet mogelijk zijn om het te starten als je het simpelweg downloadt en erop dubbelklikt - dergelijke scenario's worden verwerkt met behulp van speciale software. Om het op uw pc te activeren, moet u daarom de juiste set programma's installeren en uitvoeren - de Denver-kit (http://denwer.ru) kan dit bijvoorbeeld aan.

Video over het onderwerp

Voeg de codelink naar het pop-upvenster in de hoofdtekst van de pagina in en beschrijf het script voor het openen van het pop-upvenster. Beschrijf een functie om een ​​venster aan te roepen met behulp van de standaard show(), TransferTo(), bind() en andere opdrachten. Probeer naast elke functie een korte beschrijving voor jezelf te schrijven, om niet in de war te raken in de code, omdat je de werking van het hele systeem volledig kunt verstoren.

Controleer de code op fouten en open de pagina in uw browser om het resultaat van uw werk te zien. Om een ​​pop-upvenster te openen, klikt u op de gemaakte link. In de toekomst kunt u ervoor zorgen dat er automatisch een pop-upvenster verschijnt. De pop-up moet ook verschillende kenmerken hebben, zoals de mogelijkheid om te worden gesleept, samengevouwen, uitgerekt en natuurlijk gesloten. Al deze kenmerken moeten worden beschreven in het pop-upvensterscript. Zwevende vensters maken is niet moeilijk, het belangrijkste is om de basisprincipes van programmeren te kennen, omdat je speciale kennis nodig hebt om de code correct te schrijven.

JavaScript is een speciale prototype-georiënteerde programmeertaal. Het kan worden ingebed in de html-code van webpagina's, waardoor de functionaliteit van de site wordt vergroot. Met Script kunnen ontwikkelaars van verschillende browsers pagina's interactief maken, dus deze handige en functionele taal wordt elke dag steeds populairder.

Java-script wordt beschouwd als een van de gemakkelijkste programmeertalen, grotendeels vanwege de gelijkenis met Java, dat het eerste deel van de naam bepaalde. De architectuur van deze programmataal heeft een aantal kenmerken, die in de eerste plaats te danken zijn aan de gelijkenis met andere talen, en ten tweede aan het gebruik ervan in de praktijk. Het is onmogelijk om de eigenschap van het geheugen, dat automatisch kan worden beheerd, niet op te merken, evenals het dynamische typen op type, prototypische programmering en de aanwezigheid van functies die als eersteklas objecten worden beschouwd.

Wat JavaScript toestaat

Met Java-script kunt u prachtige interactieve pagina's maken, wat onmogelijk is in pure html-taal. In de regel wordt de uitvoering van scripts voorafgegaan door een gebruikersactie: klikken, zweven, enz. De uitvoering van deze taal begint wanneer de webpagina wordt geladen. U kunt een Java-script schrijven met elke teksteditor. U kunt wat u hebt geschreven bekijken in een browser die scripts kan verwerken. We hebben het over Netscape Navigator (vanaf versie 2) en Microsoft Internet Explorer (vanaf versie 3).

Omdat beide browsers wijdverspreid zijn geworden, zijn bijna alle gebruikers met deze programmeertaal gaan werken, waardoor het uiterlijk van webpagina's en hun functionaliteit zijn verbeterd. Overigens kunnen scripts in browsers anders worden weergegeven. Opera kan de meeste Java-scripts die kunnen worden gedownload niet ondersteunen.

Hoe u voltooide code in een afzonderlijk bestand kunt plaatsen

U moet in een willekeurige teksteditor een pagina maken en deze opslaan. Download vervolgens de voltooide Java-scriptcode en plaats deze op deze pagina. Bewaar in dezelfde map als .html. Nu moet u ervoor zorgen dat JavaScript is aangesloten. Om dit te doen, moet u een overeenkomstige invoer in het HTML-bestand maken.

Scripts geschreven in deze scripttaal? kan op de html-pagina zelf tussen tags met dezelfde naam worden geplaatst. Tegu