
Funktionsblokken FS_SHELL udfører et eller flere fjernkommander i en interaktiv shell.
Advarsel: Systemkommander kan true det fjernede system eller beskadige det. Derudover kan eksisterende filer overskrives uden en advarsel.
Filssystemet skal først initialiseres ved hjælp af FS_INIT. Alle operationer udføres asynkront pr. oprettet lagringsmedium.
Når en positiv flanke forekommer, udføres det angivne kommando.
Definerer enheden, hvorfra der skal tilgås filer. Enheden bruges pr. projekt og kan administreres i kontekstmenuen under Projekt Ekstern lagring.
Angiver stien til mappen på lagringsmediet. Stien svarer til en Unix-filsti i UTF-8-format, hvis dette understøttes. Stien vises som følger:
Mappe/Undermappe
Brug af en sti er valgfri. Hvis den er angivet, skal skiftet til denne mappe være vellykket, ellers udføres den kommando, der skal udføres, ikke.
Definerer alle kommandoer, der skal udføres. Alle kommandoer skal afsluttes med et linjeskift. For eksempel: "ls\n". Hvis der ikke bruges et linjeskift, vil kommanden sandsynligvis ikke udføres. Kommandoerne udføres linje for linje efter tilbagemelding fra serveren.
Efter udførelsen af alle kommandoer skal en "exit\n" sendes til slutningen for at afslutte forbindelsen øjeblikkeligt og returnere værdierne. Derefter bør der ikke sendes flere kommandoer, ellers sættes udgangen ERROR til TRUE.
Note: Hvis forbindelsen afsluttes uventet og en kommando ikke sendes, sættes udgangen ERROR til TRUE.
Definerer typen af konsol (Pseudo-Terminal). For nogle enheder er denne parameter obligatorisk. Eksempler: "vanilla", "exec", "vt100", "vt102", "ansi", "xterm" osv. Hvis ingen værdi er defineret, bruges "vanilla".
Værdien "exec" udfører anmodningen via SSH-kommandoen fra styresystemet. Dermed bruges mere moderne metoder. Denne metode er dog lidt mindre effektiv. Indgangen ENV sættes før forbindelsen, hvorfor den muligvis ignoreres. Indgangen SIZE ignoreres ved denne metode.
Hvis der skal overføres yderligere SSH-parametre, kan de tilføjes i en ny linje efter "exec". Parametrene er store og små bogstaver, og angives som i følgende eksempel. Dette eksempel aktiverer RSA-algoritmen for ældre enheder.
exec
HostKeyAlgorithms=+ssh-rsa
PubkeyAcceptedAlgorithms=+ssh-rsa
Følgende parametre er tilgængelige:
| SSH-parametre for exec | Eksempelværdi |
|---|---|
| KexAlgorithms | +diffie-hellman-group1-sha1 |
| Ciphers | +aes128-cbc |
| HostKeyAlgorithms | +ssh-rsa |
| PubkeyAcceptedAlgorithms | +ssh-rsa |
| ConnectTimeout | 10 |
| ServerAliveInterval | 30 |
| ServerAliveCountMax | 3 |
Note: For yderligere oplysninger, se den eksterne dokumentation: https://linux.die.net/man/5/ssh_config (Engelsk)
Definerer de aktive miljøvariabler. For at angive flere variabler kan der defineres en pr. linje. Eksempel:
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
Definerer størrelsen på terminalen. Standardmæssigt angives denne i tegn, men kan også defineres i pixels. For eksempel: "80x25" eller "640x480px". Hvis ingen værdi er defineret, bruges "80x25".
Definerer en tidsgrænse for modtagelse af data pr. kommando i formatet T#. Hvis der ikke er defineret nogen tidsgrænse, bruges T#150ms. Hvis denne værdi ikke er høj nok, vil flere kommandoer sandsynligvis blive udført under dataudgangen.
Sætter en tidsgrænse i formatet T# til udførelse af alle kommandoer. Når dette er nået, afsluttes forbindelsen og værdien returneres. ERROR sættes til TRUE. Tidsgrænsen vurderes efter oprettelse af forbindelsen og godkendelsen. Hvis indgangen PTY er sat til "exec", vurderes udførelsestiden for hele perioden. Hvis der ikke er defineret nogen tidsgrænse, bruges T#300s.
Udgangen returnerer en impuls ved succes for at fortsætte med den næste operation. Impulsen opstår, når processen afsluttes, også hvis der er opstået en fejl.
Returnerer kommandoudgangen ved vellykket udførelse. Værdien gemmes til senere brug.
Note: Bemærk, at konsollen formaterer outputtet. Derfor kan der også være kontroltegn eller binære data med.
Returnerer kommandoudgangen ved fejlagtig udførelse. Ved SSH kaldes det også STDERR. Værdien gemmes til senere brug.
Note: Bemærk, at konsollen formaterer outputtet. Derfor kan der også være kontroltegn eller binære data med.
Returnerer en tekst med en fejlmeddelelse i tilfælde af fejl. Denne er FALSE, hvis der ikke er opstået nogen fejl. Tilstanden gemmes til senere brug.
Mulige årsager: