Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

SED replace mit dem Anfang eines Textes

Frage Entwicklung Batch & Shell

Mitglied: LLIILLAA

LLIILLAA (Level 1) - Jetzt verbinden

08.10.2013 um 13:03 Uhr, 922 Aufrufe, 3 Kommentare, 2 Danke

Hallo Forum,

schon wieder ein Problem.

Folgenden String habe ich:
01.
 /cgi-public/wms_inspire_bfg#ef.environment,test,bla
Diesen muss ich mit SED in folgendes formatieren:
01.
 /cgi-public/wms_inspire_bfg#ef.environment 
02.
 /cgi-public/wms_inspire_bfg#test 
03.
 /cgi-public/wms_inspire_bfg#bla 
Probiert habe ich es bisher so:
01.
 sed 's|,|\n^.\#|g' test
Leider klappt das nicht folgende Ausgabe:
01.
 /cgi-public/wms_inspire_bfg#ef.environment 
02.
 ^.#test 
03.
 ^.#bla
Ist mein Problem mit SED überhaupt lösbar?
Irgendwelche Ideen?

Schöne Grüße
Mitglied: colinardo
08.10.2013, aktualisiert um 14:56 Uhr
Hallo LLIILLAA,
kenne sed jetzt nicht so gut aber als Alternative hier eine Möglichkeit mit awk
echo '/cgi-public/wms_inspire_bfg#ef.environment,test,bla' | awk -F "#" '{split($2,terms,",");for(i=1;i<=length(terms);i++){print $1"#"terms[i]}};'
Grüße Uwe
Bitte warten ..
Mitglied: LLIILLAA
08.10.2013 um 15:21 Uhr
Hallo Uwe,

super, das klappt!
So habe ich das jetzt einfach übernommen.
Vielleicht klappt das ja mit sed garnicht.

Vielen, vielen Dank.
Bitte warten ..
Mitglied: Endoro
08.10.2013, aktualisiert um 16:05 Uhr
Hi, geht schon:
01.
sed -r 's|(.*\.\w+),.*|\1|' 
02.
sed -r 's|(.*#)\w+\.\w+,(\w+),.*|\1\2|' 
03.
sed -r 's|(.*#)\w+\.\w+,\w+,(\w+)|\1\2|'
lg.

PS: Wie colinardo schon schreibt, mit awk tut man sich hier leichter:
01.
 awk -F[#,.] '{print $1"#"$2"."$3"\n"$1"#"$4"\n"$1"#"$5}'
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

Hardware
gelöst PCI-Express-Adapterfrage (14)

Frage von DerWoWusste zum Thema Hardware ...