I am writing some shell script to check the file owner permission whether the write bit is turn on. If it is turn on it will copy the file to the destination else it will just prompt user to change the file and skipping it.
However, I am starting getting loss here as I have couple of issues that I am facing:
1. first the file could be using regular expression in the file for example file* or file?? which is usually handling pretty well if you are using cp command to handle but in script I will have to warn user to put quote.
2. My current script also have limitation that it cannot directory.
Is there any easier way of how the script to structure. For example, let say the user can just like what they did in typical cp command just run
and the script will check through the file owner permission and if it is directory it will check those file permission inside (we do not have to check directory permission).
The more I write my current script the more I find its limitation.
I always thought there should an easier way to just pass the script -s source -t target to cp -pr source target in an easier way.
Last edited by Scott; 04-23-2011 at 02:24 AM..
Reason: Please use code tags
I just need the shell script that checks your user id and your permission level. I sort of have one to check the user id but I don't like it. Can anyone help with this? (3 Replies)
Hi all,
I need a script in ksh:
1: Copy files from directory (A) to directory (B)
2: Check if files that will be copied in directory (A) have never been yet copied to (B)
3: Never copy the last created file of directory (A)
This script will run on crontab.
Thanks in advance for your... (1 Reply)
HI all,
I want to script where all the server names will be in a text file like
server1
server2
server3 . and the script should take servernames from a text file and perform copy of files if the files are not present on those servers.after which it should take next servername till the end of... (0 Replies)
Have the following in a .sh file.
printf "Installing ... \ r"
cd $ ORG_DIR / a_a
. / configure> error.log
Make 1> error.log 2> error.log
make install> error.log
But when I run I get the following.
install.sh: line 270:. / configure: Permission denied
make: *** No rule two make target... (3 Replies)
I want to check access rights permissions not for 'user', not for 'group', but for 'others'.
I want to do it by system command in which i want to use 'ls -l' and 'awk' command.
I have written the following program :
#!/usr/bin/local/perl
#include <stdlib.h>
system ("ls -l | awk... (1 Reply)
All,
I have to write a script to do the following requirement.
There is a file called BUSINESS_DATE.TXT.
This file get updated once the oracle partition created. In Oracle, Partition will be created every day. There is a seperate script scheduled to take care ORACLE partition creation.
The... (3 Replies)
Hi All,
I am not able to figure out what is the problem with calling a shell script within a shell script.
i have given all the permissions to both schell scripts.
but when i am seeing the log file error is coming like
weekly_us_push_rpts_tst.sh: ./vacation_quota_summary_detail.sh: Execute... (9 Replies)
Hi All,
I am a beginner in this and trying to write a shell script in linux which will :
1. Ask for a file name and check if its exists.
2. If file exists only then it will ask for the new target folder, after entering target folder name it will check if it exists.
3. If target folder... (3 Replies)
Hello,
I am having an odd problem in open suse 12. I have a shell script and when I try to run it, I get "permission denied" The permissions from ls -l are,
-rw------- 1 user1 users 25904 Jan 10 16:26 script.sh
I have tried to change the permissions in dolphin but this does not change the... (5 Replies)
Hi
I have a text file (INPUT.TXT) of three columns assuming they are separated by tab. The format is given as:
Column1 Column2 Column3
aaa NO aaa
bbb YES asdf
ccc YES yyasdf
ddd NO ddd
eee ... (3 Replies)
Discussion started by: my_Perl
3 Replies
LEARN ABOUT CENTOS
flock
FLOCK(1) User Commands FLOCK(1)NAME
flock - manage locks from shell scripts
SYNOPSIS
flock [options] <file|directory> <command> [command args]
flock [options] <file|directory> -c <command>
flock [options] <file descriptor number>
DESCRIPTION
This utility manages flock(2) locks from within shell scripts or the command line.
The first and second forms wrap the lock around the executing a command, in a manner similar to su(1) or newgrp(1). It locks a specified
file or directory, which is created (assuming appropriate permissions), if it does not already exist. By default, if the lock cannot be
immediately acquired, flock waits until the lock is available.
The third form uses open file by file descriptor number. See examples how that can be used.
OPTIONS -s, --shared
Obtain a shared lock, sometimes called a read lock.
-x, -e, --exclusive
Obtain an exclusive lock, sometimes called a write lock. This is the default.
-u, --unlock
Drop a lock. This is usually not required, since a lock is automatically dropped when the file is closed. However, it may be
required in special cases, for example if the enclosed command group may have forked a background process which should not be hold-
ing the lock.
-n, --nb, --nonblock
Fail rather than wait if the lock cannot be immediately acquired. See the -E option for the exit code used.
-w, --wait, --timeout seconds
Fail if the lock cannot be acquired within seconds. Decimal fractional values are allowed. See the -E option for the exit code
used.
-o, --close
Close the file descriptor on which the lock is held before executing command . This is useful if command spawns a child process
which should not be holding the lock.
-E, --conflict-exit-code number
The exit code used when the -n option is in use, and the conflicting lock exists, or the -w option is in use, and the timeout is
reached. The default value is 1.
-c, --command command
Pass a single command, without arguments, to the shell with -c.
-h, --help
Print a help message.
-V, --version
Show version number and exit.
EXAMPLES
shell1> flock /tmp -c cat
shell2> flock -w .007 /tmp -c echo; /bin/echo $?
Set exclusive lock to directory /tmp and the second command will fail.
shell1> flock -s /tmp -c cat
shell2> flock -s -w .007 /tmp -c echo; /bin/echo $?
Set shared lock to directory /tmp and the second command will not fail. Notice that attempting to get exclusive lock with second
command would fail.
shell> flock -x local-lock-file echo 'a b c'
Grab the exclusive lock "local-lock-file" before running echo with 'a b c'.
(
flock -n 9 || exit 1
# ... commands executed under lock ...
) 9>/var/lock/mylockfile
The form is convenient inside shell scripts. The mode used to open the file doesn't matter to flock; using > or >> allows the lock-
file to be created if it does not already exist, however, write permission is required. Using < requires that the file already
exists but only read permission is required.
[ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" flock -en "$0" "$0" "$@" || :
This is useful boilerplate code for shell scripts. Put it at the top of the shell script you want to lock and it'll automatically
lock itself on the first run. If the env var $FLOCKER is not set to the shell script that is being run, then execute flock and grab
an exclusive non-blocking lock (using the script itself as the lock file) before re-execing itself with the right arguments. It
also sets the FLOCKER env var to the right value so it doesn't run again.
EXIT STATUS
The command uses sysexits.h return values for everything else but an options -n or -w failures which return either the value given by the
-E option, or 1 by default.
AUTHOR
H. Peter Anvin <hpa@zytor.com>
COPYRIGHT
Copyright (C) 2003-2006 H. Peter Anvin.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU-
LAR PURPOSE.
SEE ALSO flock(2)AVAILABILITY
The flock command is part of the util-linux package and is available from Linux Kernel Archive <ftp://ftp.kernel.org/pub/linux/utils/util-
linux/>.
util-linux September 2011 FLOCK(1)