לא יודע באמת מעניין
נסה להריץ את הסקריפט בצורה הבאה
קוד:$ bash yourscript.sh
אם זה עדין לא עובד תוכל לנסות לראות למה על ידי הרצה של
קוד:$ bash -x yourscript.sh
זאת התוצאה הפעם:
Bash:
:~/Documents$ bash -x download_books.sh
+ BOOKS_DATA_URL=https://openbooks.openu.ac.il/booksdata
++ curl -s https://openbooks.openu.ac.il/booksdata
++ jq .books
+ BOOKS=
++ get_categories
+++ jq -r '.[].departments[].name'
+++ sort -u
++ categories=
++ printf '%30s \n' ''
++ nl
+ read -p 'Welcome to library
which books do you want to take today?
press 0 to download all the books
or select department to download
1
Select Option: ' category
Welcome to library
which books do you want to take today?
press 0 to download all the books
or select department to download
1
Select Option: 1
+ get_books_from_category 1
+ categories=([1]="המחלקה להיסטוריה, פילוסופיה ומדעי היהדות" [2]="המחלקה לחינוך ולפסיכולוגיה" [3]="המחלקה למדעי הטבע והחיים" [4]="המחלקה למתמטיקה ולמדעי המחשב" [5]="המחלקה לניהול ולכלכלה" [6]="המחלקה לסוציולוגיה, למדע המדינה ולתקשורת" [7]="המחלקה לספרות, ללשון ולאמנויות" [0]="הורד את כל התוכן הזמין")
+ logger 'Selected: המחלקה להיסטוריה, פילוסופיה ומדעי היהדות'
+ status=0
+ [[ 0 -ne 0 ]]
+ echo -e '\e[92m[*] Selected: המחלקה להיסטוריה, פילוסופיה ומדעי היהדות'
[*] Selected: המחלקה להיסטוריה, פילוסופיה ומדעי היהדות
+ [[ 1 -eq 0 ]]
+ download_category_books 'המחלקה להיסטוריה, פילוסופיה ומדעי היהדות'
+ q='. | map(.departments[].name==$category) | indices(true) | .[]'
++ jq -r --arg category 'המחלקה להיסטוריה, פילוסופיה ומדעי היהדות' '. | map(.departments[].name==$category) | indices(true) | .[]'
+ books_ids=
+ logger המחלקה להיסטוריה, פילוסופיה ומדעי היהדות
+ status=0
+ [[ 0 -ne 0 ]]
+ echo -e '\e[92m[*] המחלקה' להיסטוריה, פילוסופיה ומדעי היהדות
[*] המחלקה להיסטוריה, פילוסופיה ומדעי היהדות
i:~/Documents$