Python variable ändern (erhöhen oder verringern)?

Ich bin ein absoluter Anfänger was programmieren angeht, lerne aber immer mehr und mehr dazu. Ich möchte für etwas ein Python Script erstellen, was auf meinem Pi die ganze Zeit läuft und die MQTT Nachrichten mitliest, um diese auszuführen und/oder eine Nachricht zurück zu senden.

Ich habe versucht eine Nachricht zu senden der den wert der Variable um 1 erhöhen soll und damit auch die While schleife aktivieren soll. Jedoch funktioniert es nicht, da die variable nicht in "def on_message" verfügbar ist und es die Erhöhung quasi nicht nach außen austrägt.

Was gibt es für Möglichkeiten die variable zu erhöhen, sodass sich die while schleife aktiviert? Und gibt es auch andere Ansätze wie man eine diese Schleife machen kann?

Script:

import paho.mqtt.client as mqtt
import os
import subprocess
import time
import smbus2
import bme280

#Bme280_basic Temperature
# BME280 sensor address (default address)
address = 0x76
# Initialize I2C bus
bus = smbus2.SMBus(1)
# Load calibration parameters
calibration_params = bme280.load_calibration_params(bus, address)
# to activate loop
y = int(1)
#Temperature loop
while y == 2:
      data = bme280.sample(bus, address, calibration_params)

      # Extract temperature, pressure, and humidity
      temperature_celsius = data.temperature      
      # Print the readings
      print("Temperature: {:.2f} °C".format(temperature_celsius))
      # Wait for a few seconds before the next reading
      time.sleep(2)
      #print(y)
else:
      print("stopped") 
    
#Connection successfull
def on_connect(client, userdata, flags, rc):
  print("Connected to MQTT broker")


#Checking for messages to execute code
def on_message(client, userdata, msg):
    print(msg.topic+" "+str(msg.qos)+" "+str(msg.payload))
    if msg.payload.decode() == "temp_bme280_start":
        print("Calling script to for temperature start...")
        # activate loop by adding 1
        y += 1   
        print(y)
    if msg.payload.decode() == "temp_bme280_stop":
        print("Calling script to for temperature stop...")
        # deactivate loop by remove 1
        y -= 1  
        print(y)  

def on_subscribe(client, userdata, mid, granted_qos):
    print("Subscribed to topic : " + str(mid) +" with QoS" + str(granted_qos))

client = mqtt.Client()

client.username_pw_set( "userxxx" , "passwortxxx" )

client.connect( "192.16x.xxx.xxx", 1883, 60)

client.subscribe( "frame/monitor" , qos=1)

client.on_connect = on_connect

client.on_message = on_message

client.loop_forever()

Würde Chat GPT sowas lösen können?

Code, Programmiersprache, Python, Script, Python 3, Raspberry Pi, while-Schleife, ChatGPT
FritzBox DECT-SmartHome per Bash-Script - Unerwartetes Dateiende?

Moinsen, kann mir evtl jemand sagen, warum ich den Fehler: "Unerwartetes Dateiende" bekomme, wenn ich das Script von dieser Seite ausführe?

smart_fritz_terminal.sh

Sehe da keinen Fehler. Bin aber auch kein Bash-Skript Profi.
Weiß nicht immer genau was wo zu beachten ist.
Hoffe mir kann jemand helfen den Fehler zu finden.

Falls der Link nicht geht oder sich die Datei irgendwie ändern sollte, hier nochmal zusätzlich der Quelltext direkt.

#!/bin/bash
# Die Adresse der Fritzbox
# Beispiele:
# fbox="https://192.168.178.1:444" # SSL-Verschlüsselt, Port 444
# fbox="http://192.168.178.1" # http normal, Port 80
# fbox="abcdef28kk6oabcdef.myfritz.net:444" # myfritz-Adresse, SSL, Port 444
# fbox="https://[2001:a00:12b7:c300:a00:a000:feed:921c]:444" # IPv6-Adresse, SSL, Port 444

#################
# Konfiguration #
fbox="http://192....." # Bitte Adresse eintragen
# Bei https, Ausnahme für selbst signiertes Zertifikat, sonst leer lassen
INSECURE= 
#INSECURE="--insecure" 

