Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

Polestar 3 Performance, test drive: comodità e potenza possono convivere
Polestar 3 Performance, test drive: comodità e potenza possono convivere
Abbiamo passato diversi giorni alla guida di Polestar 3, usata in tutti i contesti. Come auto di tutti i giorni è comodissima, ma se si libera tutta la potenza è stupefacente
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026
In occasione del proprio Architecture Deep Dive 2025 Qualcomm ha mostrato in dettaglio l'architettura della propria prossima generazione di SoC destinati ai notebook Windows for ARM di prossima generazione. Snapdragon X2 Elite si candida, con sistemi in commercio nella prima metà del 2026, a portare nuove soluzioni nel mondo dei notebook sottili con grande autonomia
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
DJI Mini 5 Pro porta nella serie Mini il primo sensore CMOS da 1 pollice, unendo qualità d'immagine professionale alla portabilità estrema tipica di tutti i prodotti della famiglia. È un drone C0, quindi in un peso estremamente contenuto e che non richiede patentino, propone un gimbal rotabile a 225 gradi, rilevamento ostacoli anche notturno e autonomia fino a 36 minuti. Caratteristiche che rendono il nuovo drone un riferimento per creator e appassionati
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-07-2007, 14:22   #1
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
[SHELL] + comandi x linea è possibile?

Esperti di Shell a me!
Dite che è possibile dare + comandi x linea di comando?
Ne sto parlando QUI, perchè poi vorrei mandare la riga in esecuzione con questo codice C:
Quote:
// inizializzo la stringa vuota col carattere \0
memset(comando, 0, SIZEBUF);
sprintf(comando, "RIGA_DI_COMANDI");
printf("Lanciato comando> %s\n", comando);
system(comando);
PERCHE'
Tutto questo perchè devo creare dinamicamente una cartella data contenente altre cartelle che si verranno a creare, es: canale1, canale2, etc...

IN SOSTANZA
Quote:
Shell> mkdir ./data/canale1
, ma questo mi viene riconosciuto come sintatticamente errato.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 12-07-2007 alle 14:24.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 14:55   #2
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Fammi capire, vuoi che "mkdir" ti crei una gerarchia di directory multipla? (tipo /data/canale1 crea prima "/data" e poi "/data/canale1")

In quel caso basta dare "mkdir -p ./data/canale1" L'opzione -p fa proprio quello che cerchi.

Per lanciare + comandi da linea di comando basta comunque usare l'espressione "&&" tipo :

"tar xvzf programma-src.tar.gz && cd programma-src && ./configure && make && make install"

Scompatta , configura, compila e installa un programma

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 15:09   #3
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
In pratica tutto nasce da questo POST:
[C] System: "rm" di Linux diventa "del" su Win32?!

Ho fatto 1 "quasi-parser" RSS.
Cosa voglio?
Voglio che ora il parser crei dentro la cartella "data" le cartelle "canaleX" ogni qual volta incotra 1 canale RSS.
Ovviamente devo dargli un comando che con l'automatizzazione del programma non crei side-effect come piantarsi o far crashare il programma principale.

In sostanza ogni qual volta trovo 1 canale vorrei lanciare un "mkdir ./data/canaleX" dove mettere tutto il contenuto del canaleX.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 12-07-2007 alle 15:14.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 15:14   #4
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
Se per "gerarchia di directory multipla" intendi che da FileSystem pulito mi crei la cartella "canale1" dentro la cartella "data" si.

Ma al ciclo seguente ci sarà "canale2" da creare dentro "data".
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 15:19   #5
PLASMA
Member
 
Iscritto dal: Oct 2000
Città: Svizzera - Lugano
Messaggi: 122
non mi è chiarissimo cosa vuoi ottenere ma forse...

prova a lanciare:

> mkdir -p data/canale{1,2,3}/

e guarda cosa succede, forse è cio che cerchi!

ciao!
PLASMA è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 15:25   #6
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
Eh quello che chiedo è aimè sul confine programmazione/linux.

Voglio lanciare 1 comando shell con la funzione di C chiamata:
system("STRINGA DI COMANDO");

- Quando lo lancio il comando?
- Quando incontro un TAG-RSS.

- Che comando devo lanciare?
- Un comando che mi crei la cartella "canale1" dentro una cartella "data".

- Accorgimenti?
- Che alla II volta che ripete il loop la cartella "data" esistente non venga rimossa, ma solo riempita con un'altra cartella "canale2" e così via...

[NB]
Al (loop = 0) la cartella "data" NON esiste e devo crearla.
---

Adesso dovrei essere stato esaustivo no?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 12-07-2007 alle 15:28.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 15:33   #7
W.S.
Senior Member
 
