Sponsored Content
Full Discussion: reverse string matching
Top Forums Shell Programming and Scripting reverse string matching Post 302527235 by pravin27 on Friday 3rd of June 2011 12:23:08 AM
Old 06-03-2011
How about this?
Code:
echo 'aaa_bbb_ccc_ddd' | awk -F"_" '{$NF=""}1' OFS="_" | sed 's/_$//'

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

string in reverse

Can we print any string in reverse order? For example: oracle 16294 1 0 Aug 11 ? 0:00 ora_reco_crepd oracle 16276 1 0 Aug 11 ? 0:19 ora_dbw0_crepd I need second last column from this output. (0:00 & 0:19). I can use awk print $2 after reversing the string. ... (4 Replies)
Discussion started by: malaymaru
4 Replies

2. Shell Programming and Scripting

reverse string manipulation

How to get the reverse parsing work. I have a strings like aqw-wef-324-err.log wefd-324r-err.log efrt-4rfr.log . . i want to have string upto last hypen. aqw-wef-324 wefd-324r ... (1 Reply)
Discussion started by: senthilk615
1 Replies

3. Shell Programming and Scripting

PerL Reverse the string.

Hi, I am very new to perl. My question: How i can reverse the given string using substr function but without using reverse function in perl? Anybody please help. thanks, -Lalit (3 Replies)
Discussion started by: email-lalit
3 Replies

4. Shell Programming and Scripting

reverse a string based on else

I have a file like this: Dog Cat One ABCDEFGHIJ house Dog Cat Two ABCDEFGHIJ house Cat Cat One ABCDEFGHIJ house Cat Cat Two ABCDEFGHIJ house I want to look at $3 and if it says "Two" print out the line except reverse $4. Dog Cat One ABCDEFGHIJ house Dog Cat Two JIHGFEDCBA house ... (3 Replies)
Discussion started by: dcfargo
3 Replies

5. Programming

String reverse

Hi all, I jus wanna print string b after reversing it. but the out put is blank. My code snippet is below. :wall: int main() { char * a, * b; b = new char; a = new char; int len, le; le = 0; cout<< " enter your string \n"; cin>> a; len = strlen(a); for(int i =... (8 Replies)
Discussion started by: vineetjoshi
8 Replies

6. Shell Programming and Scripting

reverse matching

Hello guys How can I use egrep to match word1 but not word2...word1. What I mean suppose that I have the following text, and my word1=pizza and word2=eat I hate to eat pizza because I ma eating it each day Pizza is good I like vegetarian and Italian Pizza eating healthy food is... (7 Replies)
Discussion started by: fdc2suxs
7 Replies

7. Shell Programming and Scripting

Reverse of a string

Hi All, I have a String str="Manish". I would like to reverse it. I know the option to do this in bash is: echo "Manish" | rev but I have seen an alternate solution somewhere, which states that: str="Manish" echo $str | awk '{ for(i=length($0);i>=1;i--) printf("%s",substr($0,i,1));... (7 Replies)
Discussion started by: manishdivs
7 Replies

8. Shell Programming and Scripting

To reverse a string

Hi All, I would like to know , how to reverse a given string example : Hi how are you Required Output: you are how HiThanks (7 Replies)
Discussion started by: santhoshks
7 Replies

9. Shell Programming and Scripting

awk reverse string

Hello, Can anyone explain for me in this script to reverse the string? 1) the "x=x" part, how it works? $ echo welcome | awk '{ for(i=length;i!=0;i--)x=x substr($0,i,1);}END{print x}' $ emoclew2) x seems to be an array at the END, but can it automatically print the whole array in awk? Thanks... (8 Replies)
Discussion started by: yifangt
8 Replies

10. UNIX for Dummies Questions & Answers

How to cut part of a string in reverse?

Hi, how to cut part of a string sing delimiter in reverse input file 1,2,st-pa-tr-01,2,3,4, 2,3,ff-ht-05,6,7,8 how can i obtain strings till st-pa-tr ff-ht i.e cutting the last part og string -01 and -05 Thanks & Regards Nivi edit by bakunin: changed thread title (typo) (3 Replies)
Discussion started by: nivI
3 Replies
SVN::Notify::Mirror(3pm)				User Contributed Perl Documentation				  SVN::Notify::Mirror(3pm)