# Vollständige Anzeige: full, leer lassen für schnellere Ergebnisse
VIEW="full"
# das bei der Fritzbox konfigurierte Passwort
# unter System->FRITZ!Box-Benutzer->Anmeldung im Heimnetz
# Ist die Option "Anmeldung mit dem FRITZ!Box-Kennwort" aktiv
# genügt das Passwort für die Anmeldung

PASSWD="geheim"
# Der Benutzernamen für die Fritzbox
# Dieser lässt sich unter "System -> FRITZ!Box-Benutzer" erstellen.
# Dann kann man die Option
# "Anmeldung mit FRITZ!Box-Benutzernamen und Kennwort" aktivieren

USER="MeinName" 
#################
if [ "$fbox" = "" ]; then
if [ "$fbox" = "" ]; then
echo Bitte Fritzbox Adresse im Script eintragen
exit 1
fi

RED='\033[0;31m'
GREEN='\033[0;32m'
CYAN='\033[0;36m' 
YELLOW='\033[0;33m'
NC='\033[0m'
CURL=$(which curl) 
MD5SUM=$(which md5sum)
ICONV=$(which iconv)
AWK=$(which awk)

# Die SmartHome-Seite der Fritzbox
CURLCMD="$CURL $INSECURE -s $fbox/webservices/homeautoswitch.lua"

# Funktion zum Ermitteln der SID / Anmeldung bei der Fritzbox
get_sid() {
SID=$($CURL $INSECURE -s $fbox/login_sid.lua | sed 's/.*<SID>\(.*\)<\/SID>.*/\1/')
if [ "$SID" = "0000000000000000" ]; then
challenge=$($CURL $INSECURE -s $fbox/login_sid.lua |  grep -o "<Challenge>[a-z0-9]\{8\}" | cut -d'>' -f 2)
echo challenge: $challenge
CPSTR="$challenge-$PASSWD"
hash=`echo -n $CPSTR | $ICONV -f ISO8859-1 -t UTF-16LE | $MD5SUM -b | $AWK '{print substr($0,1,32)}'`
echo MD5: $hash
RESPONSE="$challenge-$hash"
POSTDATA="?username=$USER&response=$RESPONSE"
SID=$($CURL $INSECURE --data "$POSTDATA" -s $fbox/login_sid.lua | sed 's/.*<SID>\(.*\)<\/SID>.*/\1/')
fi
echo SID: $SID
}

# Funktion zum Ermitteln von Werten
get_value() {
RESULT=""
if [ "$2" = "" ]; then
RESULT=$($CURLCMD"?sid=$SID&switchcmd=$1")
else
RESULT=$($CURLCMD"?sid=$SID&ain=$2&switchcmd=$1")
fi
}

get_sid # SID holen
if [ "$SID" = "0000000000000000" ]; then
echo -e  "${RED}Anmeldung fehlgeschlagen ${NC}"
exit 1
fi
if [ "$SID" = "" ]; then
echo -e  "${RED}Anmeldung fehlgeschlagen ${NC}"
exit 1
fi

echo -e  "${GREEN}Anmeldung erfolgreich ${NC}"
echo

# Liste der Schalter ermitteln
get_value getswitchlist
COUNTER=0
IFS=', ' read -r -a array <<< "$RESULT"

# Werte der Schalter holen
for AIN in "${array[@]}"
do
let COUNTER=COUNTER+1 
echo -e  "${YELLOW}Actor #$COUNTER ${NC}"
switchpresent=0
get_value getswitchname $AIN
echo -e  "${CYAN}Name: $RESULT ${NC}"
get_value getswitchpresent $AIN
echo AIN: $AIN
echo Connected: $RESULT
if [ "$RESULT" = "1" ]; then
# bei aktiven Schaltern 
# Parameter verarbeiten, etwa: 1 on
if [ "$1" = "$COUNTER" ]; then
  if [ "$2" = "on" ]; then
    get_value setswitchon $AIN
	echo "set #$COUNTER on"
  fi	
    if [ "$2" = "off" ]; then
      get_value setswitchoff $AIN
	  echo "set #$COUNTER off"
    fi	
    if [ "$2" = "toggle" ]; then
      get_value setswitchtoggle $AIN
	  echo "set #$COUNTER toggle"
    fi	
