# Ausführung von exec in cronjobs

**URL:** <https://forum.shopware.com/t/ausfuhrung-von-exec-in-cronjobs/64562>\
**Category:** Plugins\
**Created:** [9. Februar 2020 um 08:59 UTC](https://forum.shopware.com/t/ausfuhrung-von-exec-in-cronjobs/64562 "2020-02-09T08:59:21Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Frank\_2812](https://avatars.discourse-cdn.com/v4/letter/f/b19c9b/32.png) [@Frank\_2812](https://forum.shopware.com/u/Frank_2812)\
**Post date:** [9. Februar 2020 um 08:59 UTC](https://forum.shopware.com/t/ausfuhrung-von-exec-in-cronjobs/64562/1 "2020-02-09T08:59:21Z")

</div>

Hallo,

ich möchte im cronjob via exec ein tar ausführen. Wenn ich den cronjob in der console, also _php bin/console sw:cron:run Shopware\_CronJob\_IbrZipShopBackup_, aufrufe, dann wird das tar Kommando korrekt ausgeführt.

Wird der cronjob aber über _[http://www.meinshop.de/backend/cron](http://www.meinshop.de/backend/cron)_&nbsp;gestartet, so klappt zwar der Start des cronjobs, aber das tar wird nicht ausgeführt. Das der Aufruf funktioniert, sehe ich daran, dass die Verzeichnisse entsprechend angelegt werden.

Um das exec zu umgehen, hatte ich auch schon probiert mit dem PharData-Object zu arbeiten. Da bekomme ich aber folgende Fehlermeldung im php-Log:

```
_Uncaught Error: Class 'IbrZipShopBackup\Subscriber\PharData' not found in ..._

```

Muss ich das über ein _Use …_&nbsp;einbinden? Wie würde das konkret aussehen?

```
 'onCronjobExecute'
        );
    }

    /**
     * listener-method for cronjob-subscriber
     *
     * @param Shopware_Components_Cron_CronJob $job
     */
    public function onCronjobExecute(\Shopware_Components_Cron_CronJob $job)
    {

        $directoryPath = "_backup"; 
        if (!file_exists($directoryPath)) {
            mkdir($directoryPath);
        }

        $directoryPath = "_backup/" . date('Ymd');
        if (!file_exists($directoryPath)) {
            mkdir($directoryPath);
        }

        $directoryPath = "_backup/" . date('Ymd');
        if (file_exists($directoryPath)) {
            
            $tar_file = "_backup/" . date('Ymd') . "/shop_" . date('Ymd_Hi') . ".tar.gz";

            $command = "tar cfvz " . $tar_file . " --exclude='_backup' " . getcwd();
            exec($command);

        }

    }
}

```

&nbsp;
