So trennen Sie Werte mit Kommas als Trennzeichen

So trennen Sie Werte mit Kommas als Trennzeichen

ich habe einen Code, der Werte trennt, die durch "," abgegrenzt sind, aber ich habe ein Problem mit dem Teil mit "to_date". Irgendeine Idee, wie ich das erreichen kann?

EINGANG

8363892,14932126,24,'ALL','Staff',to_date('04/17/2017 00:00:00','MM/DD/YYYY) HH24:MI:SS'),to_date('05/24/2017 23:59:59','MM/DD/YYYY HH24:MI:SS'

AUSGABE

8363892  
14932126  
24  
'ALL'  
'Staff'  
to_date('04/17/2017 00:00:00','MM/DD/YYYY) HH24:MI:SS')  
to_date('05/24/2017 23:59:59','MM/DD/YYYY HH24:MI:SS')  

Antwort1

Wenn das einzige „falsch“ positive Ergebnis, das Sie erhalten, das zwischen der Stunde und der Zeichenfolge MM/TT/JJJJ ist, können Sie dieses Komma in ein anderes Zeichen umwandeln, bevor Sie den Rest der Kommas durch einen Wagenrücklauf ersetzen, ich meine:

echo "8363892,14932126,24,'ALL','Staff',to_date('04/17/2017 00:00:00','MM/DD/YYYY) HH24:MI:SS'),to_date('05/24/2017 23:59:59','MM/DD/YYYY HH24:MI:SS'" | sed -e "s/','MM/';'MM/g" | tr ',' '\n'

Wenn Sie die Änderungen danach rückgängig machen möchten:

echo "8363892,14932126,24,'ALL','Staff',to_date('04/17/2017 00:00:00','MM/DD/YYYY) HH24:MI:SS'),to_date('05/24/2017 23:59:59','MM/DD/YYYY HH24:MI:SS'" |
sed -e "s/','MM/';'MM/g" |
tr ',' '\n' | 
sed -e "s/';'MM/','MM/g"

verwandte Informationen