Điểm:0

Chạy tập lệnh bash trong crontab không thành công

lá cờ cn

Tôi có hai tập lệnh hoạt động hoàn hảo từ dòng lệnh nhưng không hoạt động trong crontab. Các tập lệnh dùng để yêu cầu tệp thời tiết GRIB qua email.

Tập lệnh tìm trong thư mục hộp thư đi để tìm yêu cầu hiện có và xóa yêu cầu đó nếu có. Sau đó, nó nhận dữ liệu GPS và đưa ra yêu cầu mới dựa trên vị trí GPS tại thời điểm yêu cầu. Một yêu cầu mới được tạo và đưa vào thư mục hộp bên ngoài.

Đây là một trong những kịch bản:

#! /bin/bash

# kiểm tra các yêu cầu hiện có
R=$(grep -l "Grib" /user/.wl2k/mailbox/email-user/out/*.b2f)
nếu [ -n "$R" ]
sau đó
rm $R
fi

#lấy tọa độ GPS Vĩ độ/Vĩ độ
 X=$(gpspipe -w -n 10 |grep lat|tail -n1|cut -d":" -f9|cut -d"," -f1)
 Y=$(gpspipe -w -n 10 |grep lon|tail -n1|cut -d":" -f10|cut -d"," -f1)

# thêm + hoặc - 25 vào kinh độ và + hoặc -12 vào vĩ độ
 A=$(echo "scale=4; $X+12" | bc -l)
 B=$(echo "scale=4; $X-12" | bc -l)
 C=$(echo "scale=4; $Y-25" | bc -l)
 D=$(echo "scale=4; $Y+25" | bc -l)

# Gửi yêu cầu GRIB để vỗ (cái này dành cho thời tiết)
cuộn tròn http://localhost:8080/api/mailbox/out -F "date=$(date -u +'%Y-%m-%dT%H:%M:>
|2,2|6,12..96|NHẤN,GIÓ,GUST,=
CAPE,MƯA,MÂY,AIRTMP,SÓNG"
muru avatar
lá cờ us
"không hoạt động" nghĩa là gì? Bạn đã thử đăng nhập vào crontab chưa? `/some/script > /some/log/file 2>&1` và `set -x` trong tập lệnh?
Artur Meinild avatar
lá cờ vn
Vui lòng cung cấp thêm một số thông tin. Các tập lệnh được đặt ở đâu và vui lòng đăng nội dung crontab của bạn nơi các tập lệnh được chạy từ đó. Thường là do `PATH` bị hỏng. Cũng như các trạng thái muru, điều gì xảy ra nếu bạn ghi nhật ký đầu ra - chúng có chạy hay không?
Wayne Vosberg avatar
lá cờ bd
Có thể là sự cố PATH - hãy thử thêm đường dẫn đầy đủ vào tệp thực thi của bạn hoặc đảm bảo rằng PATH đã hoàn thành điều đầu tiên trong tập lệnh.
FedKad avatar
lá cờ cn
Đồng thời sửa dòng đầu tiên bằng cách xóa ký tự khoảng trắng giữa `#!` và `/bin/bash`.
lá cờ hr
@FedonKadifeli dường như là một huyền thoại - xem ví dụ [Có cho phép khoảng trắng giữa #! và /bin/bash trong shebang?](https://unix.stackexchange.com/questions/276751/is-space-allowed-between-and-bin-bash-in-shebang)
FedKad avatar
lá cờ cn
Không biết điều đó @steeldriver. Cảm ơn bạn đã cảnh báo tôi!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.