เพิ่มแฟ้มเข้าไป S3 ถัใช้เชลล์สคริปต์

0

คำถาม

เป้าหมาย:เพื่อให้อยู่ในแฟ้ม gri/ ต้อง S3 ถัใช้ SendToS3.sh เชลล์สคริปต์

ฉันตามนี้ Comment.

SendToS3.sh อยู่ใน cwd. มันต้องการจะเรียกแฟ้มทั้งหมดนั่นไม่ได้อยู่ในโฟลเดอร์ย่อยใน cwd น gri/.

เทอร์มินัล:

me@PF2DCSXD:/mnt/c/Users/me/Documents/GitHub/workers-python/workers/data_simulator/data$ ./SendToS3.sh
./SendToS3.sh: line 17: logInfo: command not found
curl: Can't open '/gri/*'!
curl: try 'curl --help' or 'curl --manual' for more information
curl: (26) Failed to open/read local data from file/application
./SendToS3.sh: line 27: logInfo: command not found

SendToS3.sh:

bucket=simulation
files_location=/gri/  # !
now_time=$(date +"%H%M%S")
contentType="application/x-compressed-tar"
dateValue=`date -R`
# your key goes here..
s3Key=  # CENSORED
# your secrets goes here..
s3Secret=  # CENSORED

function pushToS3()
{
  files_path=$1
  for file in $files_path*
  do
    fname=$(basename $file)
    logInfo "Start sending $fname to S3"
    resource="/${bucket}/${now_date}/${fname}_${now_time}"
    stringToSign="PUT\n\n${contentType}\n${dateValue}\n${resource}"
    signature=`echo -en ${stringToSign} | openssl sha1 -hmac ${s3Secret} -binary | base64`
    curl -X PUT -T "${file}" \
     -H "Host: ${bucket}.s3.amazonaws.com" \
     -H "Date: ${dateValue}" \
     -H "Content-Type: ${contentType}" \
     -H "Authorization: AWS ${s3Key}:${signature}" \
      https://${bucket}.s3.amazonaws.com/${now_date}/${fname}_${now_time}
     logInfo "$fname has been sent to S3 successfully."
  done
}
pushToS3 $files_location

ได้โปรดบอกให้ฉันรู้ถ้ามีอะไรที่ฉันสามารถเพิ่มไปยังตำแหน่งนี้

amazon-s3 amazon-web-services curl sh
2021-11-23 13:23:33
2
0

ระบบของคุณไม่มี loginfoดังนั้นบางทีอาจเปลี่ยนคำสั่งที่ใช้สั่งให้ echo. สำหรับของคุณ curl เกิดข้อผิดพลาดมันอาจจะเป็นแฟ้มขออนุญาตเกิดข้อผิดพลาดลองวิ่งหนี: chmod -rwx gri.

อีกทางเลือกคุณสามารถใช้ aws cli แทนซึ่งมันง่ายมากเลยที่จะใช้ imo.

2021-11-23 14:01:43

ผมต้องไปหาข้อมูล AWS CLI แทนที่จะเป็นฉันอาจจะสักพักก่อนที่ฉันรายงานกลับมา
StressedBoi69420
0

ข้อผิดพลาดอยู่ที่นี่ตามเส้นไปแล้ว โฟลเดอร์ /gri/ คือว่างหรือผู้ใช้เริ่มการทำงานสคริปต์ไม่สามารถได้รับอนุญาตให้เข้าถึงได้

curl:ไม่สามารถเปิด'/gri/*'!

อีกอย่างมันดูเหมือนว่าเซิร์ฟเวอร์ของคุณยังไม่มีแฟ้มประมวลผล LogInfo ติดตั้งหรือมันไม่สามารถเข้าใช้จากของสคริปต์ SendToS3.sh. บตรวจสอบการติดตั้งและเพิ่มเลขฐานสองที่ PATH ซองตัวแปร

./SendToS3.sh:สาย 17:logInfo:ไม่พบคำสั่ง

โบนัส:แทนที่จะใช้ curlคุณสามารถใช้ aws-cli ซึ่งถูกปรับมาให้เหมาะกั interract กับ aws ส่วนประกอบ ได้โปรดตามหาสำหรับเอกสารคู่มือ@info:shell s3 ที่นี่: https://docs.aws.amazon.com/cli/latest/reference/s3/

ตัวอย่างเช่นคุณสามารถคัดลอกแฟ้มที่จะทำลงถังให้กับเรื่องนี้คำสั่ง:

aws s3 cp <path_to_file> s3://<bucket_name>/<path>/
2021-11-23 14:23:19

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่