Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
WF-1000X M6 è la sesta generazione di auricolare in-ear sviluppata da Sony, un prodotto che punta a coniugare facilità di utilizzo con una elevata qualità di riproduzione dei contenuti audio e una cura nella riduzione del rumore ambientale che sia da riferimento
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake ha presentato diverse novità per la sua piattaforma legate all'intelligenza artificiale. Quella forse più eclatante è una collaborazione con OpenAI, ma non mancano diverse nuove funzionalità che rendono la piattaforma più flessibile e in grado di rispondere meglio alle esigenze in continuo cambiamento delle aziende
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Con velocità teoriche fino a 11 Gbps, gestione tramite app intelligente e protezione avanzata dei dispositivi, Roamii BE Pro porta il Wi‑Fi 7 tri‑band nelle abitazioni più esigenti. Un sistema Wi-Fi Mesh proposto da MSI allo scopo di garantire agli utenti una rete fluida e continua capace di sostenere streaming 8K, gaming competitivo e le applicazioni moderne più esigenti in termini di banda
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-01-2016, 22:38   #1
Zifnab
Senior Member
 
Iscritto dal: Feb 2008
Città: Breme City ;-P
Messaggi: 429
Parsing di un file

Ciao a tutti.
Vi chiedo cortesemente un aiuto.
Nella mia azienda ci troviamo in una situazione un pò particolare. Vi spiego rapidamente. Dobbiamo installare un programma (uno schedulatore) che dovrà gestire tramite un agente installato su una macchina linux, il lancio di determinati job. Questi job al loro interno integrano la gestione di diverse schede parametro che vengono selezionate tramite determinate righe di controllo.

Ad esempio:
#rigacontrollo1
parametro1
#rigacontrollo2
parametro2
...
#rigacontrollofine

Lo schedulatore tramite l'agente passerebbe il parametro #JI,ID=x ma come si può fare il parsing di un file in queste condizioni e con quale linguaggio? Il vecchio sistema utilizzava dei programmi COBOL scritti apposta ma non possiamo riciclarli. Ho pensato di suggerire l'uso di Perl, è un suggerimento valido o voi avete consigli migliori? Se avete anche qualche esempio ve ne sarei molto grato.
Zifnab è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2016, 09:57   #2
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Perl va anche bene, ma da pythonista non me la sento di consigliartelo.

Realizzare il parsing di quel file con Python è abbastanza semplice, e se la struttura è ESATTAMENTE quella (leggi: non è possibile che ci siano errori: c'è una rigorosa alternanza delle righe in quel formato), te ne esci fuori con qualche riga di codice.

Però non chiedermi di scrivere il codice per te. Posso cercare di aiutarti affinché lo realizzi tu, nei limiti di tempo e delle mie conoscenze, ovviamente.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2016, 08:16   #3
GTKM
Senior Member
 
L'Avatar di GTKM
 
Iscritto dal: Jan 2014
Messaggi: 3826
Come ha già detto cdimauro, se il file ha quella struttura, il parsing in Python lo effettui con poche righe di codice. Ma anche in Perl, o in un altro linguaggio.

Quindi, il tutto è legato alle tue preferenze.
GTKM è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2016, 00:04   #4
Zifnab
Senior Member
 
Iscritto dal: Feb 2008
Città: Breme City ;-P
Messaggi: 429
Anzitutto grazie a entrambi per la risposta. La struttura esatta sarebbe più o meno questa (non l'ho scritta prima perchè non so quanti sappiano cos'è un JCL).

BEGINJOB

#JI,ID=1
parametro1
#JI,ID=2
parametro2
...
#JEND

LABEL name=STEP...
istruzione1
istruzione2
parametrox (derivata dalla selezione precedente)
EXECPGM ....

ENDJOB

Io non sono un programmatore al di là di script realizzati in shell bash, korn, ecc. però posso consigliare al fornitore (o eventualmente agli sviluppatori interni) di provare a sviluppare qualcosa in merito, all'ultima riunione c'era la possibilità che abbandonassero tutto per via di questo scoglio.
Zifnab è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2016, 06:43   #5
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
@Zifnab: non conosco JCL, ma concordo con coffe_killer, e ti faccio presente che l'esempio che hai fornito è certamente ben più complesso di quello che hai descritto prima.

Rimane ancora abbastanza semplice da eseguirne il parsing senza richiedere la scrittura di un vero e proprio parse, ma questo sempre che non salti fuori qualche altra cosa.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2016, 11:52   #6
Zifnab
Senior Member
 
Iscritto dal: Feb 2008
Città: Breme City ;-P
Messaggi: 429
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Ed è la prima volta che andiamo d'accordo su di una risposta

In ogni caso io ho usato JCL, COBOL e tecnologie legacy varie, l'ho fatto come primo lavoro finita l'università.
Per esperienza, presumo anche che zifnab lavori in ambito bancario-assicurativo, le realtà che ancora usano quei sistemi nel 2016, ed abbandonare quelle tecnologie per ora è abbastanza impensabile per loro, visti gli enormi costi che dovrebbe sostenere l'istituto, sicuramente più alti rispetto a quelli di gestione di quei dinosauri.

Non sei molto lontano dalla verità, in effetti lavoro (come consulente IT) presso una società assicurativa, però non è un vero mainframe IBM perchè MVS era stato migrato verso una piattaforma prima Solaris poi Linux su cui risiede un software di rehosting in grado di gestire programmi COBOL CICS/BATCH, le connessioni 3270 ecc.
I nostri JCL hanno una struttura piuttosto simile ai JCL veri e propri, ma le sintassi sono diverse, anche più semplici. E quindi appoggiandoci su una macchina linux possiamo disporre sia di Perl che di Python... e a proposito grazie a voi ho già suggerito questa ipotesi ai sistemisti (a dire il vero uno voleva provare l'uso di Bash ma mi sembra masochismo!!), oggi o domani ne parlo con i nostri quadri così iniziamo a verificare quanto e se si possa realizzare. Tranquilli, non vi chiedo di aiutarci, so che ci sarebbe da uscire pazzi... e poi loro vengono pagati per questo però grazie infinite a tutti e due per i suggerimenti!!!
Zifnab è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2016, 18:04   #7
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Ed è la prima volta che andiamo d'accordo su di una risposta
Niente di personale spero.
Quote:
Originariamente inviato da Zifnab Guarda i messaggi
E quindi appoggiandoci su una macchina linux possiamo disporre sia di Perl che di Python... e a proposito grazie a voi ho già suggerito questa ipotesi ai sistemisti (a dire il vero uno voleva provare l'uso di Bash ma mi sembra masochismo!!),
Cosa pretendi che ti risponda un sistemista? Bash! E se è in vena di autolesionismo, anche Perl può andare bene.

Digli di provare a realizzare qualcosa di decente, leggibile, e mantenibile: con Python.

Anche se la piattaforma è vecchia, potete modernizzarla un po' alla volta, quando capita l'occasione, come in questo caso. Ma evitate altre scelte sbagliate: errare humanum est, perseverare autem diabolicum.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2016, 21:14   #8
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Nono, anzi, la differente scuola di pensiero è ciò che rende questa sezione del foro interessante
Infatti un po' tutti apprendiamo cose nuove.

Devo dire che la partecipazione al forum in tutti questi anni mi ha consentito di ampliare il mio bagaglio culturale, e la mia esperienza. Tanta roba mi è stata molto utile a livello professionale, perché me la sono "rivenduta" nei progetti che ho realizzato, o nei colloqui che ho fatto.
Quote:
Esatto....con Python si fanno magie in pochissime righe. Mi chiedo perchè nelle università siano ancora così restii all'insegnamento.
Perché, paradossalmente, tante volte sono i centri più reazionari. Non c'è peggio dei docenti che hanno imparato l'uso di qualche strumento, e sono restii o terrorizzati all'idea di doverne imparare qualcun altro.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2016, 10:21   #9
GTKM
Senior Member
 
L'Avatar di GTKM
 
Iscritto dal: Jan 2014
Messaggi: 3826
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Esatto....con Python si fanno magie in pochissime righe. Mi chiedo perchè nelle università siano ancora così restii all'insegnamento.
Perché nelle Università pensano solo ad insegnare quelle 4 cose che fanno da cento anni.

Ancora si fanno approcciare i ragazzi alla programmazione con il C.
GTKM è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2016, 13:08   #10
Zifnab
Senior Member
 
Iscritto dal: Feb 2008
Città: Breme City ;-P
Messaggi: 429
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Niente di personale spero.

Cosa pretendi che ti risponda un sistemista? Bash! E se è in vena di autolesionismo, anche Perl può andare bene.

Digli di provare a realizzare qualcosa di decente, leggibile, e mantenibile: con Python.

Anche se la piattaforma è vecchia, potete modernizzarla un po' alla volta, quando capita l'occasione, come in questo caso. Ma evitate altre scelte sbagliate: errare humanum est, perseverare autem diabolicum.
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Nono, anzi, la differente scuola di pensiero è ciò che rende questa sezione del foro interessante



Esatto....con Python si fanno magie in pochissime righe. Mi chiedo perchè nelle università siano ancora così restii all'insegnamento.



Vero, ma modernizzare è una parola sconosciuta alla maggior parte dei senior dentro quel genere di istituti....quindi buona fortuna zif
Corretto, o meglio modernizzano i sistemi ma le procedure e i metodi rimangono rigidissimi. Più volte ho suggerito di modificare per migliorare (e velocizzare) le nostre procedure ma la mia team leader, donna di 50 e passa anni che ha lavorato sui veri mainframe, si rifiuta perchè in caso di "abend" (ABnormal ENDing) ufficialmente dice che "sono gli sviluppatori a dover migliorare i loro programmi COBOL" (ed in parte è pure vero ma se puoi le stesse cose in 10 step invece che in 20 e passa, non vedo il motivo di dover impiegare più tempo macchina che sottrae solo risorse ad altri impieghi) ma ufficiosamente è che non sarebbe più in grado di metterci le mani perchè lei ad esempio non conosce l'uso di un'istruzione 'sed' piuttosto che 'tr' per modificare il contenuto di un file. E il quadro che ci dirige non sa neanche cosa sia un JCL piuttosto che le piattaforme di scambio dati utilizzate....
Zifnab è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2016, 13:51   #11
Zifnab
Senior Member
 
Iscritto dal: Feb 2008
Città: Breme City ;-P
Messaggi: 429
Quote:
Originariamente inviato da coffe_killer Guarda i messaggi
Il problema di avere dei team di sviluppo coordinati da persone che di formazione tecnica non hanno niente.

La tua team leader sospetto che non conosca nulla che vada oltre il cobol.
veramente la mia TL non conosce neanche quello, non sa leggere un programma cobol, o uno script. Comandi shell oltre mv, cp, rm, touch e ls non sa andare (e vi come editor di testo ma giusto i comandi base).
Zifnab è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Project Windless: il nuovo action in esc...
Saros: mostrato il gameplay del gioco de...
God of War: Sons of Sparta annunciato e ...
John Wick torna in un nuovo videogioco a...
MADE chiude il 2025 con 59 partner e 250...
007 First Light: allo State of Play un n...
Gli iPhone su Amazon costano meno che su...
Credevi fosse un assistente IA, invece e...
God of War Trilogy Remake annunciato all...
Star Wars Galactic Racer mostra il gamep...
Legacy of Kain: Defiance Remastered annu...
Control Resonant si mostra allo State of...
Battlefield 6 Stagione 2: l'avanzata del...
Stop a umidità e muffa: deumidificatore ...
Trump l'anti-scientifico: la mossa per a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:19.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v