fi
  
  # Alle Werte ermitteln/ausgeben (langsamer)
  if [ "$VIEW" = "full" ]; then
   get_value getswitchstate $AIN
   echo State: $RESULT
   get_value getswitchpower $AIN
   switchpower=`awk "BEGIN {printf \"%.2f\n\", $RESULT/1000}"`
   echo Power: $switchpower W
   get_value getswitchenergy $AIN
   echo Energy: $RESULT Wh
   get_value gettemperature $AIN
   temperature=`awk "BEGIN {printf \"%.1f\n\", $RESULT/10}"`
   echo Temperature: $temperature °C
   echo
  fi 
fi

done
exit 0
  
Bash, DECT, FRITZ!Box, lua, Script, Shell, Terminal, sh, Smart Home
Ubuntu /etc/bin/bluetooth/main.conf Standard inhalt zurück bekommen?

Hab bisschen mist gebaut denke ich und bräuchte die Standart werte von Ubuntu 23.04 von einer Guten Quelle oder direkt von dem Source Code, leider nicht auf Github gefunden.

Wollte eigentlich nur meine Air Pods Pro 2 Fixen da immer nur einer gleichzeitig Musik abspielen konnte.
Der andere war wahrscheinlich als ein Mikrofon eingestellt da auch unter Klang und Eingang Air Pods eingestellt war uwas ich nicht will das das System überhaupt ein Mikro benutzt. Aber man muss eins wählen in diesem Options ding.

Und ja hab schon versucht von ControllerMode = bredr auf dual zu wechseln, deswegen geht es überhaupt erst auf einem ohr aber nicht auf beiden.
Ich muss auch bei jedem neustart des Pcs oder nach einer weile die Air Pods wieder erneut trennen und verbinden über bluetooth.
Das läuft dann jeden tag so ab : komplett entfernen, Case öffnen mit beiden air pods drinne.
taste auf der rückseite gedrückt halten bis es einen sound macht und weiss leuchtet.
auf verbinden klicken sobald es ubuntu erkennt und warten.
dann nehme ich erstmal einen kopfhörer raus und gucke ob sound kommt, es kommt keiner dann nehme ich den zweiten aus der case raus und da spielt sich dann musik ab.

das ist alles unmöglich zu benutzen und andere Kopfhörer hab ich leider zurzeit nicht. Meine overear mit aux sind kaputt gegangen und ich will auch keine Overear mehr weil ich dadurch haarausfall erleide, mit in ears hab ich keine Probleme.

PC, Server, Apple, Computer, Windows, Betriebssystem, Technik, Bluetooth, Linux, IT, Programmierer, Ubuntu, Bash, developer, Fachinformatiker, Informatik, Informatiker, IT-Sicherheit, Linux Mint, macOS, netzwerkadministrator, Netzwerktechnik, Open Source, openSUSE, OS, Programmiersprache, Script, Shell, Treiber, Unix, Arch Linux, Konfiguration, Systemwiederherstellung, Texteditor, Bluetooth-Kopfhörer, Dateisystem, Debian, PowerShell, Windows 10, github, Manjaro, Windows 11, AirPods, Air Pods Pro
powershell script für vergleicher zweier Excel-dateien?

Hi Leutz,

ich brauche hilfe bei einem Powershell-Script das mir 2 riesige(20+ Mappen in den Dateien) Exceldateien inhaltlich vergleicht und mir dann möglichst die nicht übereinstimmenden Zellen(mit jeweiliger Arbeitsmappe) ausgibt und das am besten in eine separate Excel/CSV-Datei schreibt, damit ich schauen kann welcher der Einträge aktueller ist.

bisher sieht mein script so aus:

# Pfade zu den zu vergleichenden Dateien definieren

$PfadDatei1 = "X:\xyz\IP-Adressen.xlsx"

$PfadDatei2 = "X:\xyz\IP-Adressen2.xlsx"

# Excelldateien in Powershellobjekte laden

$ExcelInhalt1 = get-content -Path $PfadDatei1

$ExcelInhalt2 = get-content -Path $PfadDatei2

# Vergleichen der Excell-Inhalte

$Unterschiede = Compare-Object -ReferenceObject $PfadDatei1 -DifferenceObject $PfadDatei2

# Prüfen ob Unterschiede gefunden wurden und Ausgabe derer

if ($Unterschiede.count -eq 0)

