Re: sed question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey Tudor, and others..

The test sed I posted works for doing a search/replace of the text inside the parens...

> foo('txt')
> foo("txt")

however.. if i wanted to craft a sed that uses the entire >>foo('txt')<< as the search.. then I run into the need to handle the parens.. and that's the issue..

this doesn't work

sed -i 's/foo('txt')/foo('/dir1/txt') /' *files.dat
sed -i 's/foo\('txt'\)/foo\('/dir1/txt'\)/' *files.dat

thanks






On Thu, Jul 21, 2016 at 8:14 AM, Todor Petkov <petkovptodor@xxxxxxxxx> wrote:
On Thu, Jul 21, 2016 at 3:00 PM, bruce <badouglas@xxxxxxxxx> wrote:
> Hey guys..
>
> Sed question.. should be simple, but after stack/net searches, lots or
> trials.. can't seem to get it..
>
> I've got a case
>
> foo('txt')
> foo("txt")
>
> I'd like to have
>
> foo('/dir1/txt')
> foo("/dir1/txt")
>
> Now. I do a simple sed search/replace if it just focuses on the txt, but
> crafting a sed that uses the entire input as a search due to the parens '()'
> is a bit painful!  Doing the sed using the \( for the ( wasn't quite
> successful!
>
> for just the txt..
>
> sed -i 's/'txt'/'dir1/txt'/' *files.dat
> sed -i 's/"txt"/"dir1/txt"/' *files.dat
>
> these work...
>
> any thoughts on how to handle the parens would be cool!
>
> just irks me that I couldn't see what I missed.
>
> thanks!

Try like this:

 cat /tmp/1.txt
foo('/dir1/txt')

 sed -e 's#'txt'#'dir1/txt'#' /tmp/1.txt
foo('/dir1/dir1/txt')

Or:
sed -e  's/'txt'/'dir1\\/txt'/' /tmp/1.txt

You need to escape the / in the replacement string.
--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://lists.fedoraproject.org/admin/lists/users@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org

--
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://lists.fedoraproject.org/admin/lists/users@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux