у меня есть файл, расположенный на моем поле linux, который генерируется скриптом python, файл удаляется внутри каталога / root/
мой скрипт bash выглядит так:
#!/bin/bash
# Run the HR Data feed
cd /root/hr-feed
# the file created here will land one directory above the scripts in /root/
python main.py
# Transfer the file to the server
cd /root/
smbclient \[SERVER][SHARE] --workgroup=[WRKGRP] --user=[USR] [PASS] -c 'put HRDataFeed.txt'
все работает по желанию до последней строки. Он должен выполняться с ошибкой (хотя я не совсем уверен, как выяснить, что это может быть ошибка).
эта работа выполняется с кронтаб. Который, как я понимаю, работает в несколько иной среде, чем root (или, по крайней мере, кажется, с тем, как он себя ведет).
Если я выполняю сценарий напрямую (не из crontab), он работает без сбоев, и файл передается в поле назначения windows server. Я предполагаю, что, возможно, мне нужно предоставить полный путь к HRDataFeed.txt-файл как часть команды put; однако я не могу понять это.
smbclient .... -c "put /root/HRDataFeed.txt"
приводит к ошибке, что файл / root / HRDataFeed.txt не удается найти.
любой вклад будет высоко оценен.
EDIT
Я попытался обновить crontab следующим образом
(ради тестирования я запускал его каждую минуту)
- /корень/hrdatafeed > last_run.txt
однако никогда не казалось чтобы попасть в папку с документами.
Я попробую просто добавить канал непосредственно в команду SMBClient.