 |
plafo |
| [QUOTE][i]Originally posted by mjfan80 [/i]
... |
27-01-2008 18:59 |
|
 |
plafo |
.illuminato.
Registered: Nov 2004
Posts: 236 (0.03 al dì)
Location: Milano
Corso: informatica
Anno: terzo
Time Online: 4 Days, 20:03:23 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mjfan80
dopo provo a fare quell'esercizio e ti dico
cmq con il grep senza l'opzione -i dovrebbe essere CASE SENSITIVE
quindi se tu fai grep -i "copyright" dovresti fare la ricerca in maniera non case sensitive come richiesto
ma all'esame potremo usare mined?
io fino ad ora ho usato quello
ok grazie
io ho provato lab solo a settembre e si usava elvis....
ho provato con perEsame.qcow e mi da lo stesso errore!
esistono soluzioni alternative????
|
|
27-01-2008 18:59 |
|
|
|  |
 |
bill76 |
| [QUOTE][i]Originally posted by plafo [/i]
... |
27-01-2008 19:00 |
|
 |
bill76 |
Apprendista Dottore

Registered: May 2003
Posts: 368 (0.04 al dì)
Location: Mariano Comense (Co)
Corso: Informatica
Anno: #Error#
Time Online: 10 Days, 7:21:31 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by plafo
non so quale sia quella che si usa all'esame ma il tuo stesso problema l'ho avuto durante l'esame!!!!
avevo un esercizio simile al tuo dove dovevo cercare la parola copyright all'interno dei file e mi ha dato lo stesso errore che hai segnalato mentre a casa funzionava. Ora provo anch'io a scaricare perEsame.qcow e vediamo che viene fuori.
Domanda:
-calcolare la somma della dimensione dei file eseguibili che hanno all'interno la parola copyright non sensitive.
Come faccio ad effettuare una ricerca in modo non sensitive oppure al contrario sensitive?
Grazie
Scusate come faccio a sapere se un file è eseguibile?
Lo cerco in /bin ?
Grazie mille
__________________
Poca osservazione e molto ragionamento portano all’errore,
molta osservazione e poco ragionamento conducono alla verità
|
|
27-01-2008 19:00 |
|
|
|  |
 |
