2 Commits
Author SHA1 Message Date
bruno 8264db80e9 Version 1.0
-ajout d’un nouveau champ dans la table pour faire des recherches sans accent (bashbird et insert)
-refonte de l’export markdown
2024-10-18 09:21:20 +02:00
bruno 6ecabb9ffa v 0.9.1 2024-10-14 09:25:55 +02:00
6 changed files with 1105 additions and 1070 deletions
Binary file not shown.
+1040 -1040
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

+52 -21
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
VERSION="v0.9" VERSION="v1.0"
red="\033[1;31m" red="\033[1;31m"
greenbold="\033[1;32m" greenbold="\033[1;32m"
@@ -15,13 +15,13 @@ reset="\033[0m"
dotenv () { dotenv () {
set -a set -a
# shellcheck disable=SC1091 # shellcheck disable=SC1091
[ -f ".env" ] && . ".env" || echo -e "${red}\nNo .env file found ! No token for gotify.${reset}" [ -f ".env" ] && . ".env" || echo -e "${red}\nNo .env file found ! Could'nt get update from Github.'.${reset}"
set +a set +a
} }
dotenv dotenv
### ChangeNotes: . ### ChangeNotes: Minor corrections.
Github="https://github.com/bruno21/bashbirds" Github="https://github.com/bruno21/bashbirds"
# Repo normal: # Repo normal:
#RawUrl="https://raw.githubusercontent.com/Bruno21/bashbirds/main/bashbirds.sh" #RawUrl="https://raw.githubusercontent.com/Bruno21/bashbirds/main/bashbirds.sh"
@@ -36,7 +36,8 @@ ScriptWorkDir="$(dirname "$ScriptPath")" # /Users/bruno/Documents/Scripts/bashbi
### Check if there's a new release of the script: ### Check if there's a new release of the script:
LatestRelease="$(curl -s -r 0-50 $RawUrl | sed -n "/VERSION/s/VERSION=//p" | tr -d '"')" LatestRelease="$(curl -s -r 0-50 $RawUrl | sed -n "/VERSION/s/VERSION=//p" | tr -d '"')"
LatestChanges="$(curl -s -r 0-200 $RawUrl | sed -n "/ChangeNotes/s/### ChangeNotes: //p")" LatestChanges="$(curl -s -r 0-200 $RawUrl | sed -n "/ChangeNotes/s/### ChangeNotes: //p")"
echo $LatestRelease #[[ $LatestRelease != $VERSION ]] && new="($LatestRelease)" || new=""
echo -e "${yellowbold}Bashbird${reset} $VERSION\n" echo -e "${yellowbold}Bashbird${reset} $VERSION\n"
@@ -55,7 +56,9 @@ req2() {
#read -p "Pause: " choice #read -p "Pause: " choice
query2="SELECT * FROM liste;"
#query2="SELECT * FROM liste;"
query2="SELECT Francais, Autres, Latin, Anglais, Ordre, Famille, Liens FROM liste;"
result2=$(sqlite3 ./birds.db "$query2") result2=$(sqlite3 ./birds.db "$query2")
#echo "$result2" #echo "$result2"
@@ -71,19 +74,37 @@ req2() {
or="${array[4]}" or="${array[4]}"
fa="${array[5]}" fa="${array[5]}"
ln="${array[6]}" ln="${array[6]}"
#echo "$ln"
#read -r -p "Would you like to update? y/[n]: " SelfUpdate
[[ $aut != "" ]] && z="($aut)" || z="" [[ $aut != "" ]] && z="($aut)" || z=""
if [ $ext = ".md" ]; then if [ $ext = ".md" ]; then
echo "| $fr $z |" >>"$f"
echo "|--------------------------------------------------|" >>"$f" #echo "| $fr $z |" >>"$f"
echo "| $lat |" >> "$f" #echo "|--------------------------------------------------|" >>"$f"
echo "| $en |" >> "$f" #echo "| $lat |" >> "$f"
echo "| $or |" >> "$f" #echo "| $en |" >> "$f"
echo "| $fa |" >> "$f" #echo "| $or |" >> "$f"
echo "| $ln |" >> "$f" #echo "| $fa |" >> "$f"
echo "" >> "$f" #echo "| $ln |" >> "$f"
#echo "" >> "$f"
birds+="| $fr | $z |"'\n'
birds+="|------------------------ | --------------------------|"'\n'
birds+="| Vernaculaire | $lat |"'\n'
birds+="| Anglais | $en |"'\n'
birds+="| Ordre | $or |"'\n'
birds+="| Famille | $fa |"'\n'
#birds+="| Liens (oiseaux.net)<br />![](/Users/bruno/Pictures/Transparent300px.png) | [$fr]($ln)<br />![](/Users/bruno/Pictures/Transparent300px.png) |"'\n'
birds+="| Liens (oiseaux.net)<br />![](Transparent300px.png) | [$fr]($ln)<br />![](Transparent300px.png) |"'\n'
birds+='\n'
elif [ $ext = ".html" ]; then elif [ $ext = ".html" ]; then
firstletter="${fr:0:1}"
firstletter="${fr:0:1}"
if [ $firstletter != $old_index ]; then if [ $firstletter != $old_index ]; then
index+=("$firstletter") index+=("$firstletter")
@@ -116,12 +137,20 @@ req2() {
bird="$z" bird="$z"
html html
elif [ $ext = ".md" ]; then
echo -e "${yellow}Exporting markdown file...${reset}"
bird=$(echo "$birds" | sed 's/\␍//g')
echo -e "$bird" > "liste_oiseaux$ext"
fi fi
exit 0 exit 0
} }
html() { html() {
echo -e "${yellow}Exporting html file...${reset}"
cat > liste_oiseaux.html << EOF cat > liste_oiseaux.html << EOF
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
@@ -222,7 +251,9 @@ req1() {
request=""; request="";
fi fi
query1="SELECT * FROM liste WHERE Francais LIKE \"%$request%\" OR Autres LIKE \"%$request%\" OR Latin LIKE \"%$request%\""; request=$(echo "$request" | sed 'y/áàâäçéèêëîïìôöóùúüñÂÀÄÇÉÈÊËÎÏÔÖÙÜÑ/aaaaceeeeiiiooouuunAAACEEEEIIOOUUN/')
query1="SELECT * FROM liste WHERE Fra LIKE \"%$request%\" OR Aut LIKE \"%$request%\" OR Latin LIKE \"%$request%\"";
result1=$(sqlite3 ./birds.db "$query1") result1=$(sqlite3 ./birds.db "$query1")
if [ -n "$result1" ]; then if [ -n "$result1" ]; then
@@ -232,12 +263,12 @@ req1() {
while IFS='|' read -ra array2; while IFS='|' read -ra array2;
do do
fr2="${array2[0]}" fr2="${array2[0]}"
aut2="${array2[1]}" aut2="${array2[2]}"
lat2="${array2[2]}" lat2="${array2[4]}"
en2="${array2[3]}" en2="${array2[5]}"
or2="${array2[4]}" or2="${array2[6]}"
fa2="${array2[5]}" fa2="${array2[7]}"
lnk2="${array2[6]}" lnk2="${array2[8]}"
tag2="$fr2" tag2="$fr2"
if [ -n "$aut2" ]; then if [ -n "$aut2" ]; then
BIN
View File
Binary file not shown.
+13 -9
View File
@@ -13,8 +13,8 @@ reset="\033[0m"
dir=$(dirname "$0") # /Users/bruno/Documents/Scripts/keywords2insta dir=$(dirname "$0") # /Users/bruno/Documents/Scripts/keywords2insta
if [ ! -f ./birds.db ]; then if [ ! -f ./birds.db ]; then
cmd0="CREATE TABLE liste (Francais string, Autres string, Latin string, Anglais string, Ordre string, Famille string, Liens string);" cmd0="CREATE TABLE liste (Francais string, Fra string, Autres string, Aut string, Latin string, Anglais string, Ordre string, Famille string, Liens string);"
echo "$cmd0" | sqlite3 ./birds_plus.db echo "$cmd0" | sqlite3 ./birds.db
if [ $? -ne 0 ]; then exit 0; fi if [ $? -ne 0 ]; then exit 0; fi
fi fi
@@ -34,20 +34,24 @@ if [ -f "$dir"/Oiseaux_europe.csv ]; then
((skip_headers--)) ((skip_headers--))
else else
fr="${array[0]}" fr="${array[0]}"
aut="${array[1]}" fr_wa="${array[1]}"
lat="${array[2]}" aut="${array[2]}"
en="${array[3]}" aut_wa="${array[3]}"
or="${array[4]}" lat="${array[4]}"
fa="${array[5]}" en="${array[5]}"
ln="${array[6]}" or="${array[6]}"
fa="${array[7]}"
ln="${array[8]}"
fr=$(echo "$fr" | sed "s/'/''/g") fr=$(echo "$fr" | sed "s/'/''/g")
fr_wa=$(echo "$fr_wa" | sed "s/'/''/g")
aut=$(echo "$aut" | sed "s/'/''/g") aut=$(echo "$aut" | sed "s/'/''/g")
aut_wa=$(echo "$aut_wa" | sed "s/'/''/g")
en=$(echo "$en" | sed "s/'/''/g") en=$(echo "$en" | sed "s/'/''/g")
or=$(echo "$or" | sed "s/'/''/g") or=$(echo "$or" | sed "s/'/''/g")
fa=$(echo "$fa" | sed "s/'/''/g") fa=$(echo "$fa" | sed "s/'/''/g")
cmd1="INSERT INTO liste (Francais, Autres, Latin, Anglais, Ordre, Famille, Liens) VALUES ('$fr','$aut','$lat','$en','$or','$fa','$ln');" cmd1="INSERT INTO liste (Francais, Fra, Autres, Aut, Latin, Anglais, Ordre, Famille, Liens) VALUES ('$fr','$fr_wa','$aut','$aut_wa','$lat','$en','$or','$fa','$ln');"
echo "$cmd1" | sqlite3 ./birds.db echo "$cmd1" | sqlite3 ./birds.db
fi fi