The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
ersetzen charandevu Shell Programmierung und Scripting 6 04-07-2008 12:30 PM
So ersetzen Sie in Vi ravi.sadani19 Shell Programmierung und Scripting 5 06-25-2007 10:30 AM
Ersetzen Sie \ n mit \ r \ n Chanakya.m Shell Programmierung und Scripting 3 07-19-2006 08:20 AM
Wie zu ersetzen mit SED? Mahatma Shell Programmierung und Scripting 4 03-23-2006 03:04 PM
Ersetzen Sie jda2001 UNIX for Dummies Questions & Answers 2 09-06-2005 03:20 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 Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 01-15-2008
naikaa naikaa is offline
Registrierte Nutzer
  
 

Join Date: Jan 2008
Beiträge: 2
Letzte ersetzen / mit |

Max:

Ich möchte, dass sich an, um einen Kshell-Skript, welches an die Stelle letzten / mit |.

zB: / home / apps / test / Dokument ersetzt werden soll, wie / home / apps / test | Dokument.

Die Länge der Zeichenkette ist nicht konstant.

Danke,
Ash
  #2 (permalink)  
Old 01-15-2008
ghostdog74 ghostdog74 is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Sep 2006
Beiträge: 2553
Code:
# echo "/home/apps/test/document" | sed 's/^\(.*\)\/\(.*\)/\1\|\2/'
/home/apps/test|document

Zuletzt bearbeitet von ghostdog74; am 01-15-2008 05:38 AM..
  #3 (permalink)  
Old 01-15-2008
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Join Date: März 2005
Ort: Irland
Posts: 4236
Code:
sed 's_/\([^/]+\)$_|\1_'
  #4 (permalink)  
Old 01-15-2008
drl's Avatar
DRL drl is offline Forum Advisor  
Registrierte Nutzer
  
 

Join Date: Apr 2007
Ort: Saint Paul, MN USA / BSD, CentOS, Debian, OS X, Solaris
Beiträge: 712
Hi.
Zitat:
Zitat von reborg View Post
Code:
sed 's_/\([^/]+\)$_|\1_'
Ich brauchte für die Verwendung von "*" anstelle von "+". Einige Versionen von sed Möglicherweise müssen "-r", um erweiterte reguläre Ausdrücke verwenden, in denen die parens müssen auch geändert:
Code:
#!/bin/sh -

# @(#) user2    Demonstrate replacement of last specific character, sed.

sed --version | head -1

echo
echo " Original:"
echo "/home/apps/test/document" |
sed 's_/\([^/]+\)$_|\1_'

echo
echo " Modified:"
echo "/home/apps/test/document" |
sed 's_/\([^/]*\)$_|\1_'

echo
echo " Original with -r:"
echo "/home/apps/test/document" |
sed -r -e 's_/([^/]+)$_|\1_'

exit 0
Herstellung:
Code:
% ./user2
GNU sed version 4.1.2

 Original:
/home/apps/test/document

 Modified:
/home/apps/test|document

 Original with -r:
/home/apps/test|document
Es gibt (zu) viele Versionen von sed, So muss man wissen, welche Version man benutzt. Zum Beispiel, wenn Sie aus dem "\ (", "\)" in der 3. Beispiel, würden Sie eine Fehlermeldung, "Ungültiger Verweis \ 1", nicht sehr informativ, zumindest nicht direkt ... cheers, DRL
  #5 (permalink)  
Old 01-15-2008
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Join Date: März 2005
Ort: Irland
Posts: 4236
Tatsächlich, was ich zur Post war, aber hat abgelenkt durch ein awk-Skript:

Code:
sed 's_/\([^/][^/]*\)$_|\1_'
Wenn Sie etwas bedeuten, gefolgt von mindestens einem anderen Charakter, werden ausdrücklich.
  #6 (permalink)  
Old 01-15-2008
V3l0 V3l0 is offline
Registrierte Nutzer
  
 

Join Date: Nov 2007
Lage: Belgien und Frankreich
Beiträge: 70
Code:
cr=$(echo /tutu/tatat/titi/tutu | awk -F/ '{ print $NF; }')
echo /tutu/tatat/titi/tutu | sed -e 's/\/'$cr'$/|'$cr'/'
/tutu/tatat/titi|tutu
  #7 (permalink)  
Old 01-17-2008
naikaa naikaa is offline
Registrierte Nutzer
  
 

Join Date: Jan 2008
Beiträge: 2
Hi guyz:

Vielen Dank für Ihre Hilfe. Esp Reborg, habe ich Ihren Vorschlag, und es funktioniert sehr gut.

Danke!
Closed Thread

Lesezeichen

Tags
regex, reguläre Ausdrücke

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 01:09 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0