The UNIX and Linux Forums  


Go Back   Les systèmes UNIX et Linux Forums > Top Forums > UNIX pour les nuls Questions et réponses
.
google unix.com



UNIX pour les nuls Questions et réponses Si vous ne savez pas où poster un UNIX ou Linux question, post it here. Tous les systèmes UNIX et Linux, débutants bienvenus!

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
quelqu'un peut-il m'aider à modifier ce fichier eamani_sun De programmation et de script Shell 2 05-22-2008 02:15 PM
Besoin d'aide pour modifier le prompt Mahatma De programmation et de script Shell 7 08-02-2006 04:45 AM
modification de ma coquille nico-hellas De programmation et de script Shell 1 08-05-2005 10:43 AM
modifier la rédaction d'un journal ... Nicol De programmation et de script Shell 2 04-13-2005 11:05 AM
Modification de la variable $ PATH dans le fichier / etc / profile Deepali UNIX pour les nuls Questions et réponses 3 03-12-2001 12:17 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-14-2008
kartikkumar84 @ g kartikkumar84@g is offline
Registered User
  
 

Join Date: Mai 2008
Messages: 17
Modification d'une valeur de variable

Salut à tous, comment puis-je modifier la valeur d'une variable.

var1 \u003d 'abcd efgh ijkl mnop abcd'

Comment puis-je obtenir var2 de var1

var2 \u003d$(......)
echo $ var2
abcd efgh ijkl mnop

i c'est-à-dire ont supprimé un double événement.

ou en général la façon de modifier une variable.

merci d'avance
  #2 (permalink)  
Old 05-14-2008
ère era is offline Forum Advisor  
Inutile de Herder Cats (en congé sabbatique)
  
 

Join Date: Mar 2008
Location: / il / est / que / bin / sh
Messages: 3652
Il n'est pas clair du tout ce concept que vous recherchez. Vous pourriez peut-être préciser un peu. En attendant, voici quelques exercices je l'espère utile.


Code:
var2=$var1   #copy var1 to var2
var2=${var2%abcd}  # trim abcd from end, if present
var2=`echo "$var2" | tr ' ' '\012' | sort | uniq | tr '\012' ' '` # remove duplicate tokens

Le jeton en double élimination est probablement très différente de ce que vous imaginer, il serait, et le malheureux effet secondaire de tri du reste des jetons. Dans ce cas, il n'a pas d'importance, parce qu'ils étaient déjà classés, mais ce n'est pas une bonne solution d'usage général si l'ordre des symboles est importante.

Peut-être que vous devriez lire un tutoriel sur la programmation shell, à ce point, il ya beaucoup de choses que vous pouvez faire avec substitution de variables ($ (var)% trim n'est qu'un seul exemple).
  #3 (permalink)  
Old 05-14-2008
kartikkumar84 @ g kartikkumar84@g is offline
Registered User
  
 

Join Date: Mai 2008
Messages: 17
salut ère

Je suis habitué à la programmation en Matlab et C + + et dans ces langues, vous pouvez vous référer à chacun des membres d'une variable (array) et de comparer leurs valeurs à tous les autres membres de l'utilisation de 2 boucles. Comment puis-je réaliser que dans unix. Par exemple

var2 \u003d $ (utilisateurs)

sera de retour les utilisateurs actuels, mais si un utilisateur est en cours d'exécution de deux instances d'un shell alors que le nom d'utilisateur sera retourné deux fois. Comment puis-je couper la variable $ var2 de sorte que de multiples occurrences de noms d'utilisateurs sont éliminés. Je peux utiliser une boucle pour faire une boucle par le biais de chaque membre de la variable, mais alors comment puis-je la compare au reste des noms d'utilisateurs dans $ var2.

Je veux parler de tutoriaux ainsi, mais la plupart d'entre eux jus expliquer la syntaxe des commandes. Je pense que je ne me réfère pas à la droite plus, va travailler sur tht.
  #4 (permalink)  
Old 05-14-2008
ère era is offline Forum Advisor  
Inutile de Herder Cats (en congé sabbatique)
  
 

Join Date: Mar 2008
Location: / il / est / que / bin / sh
Messages: 3652
En fait, mon sort | uniq exemple n'est pas si loin de la marque de l'époque.

Une variable classique dans Bourne est un morceau de texte, certains coquillages tels que bash et ksh ont variables de tableaux, aussi. La solution aurait été de modifier le texte de sorte qu'il est dans une forme appropriée au moment où vous l'assigner à une variable.


Code:
var2=$(users | sort | uniq)

  #5 (permalink)  
Old 05-14-2008
shamrock shamrock is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2007
Lieu: États-Unis
Messages: 753

Code:
var2=$(users | awk '{for(i=1; i<=NF; ++i) if(!a[$i]++) printf("%s ", $i)}')

  #6 (permalink)  
Old 05-22-2008
kartikkumar84 @ g kartikkumar84@g is offline
Registered User
  
 

Join Date: Mai 2008
Messages: 17
Citation:
var2 \u003d $ (utilisateurs | awk '(for (i \u003d 1; i <\u003d NF; i + +) if (! a [$ i] + +) printf ( "% s", $ i))')
Salut, Je vous remercie, cela fonctionne, il est possible de faire sans l'aide de sed ou awk.
Closed Thread

Bookmarks

Tags
awk, awk trim, trim, trim awk, commandes Unix

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 05:10 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