The UNIX and Linux Forums  


Go Back   Les systèmes UNIX et Linux Forums > Top Forums > De programmation et de script Shell
.
google unix.com



De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
Shell script pour la conversion de contenu d'un fichier en format CSV rish_max De programmation et de script Shell 5 02-06-2009 02:51 AM
convertir le type de données dans le script shell unix kmanivan82 De programmation et de script Shell 5 10-18-2008 02:07 PM
Conversion de script pour HTML davwel De programmation et de script Shell 3 10-25-2007 11:25 PM
Conversion Stirngs au numéro raman1605 De programmation et de script Shell 2 10-10-2007 06:34 AM
Conversion de Dos Shell script pour les fichiers darwinkna De programmation et de script Shell 1 05-12-2006 12:01 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 05-27-2009
amitanshu.verma amitanshu.verma is offline
Registered User
  
 

Join Date: Mai 2009
Messages: 2
Problème dans la conversion de numéro de script shell

Salut tous,

Je suis en train d'écrire un script shell dans lequel je veux convertir un certain nombre, comme:

Supposons que le nombre "98487657" et nous devons nous convertir à "98000000", ce que je veux faire est de conserver 2 premiers chiffres et de convertir tous les autres chiffres de "0".

Nombre pourrait être de n'importe quelle longueur (length> 2).



Merci d'avance
  #2 (permalink)  
Old 05-27-2009
Franklin52 Franklin52 is offline Forum Staff  
Modérateur
  
 

Join Date: Feb 2007
Posts: 4330
Avec awk:


Code:
echo '98487657' | awk '{printf("%d\n", substr($0,1,2) * 10^(length-2))}'

Observe
  #3 (permalink)  
Old 05-27-2009
amitanshu.verma amitanshu.verma is offline
Registered User
  
 

Join Date: Mai 2009
Messages: 2
Commande ci-dessus fonctionne parfaitement!

Merci encore une fois
  #4 (permalink)  
Old 05-27-2009
fpmurphy's Avatar
fpmurphy fpmurphy is offline Forum Staff  
Modérateur
  
 

Join Date: Dec 2003
Lieu: Florida
Posts: 1934
Pas besoin d'appeler une commande externe. Les ouvrages suivants, soit pour bash ou ksh93

Code:
$ NO=98487655
$ echo $NO
98487655
$ printf "%d\n" $((NO - ${NO:2}))
98000000

  #5 (permalink)  
Old 05-27-2009
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmeur, auteur
  
 

Join Date: Mar 2007
Lieu: Toronto, Canada
Posts: 2362

Dans n'importe lequel POSIX shell:


Code:
no=98487655
right=${no#??}
printf "%d%0${#right}d\n" "${no%"$right"}" 0

Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 06:18 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0