From c9b6b9a5ca082fe7c1b6f58d7713f785a9eb6a5c Mon Sep 17 00:00:00 2001 From: Martial Simon Date: Mon, 15 Sep 2025 01:08:27 +0200 Subject: add: graphs et rushs --- rushs/evalexpr/cut_csv/test.csv | 15 +++++++++++++++ rushs/evalexpr/cut_csv/with_cut.sh | 23 +++++++++++++++++++++++ rushs/evalexpr/cut_csv/with_sed.sh | 24 ++++++++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 rushs/evalexpr/cut_csv/test.csv create mode 100755 rushs/evalexpr/cut_csv/with_cut.sh create mode 100755 rushs/evalexpr/cut_csv/with_sed.sh (limited to 'rushs/evalexpr/cut_csv') diff --git a/rushs/evalexpr/cut_csv/test.csv b/rushs/evalexpr/cut_csv/test.csv new file mode 100644 index 0000000..d88282b --- /dev/null +++ b/rushs/evalexpr/cut_csv/test.csv @@ -0,0 +1,15 @@ +James;Lebron;LABron;Lakers; +Davis;Anthony;Unibrow;Pelicans; +Mitchell;Donovan;Spida;Jazz; +Harden;James;TheBeard;Rockets; +Cousins;DeMarcus;Boogie;Wariors; +Embiid;Joel;TheProcess;76Sixers; +Bryant;Kobe;BlackMamba;Lakers; +Jordan;Michael;AirJordan;Bulls; +Johnson;Earvin;Magic;Lakers; +Howard;Dwight;Superman;Wizards; +Westbrook;Russel;MrTripleDouble;Thunder; +Durant;Kevin;KD;Wariors; +George;Paul;PG-13;Thunder; +Leonard;Kawhi;TheKlaw;Raptors; +Irving;Kyrie;UncleDrew;Celtics; diff --git a/rushs/evalexpr/cut_csv/with_cut.sh b/rushs/evalexpr/cut_csv/with_cut.sh new file mode 100755 index 0000000..9618f00 --- /dev/null +++ b/rushs/evalexpr/cut_csv/with_cut.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +[ $# -ne 2 ] && exit 1 + +if ! [ -f "$1" ]; then + exit 1 +fi + +if ! [ "$2" -eq "$2" ] 2> /dev/null; then + exit 1 +fi + +[ "$2" -lt 0 ] && exit 1 + +if [ "$2" -gt "$(wc -l < "$1")" ]; then + exit 1 +fi + +line=$(head --lines="$2" "$1" 2> /dev/null | tail -n 1 | cut -d ';' -f 2-3 || exit 1) +c1=$(echo "$line" | cut -d ';' -f 1) +c2=$(echo "$line" | cut -d ';' -f 2) + +echo "$c1 is $c2" diff --git a/rushs/evalexpr/cut_csv/with_sed.sh b/rushs/evalexpr/cut_csv/with_sed.sh new file mode 100755 index 0000000..fb5e1f8 --- /dev/null +++ b/rushs/evalexpr/cut_csv/with_sed.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +[ $# -ne 2 ] && exit 1 + +if ! [ -f "$1" ]; then + exit 1 +fi + +if ! [ "$2" -eq "$2" ] 2>/dev/null; then + exit 1 +fi + +[ "$2" -lt 0 ] && exit 1 + +if [ "$2" -gt $(wc -l < "$1") ]; then + exit 1 +fi + +i=1 + +while IFS= read -r line; do + [ "$i" -eq "$2" ] && echo "$line" | sed 's/^.*;\(.*\);\(.*\);.*;$/\1 is \2/' + i=$(($i + 1)) +done < "$1" -- cgit v1.2.3