1 votos

El archivo funciona manualmente; no funciona con cron; la configuración de PATH lo empeora

Así que tengo estos tres scripts: uno mueve las imágenes a un archivo (photosscript2.sh), otro elimina las imágenes de más de 7 días de antigüedad de ese archivo (photosremove.sh), y otro llama a ambos archivos para mantener la carpeta actualizada (every-minute.sh). Estoy tratando de configurar every-minute.sh con CRON. Todo funciona si escribo el nombre del archivo, ./every-minute.sh manualmente. Pero quiero que se ejecute en segundo plano con CRON y no funciona. Así que añadí un PATH a CRON. No funciona. Así que hice que CRON cd a / primero, que es donde todo se encuentra. Todavía no funciona. WTF está mal. ¿Por qué no se ejecuta? Nota: CRON funciona al 100% sin un PATH en el ordenador de mi madre.

#!/bin/bash
#photoscript2.sh
find /Users/username/Pictures/Photos\ Library.photoslibrary/Masters/2019/* -mtime -7 -exec cp {} /Users/username/Documents/Recently\ Added/ \;

#!/bin/bash
#photosremove.sh
#PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/user
#export DISPLAY=:0.0
#someone on here said to add this.  did nothing.
find /Users/username/Documents/Recently\ Added/ -mtime +7 -exec rm {} \+

#!/bin/bash
#every-minute.sh
#this runs the other two scripts.  I'm trying to get this file to be activated by CRON.
/User/username/photosscript2.sh
/User/username/photosremove.sh

#CRONTAB -e
SHELL=/bin/sh
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/user
*/5 * * * * cd / && /User/username/every-minute.sh

Mensajes de error: Antes de añadir PATH:

find: /Users/username/Pictures/Photos Library.photoslibrary/Masters/2019/*: No such file or directory
find: /Users/username/Documents/Recently Added/*: No such file or directory

Después de añadir PATH:

/bin/sh: /User/username/every-minute.sh: No such file or directory

2voto

Michael Zhou Puntos 167

No es necesario el glob ( * ). Pruebe lo siguiente para el photoscript2.sh script.

#! /bin/sh
find /Users/username/Pictures/Photos\ Library.photoslibrary/Masters/2019 \
    ! \( -name '.*' -o -name 2019 \) \ 
    -mtime -7 -exec cp {} /Users/username/Documents/Recently\ Added/ \;

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X