NAME
SVN::Notify::Mirror - Keep a mirrored working copy of a repository path SYNOPSIS
Use svnnotify in post-commit: svnnotify --repos-path "$1" --revision "$2" --handler Mirror --to "/path/to/www/htdocs" [--svn-binary /full/path/to/svn] [--tag-regex "regex"] [--minimal] or better yet, use SVN::Notify::Config for a more sophisticated setup: #!/usr/bin/perl -MSVN::Notify::Config=$0 --- #YAML:1.0 '': PATH: "/usr/bin:/usr/local/bin" 'path/in/repository': handler: Mirror minimal: 1 to: "/path/to/www/htdocs" 'some/other/path/in/repository': handler: Mirror to: "/path/to/remote/www/htdocs" 'some/project/tags': handler: Mirror to: "/path/to/another/dir" tag-regex: "TRUNK-" DESCRIPTION
Keep a directory in sync with a portion of a Subversion repository. Typically used to keep a development web server in sync with the changes made to the repository. This directory can either be on the same box as the repository itself, or it can be remote (via SSH connection). USAGE
Depending on whether the target is a "Local Mirror" or a Remote Mirror, there are different options available. All options are available either as a commandline option to svnnotify or as a hash key in SVN::Notify::Config (see their respective documentation for more details). Common Options In addition to all of the options available to svnnotify, there is a single global option that affects both "Local Mirror" and Remote Mirror targets: minimal If the "--minimal" flag is passed on the commandline (or a hash entry created in a config file), then the update will occur at the shortest common path of all files/dirs that are changed for that revision. For example, using the example config file above, the following changes occured in rev 23: Changed paths: M path/in/repository/subdir/subdir2/file.1 A path/in/repository/subdir/file.2 M path/in/repository/subdir/subdir3/file.3 and the checked-out mirror was in "/path/to/www/htdocs", then the update would be executed in the "/path/to/www/htdocs/subdir" directory. This is the shorted common path of the updated files. NOTE: when using the SVN::Notify::Config mode, the matching path (in the above example "path/in/repository") is stripped off of the shortest common path prior to appending that to the destination path (the "to:" key). It is assumed that a matching key is the "root" of the working copy. Working Copy on Mirror Because 'svn export' is not able to be consistently updated, the sync'd directory must be a full working copy, and if you are running Apache, you should add lines like the following to your Apache configuration file: # Disallow browsing of Subversion working copy # administrative directories. <DirectoryMatch "^/.*/.svn/"> Order deny,allow Deny from all </DirectoryMatch> The files in the working copy must be writeable (preferrably owned) by the user identity executing the hook script (this is the user identity that is running Apache or svnserve respectively). Local Mirror Used for directories local to the repository itself (NFS or other network mounted drives count). The only required options are: o handler = Mirror Specifies that this module is called to process the Notify event. o to = /path/to/working/copy Specified which directory should be updated. Remote Mirror Used for mirrors on some other box, e.g. a web server in a DMZ network. See SVN::Notify::Mirror::SSH or SVN::Notify::Mirror::Rsync for more details. All "ssh-*" options are now deprecated in the base class and support for them will be removed in the next major release. Please update your configurations (see SVN::Notify::Mirror::SSH for details). Methods of Mirroring There are two schemes to keep a directory synced to a path in the repository: 1. Update a checked out working copy This is the normal mode of operation and is commonly used to keep a test web server in sync with the repository on every commit. 2. Switch a working copy to a new tag This is the preferred method when you want to keep a production web server up to date with only specific revisions, through the use of smart tagging. For the latter case, SVN::Notify::Mirror can be configured to monitor a path in the repository and only trigger an update when the path matches a specific regular expression, and do so by switching the mirrored path to the new tag. o tag-regex This optional parameter works with any "Local Mirror" or "Remote Mirror", using any of the applicable transfer methods (currently local, SSH, or Rsync). The "--tag-regex" parameter takes a string which will be interpreted as a conventional Perl regex, and only those repository paths which match the regex will be updated. The regex also determines what the mirrored directory will be switched to. For example, using a SVN::Notify::Config file (which is the most useful way to employ this option): #!/usr/bin/perl -MSVN::Notify::Config=$0 --- #YAML:1.0 '': PATH: "/usr/bin:/usr/local/bin" 'project1/trunk': handler: Mirror to: "/path/to/test/htdocs" 'project1/tags': handler: Mirror to: "/path/to/production/htdocs" tag-regex: "TRUNK-" This would have the effect of keeping the path "/path/to/test/htdocs" in sync on every commit, but "/path/to/production/htdocs" would be switched only when a tag was created in "project1/tags" that matched the string "TRUNK-". NOTE: this is not a sophisticated regex; in particular you should not employ anchors, since the URL is not split into repos-root and path segments before testing. To initialize the switch directory, you must perform an initial checkout like this: $ svn checkout file://$REPOS/project1/tags/TRUNK-0_0_1 where "TRUNK-0_0_1" is the name of any path in the ".../tags/" folder. PREREQUISITES (Optional and otherwise) The only mandatory prerequisite is SVN::Notify (obviously), but the presence of several other modules will enable other features: SVN::Notify::Config Permits a YAML config file to be used as the entire postcommit script, like the second example in the SYNOPSIS above. Net::SSH Required to use SSH to update a remote working copy. See SVN::Notify::Mirror::SSH for usage of that transport method. File::Rsync Required to use rsync to update a remote working copy See SVN::Notify::Mirror::RSync for usage of that transport method.. If you install any of these modules after installing SVN::Notify::Mirror, those features will be available immediately (though you can rerun the install in order to see the tests). AUTHOR
John Peacock <jpeacock@cpan.org> COPYRIGHT
Copyright (c) 2005-2008 John Peacock This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. SEE ALSO
SVN::Notify, SVN::Notify::Config POD ERRORS
Hey! The above document had some coding errors, which are explained below: Around line 275: You forgot a '=back' before '=head2' perl v5.14.2 2012-07-04 SVN::Notify::Mirror(3pm)
All times are GMT -4. The time now is 04:40 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy