Sponsored Content
Top Forums Shell Programming and Scripting ksh scripting SSH to Compare File Sizes Post 303025336 by Abstract3000 on Wednesday 31st of October 2018 03:23:06 AM
Old 10-31-2018
ksh scripting SSH to Compare File Sizes

Hello,
I currently have very little experience with Shell scripting and trying to create a script for the purpose of collecting the size of a couple sizes on 4 different Hosts. The Idea is to collected the information from the files in which the script is kicked off on, store the values into Variables, SSH to the next Host and repeat for the remaining 2. With Variables Collected I would like to compare the sizes and output that they matched.

This is what I have come up with so far but not the most familiar with constructs and especially the SSH Process.

Code:
#!/bin/ksh

FILENAME1=/root/directory1/files/file1.fil
FILE1SIZEa=$(stat -c%s "$FILENAME1")

FILENAME2=/root/directory2/files/file2.fil
FILE2SIZEa=$(stat -c%s "$FILENAME2")

ssh user@server2 |

FILENAME3=/root/directory1/files/file1.fil
FILE1SIZEb=$(stat -c%s "$FILENAME3")

FILENAME4=/root/directory2/files/file2.fil
FILE2SIZEb=$(stat -c%s "$FILENAME4")

ssh user@server3 |

FILENAME5=/root/directory1/files/file1.fil
FILE1SIZEc=$(stat -c%s "$FILENAME5")

FILENAME6=/root/directory2/files/file2.fil
FILE2SIZEc=$(stat -c%s "$FILENAME6")

ssh user@server4 |

FILENAME7=/root/directory1/files/file1.fil
FILE1SIZEd=$(stat -c%s "$FILENAME7")

FILENAME8=/root/directory2/files/file2.fil
FILE2SIZEd=$(stat -c%s "$FILENAME8")


if && [[ "$FILE1SIZEa" =~ ^($FILE1SIZEb|$FILE1SIZEc|$FILE1SIZEd)$ ]]; then
	print "FILE1 Sizes Match"
else
	print "Something is Wrong with FILE1"
fi

if && [[ "$FILE2SIZEa" =~ ^($FILE2SIZEb|$FILE2SIZEc|$FILE2SIZEd)$ ]]; then
	print "FILE2 Sizes Match"
else
	print "Something is Wrong with FILE2"
fi

If someone could help get this functioning, or possibly has suggestions for more efficient scripting with less repetition It would be greatly appreciated.


Thanks for your consideration.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

compare file sizes

Is there a command that will return the name of the largest file within a directory? If so, can I set the returned filename into a variable? (4 Replies)
Discussion started by: joli
4 Replies

2. Shell Programming and Scripting

to compare total directory structure and get sizes of all f on two different servers

Hello every one, Iam newbie to this forum and shell programming &scripting. i needed to compare each and every folder of two separate servers. Actually I have copied some directory structure from one server to second server, to build on second server the files all should be copied... (3 Replies)
Discussion started by: mannam srinivas
3 Replies

3. Shell Programming and Scripting

how to compare file sizes

hi ls -l * | sed 's/\+/ /g' | cut -f5 -d " " >out1 ls -l * | sed 's/\+/ /g' | cut -f5 -d " " >out2 diff out1 out2 i tried this it will work fine and i can see difference but i need a script which should neglect, if the difference b/w files is small and it should display... (5 Replies)
Discussion started by: revenna
5 Replies

4. Shell Programming and Scripting

KSH: Compare variable to $1 in an input file

Hello, I am working with KSH on AIX and I have 2 files generated from different sources... as seen below: FILE1 FILE2 AAA AAA@ABS0001C BBB BBB@ABS0003D CCC CCC@ABS0023A DDD DDD@ABC0145D EEE EEE@ABS0090A FFF FFF@ABS0002A GGG GGG@ABC0150D HHH FILE1 is main main data source,... (4 Replies)
Discussion started by: right_coaster
4 Replies

5. HP-UX

compare file percent sizes

I need to get a file size and compare it to a previous day file size. If it's larger or smaller by 50 percent I'll replace the new with the old. I know how to get the file sizes but do not know how to calculate if it's 50 percent difference. Thanks for your help. (2 Replies)
Discussion started by: jkuchar747
2 Replies

6. UNIX for Dummies Questions & Answers

Compare two file sizes.

Hi everyone! I need to compare two file sizes. One of them (size) will be stored in a flat file and the other coming from a listed file. I can now get the first file size using: SIZE=`ls -l $DOCTYPE | awk '{print $5}'` 1. How can I store this value in a flat file? 2. How... (2 Replies)
Discussion started by: mrreds
2 Replies

7. Shell Programming and Scripting

Script to compare file sizes

I need to write a bash script larger X Y that compares the sizes of two specified files X and Y, and reports which file is larger. For example, if X is larger, the output should be "File X is larger", while if Y is larger, the output should be "File Y is larger". If the files are exactly the... (3 Replies)
Discussion started by: julia_21436
3 Replies

8. Shell Programming and Scripting

Using csh / awk / sed to compare database sizes in a txt file

Hello, I have an output file showing database sizes across the 3 environments that I use (LIVE, TEST & DEVELOPMENT). I am trying to write a script that lets me know if the size of a db on one environment is different to its corresponding db on the other environments. Here is an example... (4 Replies)
Discussion started by: stevie_g
4 Replies