{

   Write-Host "Keine Unterschiede gefunden"

}

else

{

   Write-Host "Unterschiede gefunden"

   $Unterschiede | Export-Csv -Path "X:\xyz\Documents\Ergebnis.csv" -NoTypeInformation -Force

}

Das Script vergleicht die Dateien zwar, gibt mir aber total kryptische Ergebnisse aus. Also als würde ich ne C++ Datei verschlüsselt im Editor öffnen

Hat jemand ne Idee was ich da ändern muss damit der mir das so ausgibt, dass ich am besten den Namen der Arbeitsmappe und die Zelle ausgegeben bekomme?

danke schon mal

Microsoft Excel, programmieren, Script, PowerShell, Office 365
Arduino und ESP8266 Fehler?

Hi, ich habe den Wifichip an den Arduino angeschlossen, wie hier:

Ich habe die Bibliotheken importiert und als Board auch bei Tools > Board > ESP8266 > Arduino gewählt. Wenn ich aber diesen Code hochlade :

#include <Adafruit_NeoPixel.h>
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>


#define NUM_STRIPS 5
#define LED_PER_STRIP 60


const char* ssid = "#######";
const char* password = "########";


Adafruit_NeoPixel strips[NUM_STRIPS];
ESP8266WebServer server(80);


void setup() {
  Serial.begin(115200);


  // WLAN-Verbindung herstellen
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Verbindung zum WLAN herstellen...");
  }
  Serial.println("Verbunden mit WLAN");


  // Lichtstreifen initialisieren
  int stripPins[NUM_STRIPS] = {2, 3, 4, 5, 6}; // An Ihre Verkabelung anpassen



  for (int i = 0; i < NUM_STRIPS; i++) {
    strips[i] = Adafruit_NeoPixel(LED_PER_STRIP, stripPins[i]);
    strips[i].begin();
    strips[i].show();
  }


  // Webserver-Routen festlegen
  server.on("/", HTTP_GET, handleRoot);
  server.on("/led/on", HTTP_GET, handleLedOn);
  server.on("/led/off", HTTP_GET, handleLedOff);
  server.on("/led/color", HTTP_GET, handleLedColor);
  server.on("/led/brightness", HTTP_GET, handleLedBrightness);


  server.begin();
  Serial.println("Webserver gestartet");
}


void loop() {
  server.handleClient();
}


void handleRoot() {
  server.send(200, "text/html", "Willkommen bei der Lichtstreifen-Steuerung");
}


void handleLedOn() {
  int stripIndex = server.arg("strip").toInt();
  if (stripIndex >= 0 && stripIndex < NUM_STRIPS) {
    strips[stripIndex].fill(strips[stripIndex].Color(255, 255, 255));
    strips[stripIndex].show();
    server.send(200, "text/plain", "Lichtstreifen eingeschaltet");
  } else {
    server.send(400, "text/plain", "Ungültiger Streifenindex");
  }
}


void handleLedOff() {
  int stripIndex = server.arg("strip").toInt();
  if (stripIndex >= 0 && stripIndex < NUM_STRIPS) {
    strips[stripIndex].clear();
    strips[stripIndex].show();
    server.send(200, "text/plain", "Lichtstreifen ausgeschaltet");
  } else {
    server.send(400, "text/plain", "Ungültiger Streifenindex");
  }
}


void handleLedColor() {
  int stripIndex = server.arg("strip").toInt();
  int r = server.arg("R").toInt();
  int g = server.arg("G").toInt();
  int b = server.arg("B").toInt();


  if (stripIndex >= 0 && stripIndex < NUM_STRIPS) {
    strips[stripIndex].fill(strips[stripIndex].Color(r, g, b));
    strips[stripIndex].show();
    server.send(200, "text/plain", "Lichtfarbe aktualisiert");
  } else {
    server.send(400, "text/plain", "Ungültiger Streifenindex");
  }
}


void handleLedBrightness() {
  int stripIndex = server.arg("strip").toInt();
  int brightness = server.arg("brightness").toInt();


  if (stripIndex >= 0 && stripIndex < NUM_STRIPS) {
    strips[stripIndex].setBrightness(brightness);
    strips[stripIndex].show();
    server.send(200, "text/plain", "Helligkeit aktualisiert");
  } else {
    server.send(400, "text/plain", "Ungültiger Streifenindex");
  }
  }

