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

Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Lenovo ha lanciato il ThinkTab X11 rimettendo piede nel segmento dei tablet Android con il marchio Think dopo oltre un decennio di assenza. Il risultato è un dispositivo che prende una direzione precisa: massima dotazione funzionale, costruzione resistente, autonomia fuori dagli schemi
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI è l'appuntamento annuale con il quale l'azienda americana mostra quelle che sono le proprie novità dal versante datacenter. Tra piattaforma Helios, GPU Instinct MI455X e processori EPYC di sesta generazione tutto quello che serve per processare l'IA sempre più complessa ed esigente
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
BOOX Go 6 Gen II porta per la prima volta il supporto allo stilo su un e-reader da 6 pollici, affiancando 3 GB di RAM al collaudato Snapdragon 665 e un design rivisto con scocca posteriore a costolature. Su carta la proposta è interessante, ma Android 11 fuori supporto, l'assenza di un alloggiamento per il pennino e un'autonomia ridotta rispetto agli e-reader tradizionali sono i compromessi da accettare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-04-2008, 17:16   #1
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
script unix aiuto

allora raga

devo scrivere uno script shell che prende in
input:
primo argomento: un nome di directory;
secondo argomento: una stringa.
Visualizza
i nomi dei file contenuti nella directory
specificata, il cui contenuto include la stringa.

io per ora ho fatto questo codice

#!/bin/bash
for x in `ls`
do
if (egrep ciao $x)
then
echo $x
fi
done

che mi trova la stringa ciao cercando nei file della cartella è funziona

l'unica cosa e che non so come far prendere in input una specifica directory ed una specifica stringa

mi date una mano?
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 18:03   #2
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Fai prima ad usare l'opzione -l di grep che stampa il nome del file senza far vedere i vari match.
Codice:
grep -l 'STRINGA' cartella/*
ciao
VICIUS è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2008, 18:21   #3
leuzr0x
Member
 
Iscritto dal: Nov 2007
Città: Ginevra
Messaggi: 256
Comunque gli argomenti li ritrovi con $n dove n e' un intero > 0.
$1 e $2 nel tuo caso
leuzr0x è offline   Rispondi citando il messaggio o parte di esso
Old 12-04-2008, 10:16   #4
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
ho risolto

esempio

./mioscript.sh ~/directory parola
per i valori invece

se i valori in ingresso sono a b
./mioscript.sh a b

ora ho un altro problema

diciamo che voglio passare due numeri e fare la somma
quindi

./mioscript.sh 3 4

#!/bin/sh
echo $1 + $2

me li vede come due caratteri e mi restituisce 3 + 4

invece di scrivere 7

sapete come fare?

Ultima modifica di *MATRIX* : 12-04-2008 alle 10:20.
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 12-04-2008, 10:41   #5
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
come non detto risolto

echo $(($1+$2))
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 12-04-2008, 11:37   #6
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
ragazzi ho bisogno nuovamente di voi

allora se inserisco una stringa il programma mi deve restituire true altrimenti false

come si fa la verifica che il dato inserito è un a stringa o un numero?
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 12-04-2008, 12:45   #7
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
ragazzi qualche idea?

devo semplicemente dire

if $1 è una stringa allora true

ma qual'è la sintassi?

HELP
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 13-04-2008, 09:47   #8
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
dalla versione 3 bash supporta l'operatore =~ negli if per fare il match con una regex.


se vuoi qualcosa che funzioni ovunque:


if echo "$1" |grep -E '^[0-9]+$'
then
# è composto da soli numeri
else
# è vuoto o ci sono altri caratteri
fi
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 13-04-2008, 11:30   #9
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
Quote:
Originariamente inviato da kingv Guarda i messaggi
dalla versione 3 bash supporta l'operatore =~ negli if per fare il match con una regex.


se vuoi qualcosa che funzioni ovunque:


if echo "$1" |grep -E '^[0-9]+$'
then
# è composto da soli numeri
else
# è vuoto o ci sono altri caratteri
fi
devo provare solo una cosa quel +$ non l'ho capito
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 13-04-2008, 19:01   #10
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da *MATRIX* Guarda i messaggi
devo provare solo una cosa quel +$ non l'ho capito
il pattern dice di cercare 1 o più occorrenze del set [0-9] (ossia tutti i numeri) e null'altro.
il grep torna 0 (true) se lo trova o false in caso il pattern non sia trovato nella stringa in input.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 13-04-2008, 23:00   #11
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
ho solo un dubbio

se metto in input
123ciao

questa è una stringa
ma mi direbbe che è un numero dato che inizia con un numero

come si può risolvere?
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
Old 13-04-2008, 23:17   #12
leuzr0x
Member
 
Iscritto dal: Nov 2007
Città: Ginevra
Messaggi: 256
Questo e' un esempio piu' carino per riconoscere un numero (trovato con 2 click su google eh )

Codice:
echo -en "Please guess the magic number: "
read X
echo $X | grep "[^0-9]" > /dev/null 2>&1
if [ "$?" -eq "0" ]; then
  # If the grep found something other than 0-9
  # then it's not an integer.
  echo "Sorry, wanted a number"
else
  # The grep found only 0-9, so it's an integer. 
  # We can safely do a test on it.
  if [ "$X" == "7" ]; then
    echo "You entered the magic number!"
  fi
fi
leuzr0x è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2008, 07:44   #13
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da *MATRIX* Guarda i messaggi
ho solo un dubbio

se metto in input
123ciao

questa è una stringa
ma mi direbbe che è un numero dato che inizia con un numero

come si può risolvere?
l'hai provato?
perchè la regexp NON fa il match con 123ciao
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 17-04-2008, 17:09   #14
*MATRIX*
Senior Member
 
Iscritto dal: Aug 2005
Messaggi: 439
tutto ok va bene
*MATRIX* è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader Tascabile e con Android: BOOX Go 6 Gen II &egrav...
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro Recensione Lenovo Idea Tab Plus: il tablet da 12...
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea Oltre il contante e le crypto: tutto sull'Euro D...
Lefant M210 Omni a 265,99€: il robot sli...
Paramount sospende la fusione con Warner...
Migliaia di PC portatili su Amazon, ma s...
SIHOO B100 a 169,99€ ma ha una rivale lo...
NVIDIA conquista anche la Luna: c'&egrav...
3 Samsung Galaxy in offerta su Amazon: S...
Volvo EX60, primo test drive: ammiraglia...
SpaceX ha lanciato il razzo spaziale Sta...
Anthropic lancia Claude Opus 5: eclissa ...
Batterie a terra per Varta, bancarotta v...
Elon Musk: l'intelligenza artificiale su...
Ryzen 7 9800HX3D: il miglior processore ...
Google porta Gemini Live sui vecchissimi...
Corsair Platform:4 in offerta: la scriva...
Il creatore di Disagea sull'addio dei gi...
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: 08:36.


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