9. UNIX for Dummies Questions & Answers

ksh scripting, skip server if asks for password with SSH

Hi, I am running a script that connets to a list of servers with SSH and runs a command but I have some servers that are asking for password (authorized keys is not configured properly). Is there any way to do so that if I get a prompt for password just skip that entry? my script: ... (1 Reply)
Discussion started by: galuzan
1 Replies

10. Shell Programming and Scripting

Ksh: how compare content of a file with an other array

Hi, I created a skript in ksh which generate a file with semicolon as separator, this is an example of the file a created: example content file: hello;AAAA;2014-08-17 hello;BBBB;2014-08-17 hello;CCCC;2014-08-17 I would need to compare the content in of the second column of this file... (3 Replies)
Discussion started by: jmartin
3 Replies
ln(1)							      General Commands Manual							     ln(1)

NAME
ln - link files and directories SYNOPSIS
file1 new_file file1 [file2]... dest_directory directory1 [directory2]... dest_directory DESCRIPTION
The command links: o file1 to a new or existing new_file, o file1 to a new or existing file named file1 in existing dest_directory, o file1, file2, ... to new or existing files of the same name in existing dest_directory, o directory1, directory2, ... to new directories of the same name in existing dest_directory, o or it creates symbolic links between files or between directories. If links are to dest_directory, corresponding file or directory names in that directory are linked to file1, file2, ..., or directory1, directory2, ..., etc., as appropriate. If two or more existing files or directories (excluding destination file name new_file) are speci- fied, the destination must be a directory. If new_file already exists as a regular file (or link to another file), its contents (or the existing link) and its ACL are destroyed only if the option is specified. The ACL on the new_file after the link is the same as that of the source_file file. If the and options are specified and the link being created is the name of an existing link or ordinary file and the access permissions of the file forbid writing, asks permission to overwrite the file. If the access permissions of the directory forbid writing, aborts and returns with the error message: (even if the file is an ordinary file and not a link to another file). When asking for permission to overwrite an existing file or link, prints the mode (see chmod(2) and below), followed by the first letters of the words and in the current native language, prompting for a response, and reading one line from the standard input. If the response is affirmative and is permissible, the operation occurs; if not, the command proceeds to the next source file, if any. Hard links are created with the same ownerships and permissions as the file or directory to which they are linked. If ownership or permis- sions are changed on a link or file, the same changes appear on corresponding hard links. The command does not permit hard links to a directory. Symbolic links are created with the ownership of the creator and the permissions are of the creator's current umask. Once created, the symbolic link ownership and permissions will not change, since the mode and ownership of the symbolic link is ignored by the system. If file1 is a file and new_file is a link to an existing file or an existing file with other links, new_file is disassociated from the existing file and links and linked to file1. When creates a link to a new or existing file name, ownerships and permissions are always identical to those for the file to which it is linked. If or is used to change ownership or permissions of a file or link, the change applies to the file and all associated links. The last modification time and last access time of the file and all associated links are identical (see chown(1) and chmod(1)). For a discussion of symbolic links, see symlink(4). Options The command recognizes the following options: Force existing destination path names to be removed to allow the link. Write a prompt to the standard error output requesting confirmation for each link that would overwrite an existing file. This option takes effect only if used in con- junction with the option. Cause to create symbolic links instead of the usual hard links. A symbolic link contains the name of the file to which it is linked. The referenced file is used when an operation is performed on the link (see open(2)). A on a symbolic link returns the linked-to file; an must be performed to obtain information about the link (see stat(2)). A call can be used to read the contents of the symbolic link (see readlink(2)). Symbolic links may span file systems and refer to directories. Access Control Lists (ACLs) If optional ACL entries are associated with new_file, displays a plus sign after the access mode when asking permission to overwrite the file. If new_file is a new file, it inherits the access control list of file1, altered to reflect any difference in ownership between the two files (see acl(5) and aclv(5)). In JFS file systems, new files created by do not inherit their parent directory's default ACL entries (if any), but instead retain their original ACLs. EXTERNAL INFLUENCES
Environment Variables determines the interpretation of text as single byte and/or multibyte characters. and determine the local language equivalent of (for yes/no queries). determines the language in which messages are displayed. If is not specified in the environment or is set to the empty string, the value of is used as a default for each unspecified or empty vari- able. If is not specified or is set to the empty string, a default of (see lang(5)) is used instead of If any internationalization vari- able contains an invalid setting, behaves as if all internationalization variables are set to See environ(5). International Code Set Support Single byte and multibyte character code sets are supported. EXAMPLES
The following command creates and in which are linked back to the original files and If and/or exists in the destination directory, it is removed and replaced by a link to or respectively. If existing file or is a link to another file or a file with links, the existing file remains. Only the link is broken and replaced by a new link to or WARNINGS
does not create hard links across file systems. DEPENDENCIES
NFS Access control lists of networked files are summarized (as returned in by but not copied to the new file. When using on such files, a is not printed after the mode value when asking for permission to overwrite a file. AUTHOR
was developed by AT&T, the University of California, Berkeley and HP. SEE ALSO
cp(1), cpio(1), mv(1), rm(1), link(1M), readlink(2), stat(2), symlink(2), symlink(4), acl(5), aclv(5). STANDARDS CONFORMANCE
ln(1)
All times are GMT -4. The time now is 11:23 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy