Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Altri Linguaggi - shell scripting gestione file
Forum - Altri Linguaggi - shell scripting gestione file

Avatar
alessio3miliardi (Member)
Newbie


Messaggi: 9
Iscritto: 12/10/2018

Segnala al moderatore
Postato alle 21:42
Domenica, 04/11/2018
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

PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1164
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 23:36
Domenica, 04/11/2018
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.

PM Quote
Avatar
alessio3miliardi (Member)
Newbie


Messaggi: 9
Iscritto: 12/10/2018

Segnala al moderatore
Postato alle 15:43
Lunedì, 05/11/2018
Codice sorgente - presumibilmente Delphi

  1. echo -n percorso:
  2.  
  3. read percorso
  4.  
  5. #scrittura sul file
  6.  
  7. #percorsi.txt
  8. a=$(wc --lines percorsi.txt | egrep -o '[0-9]*')
  9.  
  10.  
  11.  
  12. for ((i=1;i<$a;i+=1))
  13. do
  14.        
  15.        
  16.         pri=$(head -$i percorsi.txt)
  17.        
  18.         echo -n $i') '
  19.  
  20.         echo $pri
  21. done;
  22.  
  23. 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 il 05/11/2018 alle 20:47
PM Quote
Avatar
Mikelius (Member)
Expert


Messaggi: 455
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 20:13
Lunedì, 05/11/2018
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 il 05/11/2018 alle 20:14


"Io ne ho viste cose che voi umani non potreste immaginarvi...."
PM Quote
Avatar
alessio3miliardi (Member)
Newbie


Messaggi: 9
Iscritto: 12/10/2018

Segnala al moderatore
Postato alle 21:18
Lunedì, 05/11/2018
$percorso lo salvo in un file ma il salvataggio l'ho tralasciato quello non da problemi

PM Quote
Avatar
alessio3miliardi (Member)
Newbie


Messaggi: 9
Iscritto: 12/10/2018

Segnala al moderatore
Postato alle 21:22
Lunedì, 05/11/2018
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

PM Quote
Avatar
Mikelius (Member)
Expert


Messaggi: 455
Iscritto: 14/04/2017

Segnala al moderatore
Postato alle 21:47
Lunedì, 05/11/2018
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)


"Io ne ho viste cose che voi umani non potreste immaginarvi...."
PM Quote
Avatar
alessio3miliardi (Member)
Newbie


Messaggi: 9
Iscritto: 12/10/2018

Segnala al moderatore
Postato alle 21:57
Lunedì, 05/11/2018
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

PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1164
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 23:39
Lunedì, 05/11/2018
Ma ti serve per forza salvare i percorsi nel file?

PM Quote