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, 934 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 ..
Ähnliche Inhalte
Neue Wissensbeiträge
Heiß diskutierte Inhalte
Multimedia & Zubehör
Laptop per HDMI an TV - einer geht, einer nicht (10)

Frage von dreizehneinhalb zum Thema Multimedia & Zubehör ...

Windows Server
gelöst Wechsel von Server 2016 GUI auf Core mit minimal server interface (10)

Frage von Fruehling2017 zum Thema Windows Server ...