From c8138911d13855fa17e501cb148b99b5a4e4c85a Mon Sep 17 00:00:00 2001 From: kaotisk Date: Thu, 15 Dec 2022 06:36:33 +0200 Subject: Adapting to solution with printf --- bin/filejoiner | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) (limited to 'bin/filejoiner') diff --git a/bin/filejoiner b/bin/filejoiner index 5ac7dc7..923cf01 100755 --- a/bin/filejoiner +++ b/bin/filejoiner @@ -63,8 +63,38 @@ then OUTPUT="$(tail -n1 $MAPSDIR/$MAPSFILE | awk '{print $2}')" echo $OUTPUT - - cat $(echo $(cat $MAPSDIR/$MAPSFILE|grep chk|awk '{print $2" "}'|tr -d '\n')) > $OUTPUT + # + # Not sure about the line below. There is a bug persisting here from `cat` that separates with \n + # each file + # + # It's said that the best way to do that is using `printf` + # + # https://stackoverflow.com/questions/51332070/bash-redirect-cat-to-file-without-newline + # + # We will need an amount of files so we can know beforehand how many %s will be outputed (same as the number of files) + # + # If we'd `grep chk $MAPSDIR/$MAPSFILE | wc -l` we would get the amount, right? + # YES!!! + # + # So we would put out a new script + # TODO + #touch newscript.sh + #echo 'set -xe' > newscript.sh + #echo -n "printf \"" >> newscript.sh + #NUMBER_OF_FILES="$(grep chk $MAPSDIR/$MAPSFILE | wc -l)" + #i=0 + #while [ "$i" -lt "$NUMBER_OF_FILES" ] + #do + # i="$(expr $i + 1)" + # echo -n "%s" >> newscript.sh + #done + #echo -n "%s" >> newscript.sh + #echo -n "\" " >> newscript.sh + #echo -n "$(cat $MAPSDIR/$MAPSFILE | grep chk | awk '{ print "\"$(cat " $2 ")\" " }'| tr -d '\n')" >> newscript.sh + #echo -n ' > '$OUTPUT >> newscript.sh + #sh newscript.sh + + cat $(echo -n $(cat $MAPSDIR/$MAPSFILE|grep chk|awk '{print $2" "}'|tr -d '\n')) > $OUTPUT sha512sum -c $MAPSDIR/$MAPSFILE -- cgit v1.2.3