I have two directories Dir_A and Dir_A_Arc. Need help with a shell script.
The shell script needs to take the path to these two directories as parameters $1 and $2.
The script needs to check if any files exist in these directories and if either of the directories are empty then exit normally.
If files are present in both directories then run a diff something like
Code:
diff -r -q /path/to/Dir_A /path/to/Dir_A_Arc
From the comparison result
a. The files that are similar in both directories needs to deleted from Dir_A
b. Files that are new in Dir_A and files that differ in both directories needs to kept In Dir_A
Have the below script so far .
Code:
#!/usr/bin/bash
echo "$1 is the root directory "
echo "$2 is the archive directory"
if [ -e $1/*.sql ] && [ -e $2/*.sql ]
then
echo "files exists in $1 and $2"
exit 0
else
echo "no files exists"
fi
diff -r -q $1 $2 ;
rm -r `diff -sq $1 $2 | awk '/are identical$/{print $2}'` ;
---------- Post updated at 04:56 PM ---------- Previous update was at 04:47 PM ----------
The output for the above script is:
Code:
dir/Dir_A is the root directory
dir/Dir_A_arc is the archive directory
Only in dir/Dir_A/sp: dev.txt
Only in dir/Dir_A/sp: dev_22.txt
Only in dir/Dir_A/sp: dev_33.txt
Files dir/Dir_A/spp/Document.txt and dir/Dir_A_arc/spp/Document.txt differ
Files dir/Dir_A/spp/text.txt and dir/Dir_A_arc/spp/text.txt differ
Only in dir/Dir_A_arc/sp: dev_444.txt
Only in dir/Dir_A_arc/sp: dev_555.txt
rm: missing operand
Try `rm --help' for more information
The highlighted files are the ones I have to retain in Dir_A.
Last edited by Scott; 05-12-2013 at 07:12 PM..
Reason: Please use code tags
Hi all,
I use the diff command and got the output:
$> diff -e file1.txt file2.txt
15a
000675695 Yi Chen Chen 200520 EASY 50 2/28/05 0:00 SCAD Debit Card Charge
.
12a
000731176 Sarah Anderson 200520 EASY 25 2/28/05 0:00 SCAD Debit Card Charge
.
11a... (5 Replies)
I have a c-source file that is evidently seen by unix as a binary file. When doing a diff between it and older versions with substantial differences, diff will only return "files differ".
I have tried cat-ing the file to another file; tried using the "-h" on the diff; I have tried ftp-ing it... (7 Replies)
Hi All,
I am running my application on a dual cpu debian linux 3.0 (2.4.19 kernel).
For my application:
<sar -U ALL>
CPU %user %nice %system %idle
...
10:58:04 0 153.10 0.00 38.76 0.00
10:58:04 1 3.88 0.00 4.26 ... (0 Replies)
dear members,
I am having some difficulties with an automation script that I am writing.
We have equipments deployed over our network that generate status messages and I was trying an automated method to collect all information.
I did a expect script that telnet all devices, logs, asks for... (4 Replies)
Hi,
I've noticed that the permissions output from "ls -l" under SunOS differs from Linux in that after the "rwxrwxrwx" field, there is an additional "+" character that may or may not be there. What is the significance of this character?
Thanks,
Suan (6 Replies)
Hi All,
I have working (Perl) code to combine 2 input files into a single output file using the join function that works to a point, but has the following limitations:
1. I am restrained to 2 input files only.
2. Only the "matched" fields are written out to the "matched" output file and... (1 Reply)
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Dear Ladies & Gents,
I have a requirement to delete all the log files in /var/log/test directory that are older than 10 days and their first line begin with "MSH" or "<?xml" or "FHS". I've put together the following BASH script, but it's erroring out:
for filename in $(find /var/log/test... (2 Replies)
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies
LEARN ABOUT SUSE
dh_installdeb
DH_INSTALLDEB(1) Debhelper DH_INSTALLDEB(1)NAME
dh_installdeb - install files into the DEBIAN directory
SYNOPSIS
dh_installdeb [debhelperoptions]
DESCRIPTION
dh_installdeb is a debhelper program that is responsible for installing files into the DEBIAN directories in package build directories with
the correct permissions.
FILES
package.postinst
package.preinst
package.postrm
package.prerm
These maintainer scripts are installed into the DEBIAN directory.
Inside the scripts, the token #DEBHELPER# is replaced with shell script snippets generated by other debhelper commands.
package.triggers
package.shlibs
These control files are installed into the DEBIAN directory.
Note that package.shlibs is only installed in compat level 9 and earlier. In compat 10, please use dh_makeshlibs(1).
package.conffiles
This control file will be installed into the DEBIAN directory.
In v3 compatibility mode and higher, all files in the etc/ directory in a package will automatically be flagged as conffiles by this
program, so there is no need to list them manually here.
package.maintscript
Lines in this file correspond to dpkg-maintscript-helper(1) commands and parameters. However, the "maint-script-parameters" should not
be included as debhelper will add those automatically.
Example:
# Correct
rm_conffile /etc/obsolete.conf 0.2~ foo
# INCORRECT
rm_conffile /etc/obsolete.conf 0.2~ foo -- "$@"
In compat 10 or later, any shell metacharacters will be escaped, so arbitrary shell code cannot be inserted here. For example, a line
such as "mv_conffile /etc/oldconffile /etc/newconffile" will insert maintainer script snippets into all maintainer scripts sufficient
to move that conffile.
It was also the intention to escape shell metacharacters in previous compat levels. However, it did not work properly and as such it
was possible to embed arbitrary shell code in earlier compat levels.
The dh_installdeb tool will do some basic validation of some of the commands listed in this file to catch common mistakes. The
validation is enabled as a warning since compat 10 and as a hard error in compat 12.
SEE ALSO debhelper(7)
This program is a part of debhelper.
AUTHOR
Joey Hess <joeyh@debian.org>
11.1.6ubuntu2 2018-05-10 DH_INSTALLDEB(1)