mjfan80 |
| per ecercare un eseguibile (però è stato detto p ... |
27-01-2008 19:38 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
per ecercare un eseguibile (però è stato detto più volte) fai così
code:
find / -type f | xargs ls -lF | tr -s ' ' ' ' | cut -d ' ' -f 5,9 | grep "\*$"
dove ls -F mette in fondo al nome del file alcuni simboli... mette un * se è eseguibile
qunidi con tr ' ' ' ' comprimo tutti gli spazi
con cut, con delimitatore lo spazio (-d ' ') selezioni i csmapi 5 e 9 (PID e SIZE) e poi estraggo le linee che hanno * alla fine (devo mette \ davanti a * per farlo interpretare bene... e il $ significa "cerca in fondo alla riga"
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
|
|
27-01-2008 19:38 |
|
|
|  |
 |
Babbuzzo |
| [QUOTE][i]Originally posted by mjfan80 [/i]
... |
27-01-2008 20:18 |
|
 |
Babbuzzo |
.amico.

Registered: Feb 2006
Posts: 36 (0.00 al dì)
Location:
Corso: Informaticaz
Anno:
Time Online: 1 Day, 10:24:52 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mjfan80
con man rev non succede nulla
e nemmeno cercando sul sito di minix tra le man
http://www.minix3.org/manpages/
rev non esiste
Esiste
Non c'è un manuale del rev, per questo è nella documentazione del sito di laboratorio.
1 - LINK
2 - ESEMPIO
__________________
Tommy: signor o'neill...
Micky: cazzo parli? kama micky
Tommy:come va?
Micky: beh dazza ci pai ma cavalli, sai...[...] porcocul! cicco zisiloi! sei grosso! hey babbuzzi:pazo grosso!
Last edited by Babbuzzo on 27-01-2008 at 20:22
|
|
27-01-2008 20:18 |
|
|
|  |
 |
mjfan80 |
| [QUOTE][i]Originally posted by plafo [/i]
... |
27-01-2008 20:26 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by plafo
Domanda:
-calcolare la somma della dimensione dei file eseguibili che hanno all'interno la parola copyright non sensitive.
Grazie
ho provato questa soluzione
sembra funzionare, correggetela se vedete errori
code:
1 #!/bin/sh
2 for ESEG in $(find / -type f | xargs ls -lF | tr -s ' ' : | cut -d : -f 5,9 | grep "\*$"); do
3 PROG=$(echo $ESEG | cut -d : -f 2)
4 SIZE=$(echo $ESEG | cut -d : -f 1)
5 if grep -is copyright $PROC: then
6 SUM=$(exec $SUM + SIZE)
7 fi
8 done
9 echo "somma degli eseguibili con l'occorrenza di parola copyright = $SUM KB"
2: qui è bella lunga... come detto prima ls -F mette in fondo al nome del file una * se è eseguibile
2: tr -s ' ' : sostituisce gli spazio con i :
2: cut... l'opzione -d sceglie il delimitatore (i due punti) e -f scegli i campi 5 e 9 (size e nome file)
2: con il grep cerchi le occorrenze degli * nelle righe, con $ gli dici "inj fondo alla riga", * deve essere messo dopo una \ per essere correttamente interpretato
3: metto in PROG la seconda parte della riga appena trovata, quindi il nome file
4: stessa cosa ma con il size
5: cerco in ogni processo l'occorrenza della parola copyright... questo è particolare, perchè if, se non ho capito male, fa l'operazione dopo il then se lo stato dell'istruzione dopo l'if restituisce 0 (che in linux significa successo)... grep resituisce 0 se trova l'occorrenza... quindi questo comando "grep copyright file" da zero se in file c'è un'occorrenza della stringa copyright.... l'opzione -i dice "NON CASE SENSITIVE", l'opzione -s sopprime l'outpus... ci interessa solo lo stato della funzione non l'output
6: se trovga occorrenza fa la somma
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
Last edited by mjfan80 on 28-01-2008 at 11:06
|
|
27-01-2008 20:26 |
|
|
|  |
 |
plafo |
| for vs while |
28-01-2008 08:52 |
|
 |
plafo |
.illuminato.
Registered: Nov 2004
Posts: 236 (0.03 al dì)
Location: Milano
Corso: informatica
Anno: terzo
Time Online: 4 Days, 20:03:23 [...]
Status: Offline
Edit | Report | IP: Logged |
for vs while
leggendo nelle pagine precedenti di problemi con l'utilizzo di for (in caso di ciclo su tanti file può andare in out of space) ho provato a "convertire" i vari script fatti introducendo while ma non mi è molto chiaro il funzionamento:
ad esempio....
for FILE in $(find / -type f -size +10 | xargs du -s); do
echo $FILE
done
come potrebbe essere tradotto utilizzando il while????
grazie
|
|
28-01-2008 08:52 |
|
|
|  |
 |
mjfan80 |
| [QUOTE][i]Originally posted by Assochespasso [/i]
... |
28-01-2008 19:20 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Assochespasso
Okkio che così trovi anche tutte le cartelle e file nascosti ( del tipo .cartella o .file).
Ho fatto uno script simile al tuo, escludendo cartelle e file nascosti:
find / -type f -name *.* | tr -s '/' ' ' | rev | cut -d ' ' -f 1 | rev | grep -v "^\." | rev | cut -d '.' -f 1 -s | rev | sort | uniq -c
find / -type f -name *.* cerco tutti i file che contengono un punto nel nome del file (i file trovati sono completi di path ad es. /root/prova/file)
tr -s '/' ' ' spazi al posto di /
rev stampo il nome del file al contrario
cut -d ' ' -f 1 estraggo il primo campo (è il nome del file al contrario). In questo modo ho il nome del file senza path
rev ristampo il nome del file "dritto"
grep -v "^\." escludo tutti i file che INIZIANO con un punto (sono quelli nascosti)
rev non lo ripeto più
cut -d '.' -f 1 -s estraggo il primo campo. Così ho l'estensione del file
rev
sort ordino le estensioni in ordine alfabetico, così posso eliminare le ripetizioni con uniq
uniq -c per ogni estensione ho il numero di ripetizioni
io ho provato a rifarlo un pochino
non capisco l'utilità di mettere il -name -name *.*, secondo me è meglio farlo dopo... bho forse si capisce meglio
cmq l'ho riscritto così, con uno script, in modo che stampi alla fine anche il numero di estensioni (quella linea di codice dice il numero di file per ogni estensione, non il numero di estensioni
code:
#!/bin/sh
find / -type f | rev | cut -d / -f 1 | rev | grep -v "^\." | grep "\." | rev | cut -d '.' -f 1 | sort | uniq –c >> temp.txt
echo "queste sono le estensioni del sistema e il numero di file ad esse associate:"
cat temp.txt
echo "nel sistema ci sono $(wc -l temp.txt | tr - s ' ' : | grep -d : -f 2) estensioni"
rm temp.txt
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
|
|
28-01-2008 19:20 |
|
|
|  |
 |
Liumberg |
| scusate la mia ignoranza..
... |
29-01-2008 05:56 |
|
 |
Liumberg |
nervoso..sempre
Registered: Oct 2002
Posts: 53 (0.01 al dì)
Location: Bregnano -CO-
Corso: laurea triennale informatica
Anno: 3
Time Online: 1 Day, 2:08:00: [...]
Status: Offline
Edit | Report | IP: Logged |
scusate la mia ignoranza..
perchè mai un ciclo for semplicissimo tipo:
for ((I=0; I<10; I++));do
echo "ciao"
done
da il seguente errore:
Syntax error: Bad for loop variable
forse perchè uso sh e non bash?
minix all'esame cosa ha?sh o bash?
grazie
|
|
29-01-2008 05:56 |
|
|
|  |
 |
mjfan80 |
| perchè il for non si fa così, che io sappia
... |
29-01-2008 07:32 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
perchè il for non si fa così, che io sappia
ma for i in lista
do
done
ho detto una cazzata, scusate
con (( )) si può usare anche una sintassi così proposta
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
Last edited by mjfan80 on 29-01-2008 at 20:01
|
|
29-01-2008 07:32 |
|
|
|  |
 |
bullet |
| Ciao A Tutti...
... |
29-01-2008 09:12 |
|
 |
bullet |
.fedelissimo.
Registered: Oct 2004
Posts: 44 (0.01 al dì)
Location: busnago
Corso: informatica
Anno: 2
Time Online: 11:13:32 [...]
Status: Offline
Edit | Report | IP: Logged |
Ciao A Tutti...
C'è qualche bravissima simpaticissima intelligentissima persona che mi puo spigare bene come si fa ad aggiungere 10 utenti da file.
il file che viene passato contiene solo nomi oppure è della forma di etc/passwd ??
i dati passati oltre a modificare etc/passwd , dove mettono la password ? in etc/shadow?
perchè se apro etc/shadow con elle oppure elvis non c'è dentro nulla?
vi sarei immensamente grato se mi rispondete....
GRazie mille a tutti cmq per questo thread..
ciao ciao
|
|
29-01-2008 09:12 |
|
|
|  |
 |
mjfan80 |
| lo script è ben proposto qualche post indietro
... |
29-01-2008 09:17 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
lo script è ben proposto qualche post indietro
il file contiene questo
nomeutente gruppo directory home
esattamente quello che va passato a "adduser", che fa tutto lui, cioè aggiorna lui sia /etc/passwd sia /etc/shadow
(posto ovviamente che l gruppo esista)
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
|
|
29-01-2008 09:17 |
|
|
|  |
 |
bullet |
| Grazieee mille mi metto al lavoro per provare hiih ... |
29-01-2008 09:21 |
|
 |
bullet |
.fedelissimo.
Registered: Oct 2004
Posts: 44 (0.01 al dì)
Location: busnago
Corso: informatica
Anno: 2
Time Online: 11:13:32 [...]
Status: Offline
Edit | Report | IP: Logged |
Grazieee mille mi metto al lavoro per provare hiihh
|
|
29-01-2008 09:21 |
|
|
|  |
 |
bill76 |
| Qualcuno può postare le domende di laboratorio fa ... |
29-01-2008 20:08 |
|
 |
bill76 |
Apprendista Dottore

Registered: May 2003
Posts: 368 (0.04 al dì)
Location: Mariano Comense (Co)
Corso: Informatica
Anno: #Error#
Time Online: 10 Days, 7:21:31 [...]
Status: Offline
Edit | Report | IP: Logged |
Qualcuno può postare le domende di laboratorio fatte a Settembre?
Grazie mille
__________________
Poca osservazione e molto ragionamento portano all’errore,
molta osservazione e poco ragionamento conducono alla verità
|
|
29-01-2008 20:08 |
|
|
|  |
 |
mjfan80 |
| ho provato a fgare l'esercizio di
... |
29-01-2008 21:21 |
|
 |
mjfan80 |
.consigliere.
Registered: Nov 2001
Posts: 140 (0.02 al dì)
Location: Vallecamonica (BRESCIA)
Corso: Informatica quinquennale
Anno: 5°? 6°? 7°? bho
Time Online: 19:22:16 [...]
Status: Offline
Edit | Report | IP: Logged |
ho provato a fgare l'esercizio di
"per ogni utente trova l'occupazione in memoria" usando il while al posto del for, per il find
ma non mi va, o meglio, va, ma l'output no
code:
#!/bin/sh
for UID in $(cut /etc/passwd -d : -f 3); do
echo "sto calcolando lo spazio per l'utente $UID"
SUM=0
find / -type f -user $UID | while read FILE; do
echo "file = $FILE"
SIZE=$(ls -l $FILE | tr -s ' ' ' ' | cut -d ' ' -f 5)
echo "SIZE=$SIZE"
SUM=$(expr $SUM + $SIZE)
echo "sum = $SUM"
done
echo "l'utente $UID occupa in totale $SUM Kb"
echo "size = $SIZE sum= $SUM"
done
escludendo che il SIZE era più facile trovarlo con du
ma come mai l'esecuzione logica va (infatti mi elenca ogni utente, ogni file dell'utente e mano a mano vedo il sum aumentare) ma poi alla fine mi stampa
SUM = 0 SIZE = (non stampa nulla)
come se il while fosse una funzione, che ha variabili interne
perchè???
__________________
Heal The World
Just Because You Read It In A Magazine Or You See It On A Tv Scren Don't Make It Factual
|
|
29-01-2008 21:21 |
|
|
|  |
 |
Liumberg |
| scusate..
... |
30-01-2008 07:49 |
|
 |
Liumberg |
nervoso..sempre
Registered: Oct 2002
Posts: 53 (0.01 al dì)
Location: Bregnano -CO-
Corso: laurea triennale informatica
Anno: 3
Time Online: 1 Day, 2:08:00: [...]
Status: Offline
Edit | Report | IP: Logged |
scusate..
sto cercando di risolvere il problema "out of space" dei cicli FOR
usando while,il problema è che il sistema sembra dimenticare il contenuto delle variabili che vengono usate appena si esce da ciclo
nel seguente script (calcola lo spazio occupato dall'utente root) il valore della variabile TEMP alla fine è sempre 0.
TEMP=0
find ./ -type f -user root|xargs du|cut -f 1|while read FILE
do
TEMP='expr $TEMP \+ $FILE'
done
echo "occupazione utente root : $TEMP"
qualcuno sa aiutarmi?
ho paura che domani mi prendo una denuncia per aggressione..
|
|
30-01-2008 07:49 |
|
|
|  |
 |
| All times are GMT. The time now is 05:39. |
|
|
 |
|
 |
|
|
|  |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|