Re: Need help with sed statement

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

 



On Mon, 2010-05-03 at 21:37 -0600, David Bartmess wrote:
> Not sure if this is the right place, but I need help with a sed 
> replacement expression.
> 
> I'm trying to express only the filename from a filepath, i.e., 
> whoopie.txt from /opt/dev/whoopie.txt.
> 
> Basically I'm reading the files that changed into a temp file, and 
> reading each line into a variable to split out the base filename to act 
> upon.
> 
> I tried using the following, but it still gives me the entire string:
> 
> #!/bin/bash
> BASEDIR="/opt/dev";
> echo $BASEDIR | sed "s/$BASEDIR\///"
> 
> This gives me back the entire original string.
> 
> And I also tried the following sed statement:
> 
> echo $BASEDIR |  sed "s/^.*\([^/]+\)$/\1/"
> This gives me back nothing at all
> 
> Thanks for any help!

I think you want the 'basename' command:

  PATHNAME=/var/log/messages
  basename $PATHNAME

Alternately, using sed, something like:

  PATHNAME=/var/log/messages
  echo $PATHNAME|sed "s|^.*/||"

Both of these output "messages".

-Chris

-- 
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux