Oppure

Loading
04/11/18 20:42
alessio3miliardi
ho un problema che mi sta facendo impazzire perchè è una cazzata!!!
allora sto facendo un programma che salva dei percorsi per dei file scelti da me perciò ho fatto una schermata di input dove inserisci il percorso del file e viene salvato in un file .txt, dopo l'input ho fatto una schermata di scelta che ti mostra tutti i percorsi inseriti, intanto non riesco a numerare i percorsi perchè vorrei fare una cosa tipo
$numeroriga)$percorso e non ci riesco o perlomeno a mettere la parentesi.
il secondo problema è che ho utilizzato utilizzato un ciclo for con il comando head perciò sovrappone le scritte ad esempio
$numeroriga $percorso1
$numeroriga $percorso1 $percorso2 #(sovvrapposti)

ricordo che il linguaggio è bash o sh o shell scripting o come lo volete chiamare
aaa
04/11/18 22:36
Roby94
Intanto Bash e Sh sono due cose differenti, sono entrambi programmi con un proprio linguaggio di scripting, per farla semplice bash è un potenziamento di sh, sui recendi sistemi operativi Linux i terminali vengono di default aperti in Bash, garantendo molte utili features rispetto a sh. Finita la pappardella su sh e bash, perche non ci mostri cosa hai realizzato, e partiamo da li, tipo la frase "utilizzato un ciclo for con il comando head perciò sovrappone le scritte ad" non capisco come utilizzi head, in questo caso mi pare inutile, ma forse perche non ho capito bene il problema.
aaa
05/11/18 14:43
alessio3miliardi
echo -n percorso:

read percorso

#scrittura sul file 

#percorsi.txt
a=$(wc --lines percorsi.txt | egrep -o '[0-9]*')



for ((i=1;i<$a;i+=1))
do
	
	
	pri=$(head -$i percorsi.txt)
	
	echo -n $i') '

	echo $pri
done;

echo $pri


ecco il codice, chiedo scusa per la mia imprecisione e ti ringrazio per la disponibilità, so che sono cose differenti ma se mi dai il ridultato in sh per linux è pressoche uguale o comunque lo avrei sistemato da solo, per ultimo so che il ridultato sovrappone le linee e che non conosco comandi alternativi di sicuro è inutile

EDIT moderatore: aggiunti tag code
Ultima modifica effettuata da lumo 05/11/18 19:47
aaa
05/11/18 19:13
Mikelius
Sei su O.S. GNU/Linux, giusto??

1) Usa i tag CODE. Con bash sono importantissimi gli spazi, se non usi i tag non vediamo se li metti o meno.
2) Usato lo Shebang ( #! \bin\bash\ )? Nel codice postato non c'è.
3) Perchè usi "read percorso" ? cosa vorresti farne?
Ultima modifica effettuata da Mikelius 05/11/18 19:14
aaa
05/11/18 20:18
alessio3miliardi
$percorso lo salvo in un file ma il salvataggio l'ho tralasciato quello non da problemi
aaa
05/11/18 20:22
alessio3miliardi
in pratica io salvo il percorso su un file .txt, poi ho il problema con la lettura delle linee avreste una soluzione a quel 'head' con un altro comando che mi dia in stringa la linea singola senza leggere il file fino alla riga, comunque conosco le basi del linguaggio quella è una piccola parte ma il resto non centra nulla
aaa
05/11/18 20:47
Mikelius
head mostra la parte iniziale (cioè dall'inizio fino a un certo punto) del file quindi non va bene.
dovresti trovare una SC che "legga" invece che da stdin dal file..... oppure reindirizzare la lettura di una SC da file...

P.s. (ti ho dato una soluzione)
aaa
05/11/18 20:57
alessio3miliardi
grazie infinite, scusate la mia inesperienza è che non ho mai avuto modo di parlare con altri programmatori o ti attingere a dei forum(perchè non he ho mai avuto assoluto bisogno) perciò vi ringrazio per l'infinita pazienza
aaa