Bash - Fixing CSVs That Contain Commas In The User-Agent
I have a file that looks like of like a web access log. The last column in the log is a User-Agent, and of course these can have commas in them. So, I needed to write a quick script that would run through the file and replace those commas - I chose to replace it with '_'
#!/bin/bash while read line; do if [[ $line == *"("* ]] #this string has a bracketed useragent! then useragent=`echo $line | cut -d"(" -f 2- | sed 's/,/_/g'` firstpiece=`echo $line | cut -d"(" -f 1` echo "$firstpiece($useragent" >> fixed-session.csv else #this string doesn't, so we pass it through! echo $line >> fixed-session.csv fi done < session.csv