Date: Thu, 27 Sep 2001 00:21:34 -0400 From: "David S. Jackson" <dsj@sylvester.dsj.net> To: freebsd-questions@freebsd.org, ale@ale.org, kplug-list@kernel-panic.org Subject: regex w/ sed and bash expression Message-ID: <20010927002134.A30622@sylvester.dsj.net>
next in thread | raw e-mail | index | archive | help
Hi, I'm trying to make a variable expand to include a list of filenames with braces and parens as part of the filename. (The files are mp3s with brackets and parens, etc, in the filenames themselves.) I just want the resulting expansion to insert an escape character infront of spaces and special characters so the shell can find them. Example: don mclean - american pie (uncut version).mp3 and [John Wayne]-[Pledge_of_Allegiance].mp3 What I've got so far is: *** snip *** files=`cat listofwavs.txt | sed -e 's/\([( )\]]\)/\\1/gp'` burncd -f /dev/acd1c -s ${cdrspeed} -e audio \ "${audiopath}/${files}" fixate *** snip *** But if I go echo "[" | sed -e 's/\([( )\]]\)/\\1/gp' it just returns "[" without the escape. :-( The group I want to catch is " ", "(", ")", "[", "]". I want the expansion to create "\ ", "\(", "\)", "\[", "\]". Any ideas? TIA. -- David S. Jackson dsj@dsj.net =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= I base my fashion taste on what doesn't itch. -- Gilda Radner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010927002134.A30622>