You are right: non-greedy matching takes care of a few cases. Still, what i said about regexps being unable to parse still stands. For instance, your perl-program would have problems with:
I admit, this (and some more cases i could cite) are fringe. Maybe the thread-O/P will never encounter any of these. But again, it is - in a strict sense - impossible to overcome all of these problems (some of them, yes, but not all) because a regexp engine cannot work as a parser.
I hope this helps.
bakunin
These 2 Users Gave Thanks to bakunin For This Post:
hi, i am on aix. i used smitty to remove a user..
but then found that its directory still exists....
so i have to remove the directory manually...
am i doing it the right way? (2 Replies)
hello,
Sometimes I need to remove all the files except one or more.I mean, there are 90 files and I want to remove 88 of them. how can i do that?is it possible to tell the "rm" command not to remove specified files? (4 Replies)
My file has varied width references:
width=10%
style=width:5%
width:1506%
width:99.58%
so I'm trying clear all the width calls with one procedure:
's/width= *%//' and 's/width=*%//'but neither is working. (6 Replies)
not sure what is this but any can help me delete this ^I
cat -A file.txt
CLAS^I^I|890^I|7,10,12,341,305,308,29,54^M$
LCLS^I^I|891^I|7,10,12,341,305,308,29,54^M$
MURB^I^I|892^I|7,10,12,341,305,308,29,54^M$
LATI^I^I|893^I|7,10,12,341,305,308,29,54^M$
i want to remove the ^I^I... (2 Replies)
Hi all,
I want to remove the remove bracket sign ( ) and put in the separate column I also want to remove the repeated entry like in first row in below input (PA156) is repeated
ESR1 (PA156) leflunomide (PA450192) (PA156) leflunomide (PA450192)
CHST3 (PA26503) docetaxel... (2 Replies)
Hi guys,
I need to write a script so that when i execute the "rm" command, the file mentioned need to be copied to other folder and then be deleted. this should be done in back ground. can you please help me out?? (1 Reply)
Had increased FS system size (sample_lv) on particular disks hdisk189 hdisk190 in a shared FS
but unfortunately given addnl size occupies the space on other disks hdisk78 hdisk40 too
In case, need to remove the addnl lv size occupied on hdisk78 hdisk40. How to achieve it. Pls advice.
... (3 Replies)
Discussion started by: ksgnathan
3 Replies
9. Post Here to Contact Site Administrators and Moderators
In this thread: /shell-programming-and-scripting/255687-organizing-text-file-capital-names-capital-word-capital-word.html (sorry i cant use links)
that is not an example, those are real students names with real student login id's for the college i am attending and i am on that list. Please... (3 Replies)
The bash below executes and does find all the .bam files in each R_2019 folder. However set -x shows that the .bam extension only gets removed from one .bam file in each folder (appears to be the last in each). Why is it not removing the extension from each (this is $SAMPLE)? Thank you :).
set... (4 Replies)
Discussion started by: cmccabe
4 Replies
LEARN ABOUT CENTOS
libtalloc_stealing
libtalloc_stealing(3) talloc libtalloc_stealing(3)NAME
libtalloc_stealing - Chapter 2: Stealing a context
Stealing a context
Talloc has the ability to change the parent of a talloc context to another one. This operation is commonly referred to as stealing and it
is one of the most important actions performed with talloc contexts.
Stealing a context is necessary if we want the pointer to outlive the context it is created on. This has many possible use cases, for
instance stealing a result of a database search to an in-memory cache context, changing the parent of a field of a generic structure to a
more specific one or vice-versa. The most common scenario, at least in Samba, is to steal output data from a function-specific context to
the output context given as an argument of that function.
struct foo {
char *a1;
char *a2;
char *a3;
};
struct bar {
char *wurst;
struct foo *foo;
};
struct foo *foo = talloc_zero(ctx, struct foo);
foo->a1 = talloc_strdup(foo, "a1");
foo->a2 = talloc_strdup(foo, "a2");
foo->a3 = talloc_strdup(foo, "a3");
struct bar *bar = talloc_zero(NULL, struct bar);
/* change parent of foo from ctx to bar */
bar->foo = talloc_steal(bar, foo);
/* or do the same but assign foo = NULL */
bar->foo = talloc_move(bar, &foo);
The talloc_move() function is similar to the talloc_steal() function but additionally sets the source pointer to NULL.
In general, the source pointer itself is not changed (it only replaces the parent in the meta data). But the common usage is that the
result is assigned to another variable, thus further accessing the pointer from the original variable should be avoided unless it is
necessary. In this case talloc_move() is the preferred way of stealing a context. Additionally sets the source pointer to NULL,
thus.protects the pointer from being accidentally freed and accessed using the old variable after its parent has been changed.
Version 2.0 Tue Jun 17 2014 libtalloc_stealing(3)