L'Avatar di W.S.
 
Iscritto dal: Nov 2005
Messaggi: 1868
Quote:
Originariamente inviato da Matrixbob Guarda i messaggi
Eh quello che chiedo è aimè sul confine programmazione/linux.
Esagerato!

comunque se esegui
mkdir -p data/dirA
e poi
mkdir -p data/dirB

ottieni una cartella data con dentro dirA e dirB, se poi esegui
mkdir -p data/dirC
in data ci sarà anche dirC e così via...

eseguire mkdir -p data/dirA se data/dirA esiste già non è un problema, non solleva errori.
__________________
[ W.S. ]
W.S. è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 17:59   #8
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947


Mi sento mongolino.
Sono su WinXP e sto usando il MinGW ovvero il compilatore GCC x Winzoz.
Perchè NON riesco a creare ste cacchio di direcotry?
E' una limitazione della mia piattaforma?!
Codice:
void scaricare_enclosure(char *input)
{
extern char enclosure_nomefile[];
extern int canale_numero, count_item;
char comando[SIZEBUF];

// inizializzo la stringa vuota col carattere \0
memset(comando, 0, SIZEBUF);
sprintf(comando, "mkdir -p data/canale%d", canale_numero);
printf("Lanciato comando> %s\n", comando);
system(comando);

// inizializzo la stringa vuota col carattere \0
memset(comando, 0, SIZEBUF);
sprintf(comando, "wget \"%s\" -T 30 -o ./log/enclosure_item%d.log  -O ./data/canale%d/%s", input, count_item, canale_numero, enclosure_nomefile);
printf("Lanciato comando> %s\n", comando);
system(comando);
}
Sto cornutazzo mi crea anhe la directory "-p" e "data" e poi si pianta.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 12-07-2007 alle 18:06.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 19:10   #9
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
A chi interessa, pare che ho risolto così:
Codice:
// inizializzo la stringa vuota col carattere \0
memset(comando, 0, SIZEBUF);

#ifdef WIN32
printf("Rilevato SO Windows.\n");
sprintf(comando, "md .\\data\\canale%d", canale_numero);
#else
printf("Rilevato SO non Windows.\n");
sprintf(comando, "mkdir /p ./data/canale%d", canale_numero);
#endif

printf("Lanciato comando> %s\n", comando);
system(comando);
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 19:54   #10
PLASMA
Member
 
Iscritto dal: Oct 2000
Città: Svizzera - Lugano
Messaggi: 122
Quote:
Originariamente inviato da Matrixbob Guarda i messaggi
A chi interessa, pare che ho risolto così:
Codice:
printf("Rilevato SO non Windows.\n");
sprintf(comando, "mkdir /p ./data/canale%d", canale_numero);
se lanci "mkdir /p" non ti crea la dir "p" nella root del filesystem?
PLASMA è offline   Rispondi citando il messaggio o parte di esso
Old 12-07-2007, 19:59   #11
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9947
Quote:
Originariamente inviato da PLASMA Guarda i messaggi
se lanci "mkdir /p" non ti crea la dir "p" nella root del filesystem?
Si, adesso che guardo si.

Ora lo lancio così:
Quote:
mkdir dir1/dirA
mkdir dir1/dirB
e le crea.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Polestar 3 Performance, test drive: comodità e potenza possono convivere Polestar 3 Performance, test drive: comodit&agra...
Qualcomm Snapdragon X2 Elite: l'architettura del SoC per i notebook del 2026 Qualcomm Snapdragon X2 Elite: l'architettura del...
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice Recensione DJI Mini 5 Pro: il drone C0 ultra-leg...
ASUS Expertbook PM3: il notebook robusto per le aziende ASUS Expertbook PM3: il notebook robusto per le ...
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
ESA: rilevati 40 mila asteroidi vicino a...
La batteria salva fabbriche di EQORE ott...
SpaceX Starship: iniziati i test della t...
Datacenter IA nello spazio entro 5 anni,...
Telescopio spaziale James Webb: rilevato...
Ericsson Mobility Report: nel 2025 il 5G...
PLAI DEMO DAY: si chiude il secondo cicl...
Google rilascia Nano Banana Pro: il nuov...
ChatGPT si rinnova ancora: disponibile l...
Ring lancia super sconti di Black Friday...
Black Friday 2025: 450 euro di sconto su...
Tutte le offerte Blink in un unico posto...
OpenAI e Foxconn uniscono le forze per r...
Ricarica delle auto elettriche in 3 minu...
Lucid presenta Gravity Touring, il SUV e...
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: 21:03.


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