Shell script method. With hindsight the processing would have been easier by reading the file backwards!
Lose the "cut" for the final version.
Script reads each line (ignoring blank lines and lines starting #role) and saves the value of "group" and saves each user role record until it finds a Description line .. when it outputs one reformatted line for each user role line. These lines are sorted to alphabetic order using "sort" on the whole output of the Shell block.
Note: The Descriptions in your example output do not match the Descriptions in the data.
Hello,
I am having 1800 files in a directory with a specified format, like
amms_850o_prod.000003uNy
amms_850o_prod.000003u8x
amms_850o_prod.000003taP
amms_850o_prod.000003tKy
amms_850o_prod.000003si4
amms_850o_prod.000003sTP
amms_850o_prod.000003sBg
amms_850o_prod.000003rvx... (12 Replies)
Hi,
I have a situation where I want to ignore few users from list of users and print rest of user in log file.
say, I want to ignore aaa, bbb, ccc, ddd .. ppp from list of 20 user (do not want to include)
What is the good command or any script?
Thanks in advance. (1 Reply)
Hi,
I have a shell script, which reads a *.txt file - line by line. In this text file, I have some lines beginning with "#" that I want to ignore :
MY_FILE
#blah blah blah 1
blah blah blah 2
blah blah blah 3
#blah blah blah 4
I want my script to read only the following lines... (3 Replies)
Hi, I'm new to the world of UNIX and have been asked to create a complex script (at least complex to me:confused:) for AIX UNIX to create a report of all the users on the server including server, user, UID, groups, GID, etc.
Found a script using lsuser, but the output is still lacking. 2 things I... (2 Replies)
Hi,
I currently use a script to extract *.deb files located in a Directory called
"/var/mobile/Media/Downloads"
The Problem is howver I want the script to ignore the folder:
"/var/mobile/Media/Downloads/New Debs and Files"
(it shall NOT decompile any of the files in that folder.
Here is... (2 Replies)
Hi,
In the following output you can see the the user "richard" is a member on the team/group "developers":
# id richard
uid=10247(richard) gid=100361(developers) groups=100361(developers),10053(testers)
but in the following details of the said group (developers), the said user... (3 Replies)
Hi,
I have text file as shown below.
root 25 oracle 25 batch 30 griduser 32 admin 35
root 25 oracle 25 batch 30 griduser 32
oracle 25 batch 30 griduser 32 xuser 45 admin 35
I want to group by based on user name, and the output need to be as below. Not necessary the username to be... (10 Replies)
Hello All,
I saw this problem on one of the forum and solved it using group-by in oracle sql, though I am a bit curious to implement it using shell script :
There is a file having number of operations :
Opeation,Time-Taken
operation1,83621
operation2,72321
operation3,13288... (11 Replies)
Hi All,
I am trying to use below syntax to find ignore multiple locations while searching for a file.
find / -name "$serviceitem" ! -size 0 2>&1 |egrep -v "tmp|docker|WinSxS|Permission|HISTORY|alternatives|bearer11ssl|manifest"
I tried to assign all the ignore strings to one variable... (2 Replies)
Moose::Cookbook::Roles::Restartable_AdvancedComposition(User Contributed Perl DocumentatMoose::Cookbook::Roles::Restartable_AdvancedComposition(3)NAME
Moose::Cookbook::Roles::Restartable_AdvancedComposition - Advanced Role Composition - method exclusion and aliasing
VERSION
version 2.0604
SYNOPSIS
package Restartable;
use Moose::Role;
has 'is_paused' => (
is => 'rw',
isa => 'Bool',
default => 0,
);
requires 'save_state', 'load_state';
sub stop { 1 }
sub start { 1 }
package Restartable::ButUnreliable;
use Moose::Role;
with 'Restartable' => {
-alias => {
stop => '_stop',
start => '_start'
},
-excludes => [ 'stop', 'start' ],
};
sub stop {
my $self = shift;
$self->explode() if rand(1) > .5;
$self->_stop();
}
sub start {
my $self = shift;
$self->explode() if rand(1) > .5;
$self->_start();
}
package Restartable::ButBroken;
use Moose::Role;
with 'Restartable' => { -excludes => [ 'stop', 'start' ] };
sub stop {
my $self = shift;
$self->explode();
}
sub start {
my $self = shift;
$self->explode();
}
DESCRIPTION
In this example, we demonstrate how to exercise fine-grained control over what methods we consume from a role. We have a "Restartable" role
which provides an "is_paused" attribute, and two methods, "stop" and "start".
Then we have two more roles which implement the same interface, each putting their own spin on the "stop" and "start" methods.
In the "Restartable::ButUnreliable" role, we want to provide a new implementation of "stop" and "start", but still have access to the
original implementation. To do this, we alias the methods from "Restartable" to private methods, and provide wrappers around the originals
(1).
Note that aliasing simply adds a name, so we also need to exclude the methods with their original names.
with 'Restartable' => {
-alias => {
stop => '_stop',
start => '_start'
},
-excludes => [ 'stop', 'start' ],
};
In the "Restartable::ButBroken" role, we want to provide an entirely new behavior for "stop" and "start". We exclude them entirely when
composing the "Restartable" role into "Restartable::ButBroken".
It's worth noting that the "-excludes" parameter also accepts a single string as an argument if you just want to exclude one method.
with 'Restartable' => { -excludes => [ 'stop', 'start' ] };
CONCLUSION
Exclusion and renaming are a power tool that can be handy, especially when building roles out of other roles. In this example, all of our
roles implement the "Restartable" role. Each role provides same API, but each has a different implementation under the hood.
You can also use the method aliasing and excluding features when composing a role into a class.
FOOTNOTES
(1) The mention of wrapper should tell you that we could do the same thing using method modifiers, but for the sake of this example, we
don't.
AUTHOR
Moose is maintained by the Moose Cabal, along with the help of many contributors. See "CABAL" in Moose and "CONTRIBUTORS" in Moose for
details.
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Infinity Interactive, Inc..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
perl v5.16.2 2012-09-19 Moose::Cookbook::Roles::Restartable_AdvancedComposition(3)