Kommt immer diese Fehlermeldung:

. Variables and constants in RAM (global, static), used 29040 / 80192 bytes (36%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ DATA     1504     initialized variables
╠══ RODATA   1320     constants       
╚══ BSS      26216    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60527 / 65536 bytes (92%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ ICACHE   32768    reserved space for flash instruction cache
╚══ IRAM     27759    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 271296 / 1048576 bytes (25%)
║   SEGMENT  BYTES    DESCRIPTION
╚══ IROM     271296   code in flash   
esptool.py v3.0
Serial port COM3
Connecting........_____....._____....._____....._____....._____....._____....._____


A fatal esptool.py error occurred: Failed to connect to ESP8266: Timed out waiting for packet header

Ich habe es auch schon versucht mit den Anschluss Flash in GND beim Arduino, hilf aber nicht

Weiß jemand was ich tun kann?

Vg Tmm

Bild zu Frage
Fehler, programmieren, Arduino, Script, Platine, ESP8266, Arduino IDE
Powershell remote Script zum Client wird ausgeführt aber ohne Fehlermeldung und ohne starten der Anwendung?

Hallo, ich versuche vom Host per Remote auf eine VM mit Remote eine Anwendung zu starten und bekomme auch die Rückmeldung das der Prozess gestartet ist, (Es wird auch kurz ein PowerShell Fenster angezeigt und die Anwendung startet auch irgendwann im Hintergrund) aber egal was ich versuche die Anwendung lässt sich nicht normal starten. Der ps Befehl an sich funktioniert an sich (etwas abgeändert) einwandfrei auf dem Client. Das komische ist ja das einfache Sachen wie eine Txt Datei erstellen ohne Probleme funktionieren. Ich hab in der vm schon alles mögliche probiert auch ohne Firewall gleiches Ergebnis. openai hat auch schon aufgegeben, anscheinend soll laut meinem Kollegen sowas vorher ohne Probleme funktioniert haben, aber an den win Updates kanns nicht liegen da die vm frisch installiert ist. Chrome wurde nur als Test mit eingefügt


$chromeScriptBlock = {

  Start-Process -FilePath "C:\Program Files\Google\Chrome\Application\chrome.exe" -WindowStyle Normal

}

$padScriptBlock = {

  $padExePath = "C:\Program Files (x86)\Power Automate Desktop\PAD.Console.Host.exe"

  $flowUrl = "XXXXr"

  Start-Process -FilePath $padExePath -ArgumentList $flowUrl -WindowStyle Normal

}

# Für Chrome

C:\Users\Administrator\Desktop\PSTools\psexec.exe \\192.168.56.10 -i 1 -u XX powershell -ArgumentList "-NoProfile -ExecutionPolicy Bypass -Command & {$chromeScriptBlock}"

# Für Power Automate Desktop

C:\Users\Administrator\Desktop\PSTools\psexec.exe \\192.168.56.10 -i 1 -u XX -p XXX-d powershell -ArgumentList "-NoProfile -ExecutionPolicy Bypass -Command & {$padScriptBlock}"

Server, Script, PowerShell, Remote Desktop, Windows 10, windows server 2019
Automatisches (differenzielles) Backup von Daten auf ein NAS Laufwerk?

Hallo alle,

Ich suche nach einer Datensicherungslösung, die Daten von einem Windows PC (Windows 10+) auf ein NAS sichert.

Die Lösung soll folgendes tun:

  • Einen Task der manuell oder Zeitgesteuert startet
  • Der Task "sichert" definierte Folder vom Windows PC auf das NAS (net-share)

Das „sichert“ Task sollte eigentlich:

  •     Einen Verzeichnis mit dem Datum – Uhrzeit (z. B. 2023-07-28_16-12-13) erstellen
  •     Überprüfen was beim letzten durchlauf erstellt wurde um ...
  •     Sym-Links für Dateien zu erstellen , die:
  •     - im alten Backup vorhanden sind
  •     - in der Live-Maschine vorhanden sind und
  •     - auf der Live-Maschine seit der letzten Sicherung nicht geändert wurden.
  •     kopiert alle neuen und geänderten Dateien von der Live-Maschine.

Einmal im Jahr oder manuell ausgelöst, sollte die „Synchronisierung“ eine vollständige Kopie ohne die Sym-Links erstellen.

Der Nutzer zum schreiben auf dem NAS hat nur schreibe keine überschreibe/lösch rechte.

Was nicht gewollt ist:

  • eine Lösung basierend auf Images (Full disk)
  • eine Lösung basierend auf nicht gängigen Dateiformaten (für Archive usw.)
  • eine Lösung basierend auf einer Closed-Source-Anwendung

Gibt es ein Set-up, das das kann, was hier beschrieben wird?
(Das NAS ist noch nicht definiert, der Fokus hier liegt auf dem Client auf der Windows machine)

PC, Windows, Backup, Netzwerk, automatisch, Datensicherung, NAS, Script, backup erstellen, Windows 10
mehrere standorte hinzufügen bei JobPosting mit Schema Markup Generator (JSON-LD)?

Hallo,

ich versuche ein JobPosting Script für Google Jobs zu erstellen. Da es aber verschiedene Standorte gibt bei denen man arbeiten kann muss ich verschiedene Standorten in das Script einfügen. Laut Google Search Central kann ich die Property 

jobLocation

 mehrfach in einem Array hinzufügen. Ich habe schon so einiges probiert, was auch online vorgeschlagen wurde, jedoch gibt es immer fehler mit den google rich results, wenn ich das script testen will.

<script type="application/ld+json">
{
 "@context": "https://schema.org/",
 "@type": "JobPosting",
 "title": "Test Job",
 "description": "test beschreibung",
 "hiringOrganization" : {
  "@type": "Organization",
  "name": "Test firma",
  "sameAs": "https://test123.de",
  "logo": "https://test123.de"
 },
 "industry": "test industry",
 "employmentType": "FULL_TIME",
 "datePosted": "2023-07-18",
 "validThrough": "",
 "jobLocation": {
  "@type": "Place",
  "address": {
   "@type": "PostalAddress",
   "streetAddress": "",
   "addressLocality": "Hamburg",
   "postalCode": "",
   "addressCountry": "DE"
  }
 },
 {
  "@type": "Place",
  "address": {
   "@type": "PostalAddress",
   "streetAddress": "",
   "addressLocality": "Berlin",
   "postalCode": "",
   "addressCountry": "DE"
  }
 }
],
</script>

Das war einer meiner Versuche aber Google Rich Results sowie schema.org zeigen weiterhin Fehler an. Ich weiß im Moment nicht weiter, vielleicht kennt jemand hier sich mit dem Thema etwas aus und kann mir helfen mehrere Standorte in das JobPosting Script zu bekommen.

Danke im Voraus!

Script, Schema
Linux Script: Aktionen auf weiterem Server in ein Logfile schreiben?

Hallo,

ich muss auf mehreren Servern Verzeichnisse löschen (das funktioniert auch) und möchte das gerne auf dem Server, auf dem das Script läuft, in ein Logfile schreiben. Bisher habe ich das aber nicht geschafft :-(.

Ich weiß, dass man das auch mit Ansible machen kann, steht hier aber nicht zur Diskussion.

Hier mal der Aufbau des Scriptes:

Hauptserver:

Ordner mit Logdatei erzeugen:

Schleife zum löschen von Verzeichnissen auf anderen Servern

for str in $vSTR
   do
   echo "[######################## $addr -  $ui_package ####################]" | tee -a $log_file;
   folder="$str$ui_package" | tee -a $log_file;
   ssh $addr "cd /home/verzeichnis/ && find $folder;
       if [ -d "$folder" ]; then
          echo "Das Verzeichnis existiert. Loesche es..."
          rm -r "$folder"
          echo "Das Verzeichnis $folder wurde geloescht" | tee -a $log_file; => hier, funktioniert das Schreiben in die Logdatei nicht
       else
          echo "Das Verzeichnis $folder existiert nicht." | tee -a $log_file; => hier, funktioniert das Schreiben in die Logdatei nicht
       fi  "
  done

Geht das überhaupt, dass ich Aktionen, die ich auf einem zweiten Server ausführe, auf dem Server, auf dem das Script läuft, in eine Logdatei schreibe?

Vielen Dank für jegliche Hilfe!

Gruß

Carpi

Bild zu Frage
Linux, Script

Meistgelesene Fragen zum Thema Script