02-09-2011
Thanks for your responses.
methyl,
There is actually a reason we do it this way and it involves sox compliance rules and auditor requirements. We have generic users setup for testing and production installs and they are the only users allowed to do these installs(actually we su to them) and as such they must be the ones checking out and breaking the locks. The developers cannot be the users doing installs or even be shown as the owners of the files when they are installed(segregation of duties). We normally use HP'S GCM tool to do our installs and it su's to the proper user prior to checking out and installing(and it handles unlocking properly) but sometimes a manual install by my release op's department is required since automation may not be possible for whatever reason. Also this script is only used when we have a large number of files to install and checking them out manually and breaking the lock is time consuming. We also want to be prompted to break the lock since this sends an email to the developer and business owner that the lock is broken and now they can make changes to the code for future installs. It also creates an audit trail. I know this is wordy but we only run this script during production installs by running it with 'unlock' as the third parameter and its at this point we break that lock and we need to be prompted for this so we can enter information about the install ID # and version of the lock being broken, again only for auditing purposes. Its in a loop because we have an input file with several files to process and it needs to loop through each of them. Yeah, this probably just makes it more confusing. I am thinking of just sending the output to a file with file,version and unlock reason and running this separate after all files have been checked out. Maybe using 'expect' as someone suggested but I am unfamiliar with that but it seems fairly straightforward.
---------- Post updated at 08:52 PM ---------- Previous update was at 08:31 PM ----------
Thanks Perderabo,
I'll take a look at that tomorrow. Just getting back into unix/linux and scripting after being stuck in a windows world for so long is taking time to get ramped up again..
9 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
This code is in my 'case' statement and it all else works fine.
The problem I have is that the value in 'procno' is not passed on to the external program (fireit).
It is passing all zeros instead of the actual process number.
By the time I get to this case statement, I know the "Number" and... (1 Reply)
Discussion started by: giannicello
1 Replies
2. Programming
Hello,
in the application i'm writing i need to launch "recordmydesktop" to capture the screen,but i'm having a problem: when the recording stops,and the encoding of the saved file starts,the entire system hangs until the completion of the encoding.This happens if i launch recordmydesktop from my... (7 Replies)
Discussion started by: Zipi
7 Replies
3. Programming
Hi,
in my program i need to run an external program in background.I am aware that there are at least 2 alternatives for this:
1)fork+exec
2)system("program &");
I have read several posts about this,and they all tend to suggest to use fork+exec (and that's what i am doing now).
I have some... (2 Replies)
Discussion started by: Zipi
2 Replies
4. Shell Programming and Scripting
Hi!
I have a python script that requires arguments and these arguments are file paths. This script works fine when executed like this:
/my_python_script "file_path1" "file_path2"
(i added quotes as some file names may have weird characters)
the issue happens when i launch my python script... (14 Replies)
Discussion started by: gigagigosu
14 Replies
5. Shell Programming and Scripting
Hi, I was hoping for help with a for loop to run a program (vina) repeatedly using all the files in a folder as input. Currently my code looks like this:
#!/bin/bash
FILES=/home/afalk/Desktop/battest/*.pdbqt
for f in $FILES do
vina --config /home/afalk/Desktop/A.txt --ligand "$f".pdbqt
done... (5 Replies)
Discussion started by: oldmanwinter
5 Replies
6. Shell Programming and Scripting
Hi,
How can I modify the FILETYPE command ?
I want to provide the file extension, like txt, root .?
Thanks,
#!/bin/bash
FROM=$1
TO=$2
FILETYPE=$3
... (4 Replies)
Discussion started by: nrjrasaxena
4 Replies
7. Shell Programming and Scripting
my $sysdate = strftime('%Y-%m-%d', localtime );
biDeriveByDate('Table_Str',$sysdate,\@lIndx,\@lResVals)
In a perl script, when I'm trying to pass $sysdate to some external function it's not working since $sysdate is passed as a string mentioned above but my function is expecting a date value... (1 Reply)
Discussion started by: Devesh5683
1 Replies
8. Shell Programming and Scripting
Hi,
I am trying to write a bash script in which I need to pass a external variable to the awk program. I tired using -v but it not accepting the value.
Here is my sample code.
#!/usr/bin/bash
######################################################################################
####... (5 Replies)
Discussion started by: jpkumar10
5 Replies
9. Shell Programming and Scripting
I have a code which is using to find duplicates in a files based on column.Below is the same code which is used to find duplicates in my file based on column 1
awk -F'|' '{if (x) { x_count++; print $0; if (x_count == 1) { print x } } x = $0}' FileName >Dup_File.txt
But my requirement here is... (3 Replies)
Discussion started by: ginrkf
3 Replies
RCSCLEAN(1) General Commands Manual RCSCLEAN(1)
NAME
rcsclean - clean up working files
SYNOPSIS
rcsclean [options] [ file ... ]
DESCRIPTION
rcsclean removes files that are not being worked on. rcsclean -u also unlocks and removes files that are being worked on but have not
changed.
For each file given, rcsclean compares the working file and a revision in the corresponding RCS file. If it finds a difference, it does
nothing. Otherwise, it first unlocks the revision if the -u option is given, and then removes the working file unless the working file is
writable and the revision is locked. It logs its actions by outputting the corresponding rcs -u and rm -f commands on the standard output.
Files are paired as explained in ci(1). If no file is given, all working files in the current directory are cleaned. Pathnames matching
an RCS suffix denote RCS files; all others denote working files.
The number of the revision to which the working file is compared may be attached to any of the options -n, -q, -r, or -u. If no revision
number is specified, then if the -u option is given and the caller has one revision locked, rcsclean uses that revision; otherwise rcsclean
uses the latest revision on the default branch, normally the root.
rcsclean is useful for clean targets in makefiles. See also rcsdiff(1), which prints out the differences, and ci(1), which normally
reverts to the previous revision if a file was not changed.
OPTIONS
-ksubst
Use subst style keyword substitution when retrieving the revision for comparison. See co(1) for details.
-n[rev]
Do not actually remove any files or unlock any revisions. Using this option will tell you what rcsclean would do without actually
doing it.
-q[rev]
Do not log the actions taken on standard output.
-r[rev]
This option has no effect other than specifying the revision for comparison.
-T Preserve the modification time on the RCS file even if the RCS file changes because a lock is removed. This option can suppress
extensive recompilation caused by a make(1) dependency of some other copy of the working file on the RCS file. Use this option with
care; it can suppress recompilation even when it is needed, i.e. when the lock removal would mean a change to keyword strings in the
other working file.
-u[rev]
Unlock the revision if it is locked and no difference is found.
-V Print RCS's version number.
-Vn Emulate RCS version n. See co(1) for details.
-xsuffixes
Use suffixes to characterize RCS files. See ci(1) for details.
-zzone Use zone as the time zone for keyword substitution; see co(1) for details.
EXAMPLES
rcsclean *.c *.h
removes all working files ending in .c or .h that were not changed since their checkout.
rcsclean
removes all working files in the current directory that were not changed since their checkout.
FILES
rcsclean accesses files much as ci(1) does.
ENVIRONMENT
RCSINIT
options prepended to the argument list, separated by spaces. A backslash escapes spaces within an option. The RCSINIT options are
prepended to the argument lists of most RCS commands. Useful RCSINIT options include -q, -V, -x, and -z.
DIAGNOSTICS
The exit status is zero if and only if all operations were successful. Missing working files and RCS files are silently ignored.
IDENTIFICATION
Author: Walter F. Tichy.
Manual Page Revision: 1.1; Release Date: 1999/04/23.
Copyright (C) 1982, 1988, 1989 Walter F. Tichy.
Copyright (C) 1990, 1991, 1992, 1993 Paul Eggert.
SEE ALSO
ci(1), co(1), ident(1), rcs(1), rcsdiff(1), rcsintro(1), rcsmerge(1), rlog(1), rcsfile(5)
Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.
BUGS
At least one file must be given in older Unix versions that do not provide the needed directory scanning operations.
GNU
1999/04/23 RCSCLEAN(1)