In diesem Szenario wird erläutert, wie der Sicherungsprozess des Snapshots, der während der täglichen Servicewartung auf einem lokalen Computer erstellt wird, automatisiert wird.
Artifact Snapshot
), der im Wartungsfenster erstellt wurde, herunterladenNote:
url
, user
, password
und NumberOfBackups
).Informationen zum Planen von Skripten mit der Windows-Aufgabenplanung finden Sie unter Skriptausführung automatisieren.
Windows-Beispielskript
Um Snapshot-Downloads zu automatisieren, erstellen Sie eine Batch- (.bat
) oder Shell-Datei (.sh
) mit einem Skript ähnlich dem folgenden.
@echo off rem Sample script to download and maintain 10 maintenance backups rem Update the following parameters SET url=https://example.oraclecloud.com SET user=ServiceAdmin SET password=Example.epw SET SnapshotName="Artifact Snapshot" SET NumberOfBackups=10 rem EPM Automate commands call epmautomate login %user% %password% %url% IF %ERRORLEVEL% NEQ 0 goto :ERROR call epmautomate downloadfile %SnapshotName% IF %ERRORLEVEL% NEQ 0 goto :ERROR call epmautomate logout IF %ERRORLEVEL% NEQ 0 goto :ERROR rem Rename downloaded Artifact Snapshot, keep the last 10 backups Set Timestamp=%date:~4,2%_%date:~7,2%_%date:~10,2%% Set Second=%time:~0,2%%time:~3,2% ren %SnapshotName%.zip %SnapshotName%_%Timestamp%_%Second%.zip SET Count=0 FOR %%A IN (%SnapshotName%*.*) DO SET /A Count += 1 IF %Count% gtr %NumberOfBackups% FOR %%A IN (%SnapshotName%*.*) DO del "%%A" && GOTO EOF :EOF echo Scheduled Task Completed successfully exit /b %errorlevel% :ERROR echo Failed with error #%errorlevel%. exit /b %errorlevel%
Linux-/UNIX-Beispielskript
Um Snapshot-Downloads zu automatisieren, erstellen Sie eine Shell-Datei (.sh
) mit einem ähnlichen Skript wie das folgende. Wenn Ihr Kennwort Sonderzeichen enthält, finden Sie unter Sonderzeichen verarbeiten weitere Informationen.
#!/bin/sh # Sample script to download and maintain 10 maintenance backups # Update the following seven parameters url=https://example.oraclecloud.com user=serviceAdmin password=/home/user1/epmautomate/bin/example.epw snapshotname="Artifact Snapshot" numberofbackups=10 epmautomatescript=/home/user1/epmautomate/bin/epmautomate.sh javahome=/home/user1/jdk1.8.0_191/ export JAVA_HOME=${javahome} printResult() { op="$1" opoutput="$2" returncode="$3" if [ "${returncode}" -ne 0 ] then echo "Command failed. Error code: ${returncode}. ${opoutput}" else echo "${opoutput}" fi } processCommand() { op="$1" date=`date` echo "Running ${epmautomatescript} ${op}" operationoutput=`eval "$epmautomatescript $op"` printResult "$op" "$operationoutput" "$?" } op="login ${user} ${password} ${url}" processCommand "${op}" op="downloadfile \"${snapshotname}\"" processCommand "${op}" op="logout" processCommand "${op}" # Renames the downloaded artifacts, keeps the last 10 backups timestamp=`date +%m_%d_%Y_%I%M` mv "${snapshotname}.zip" "${snapshotname}_${timestamp}.zip" ((numberofbackups+=1)) ls -tp ${snapshotname}*.zip | grep -v '/$' | tail -n +${numberofbackups} | xargs -d '\n' -r rm --