Hi all,
I'm writing a program in bourne shell that compresses a file 3 different ways then displays a table of data with the compression type, original file size, compressed size and compression ratio. I've written most of it but reached 2 problems that won't allow me to finish it correctly.
The first is the equation for the ratio (compression ratio = ((original size - compressed size) / original size)*100)
doesn't work in a expr because of the brackets and such. I tried breaking it up into steps but it won't work. I was told to try using the awk command to do this but haven't been able to find anything on using the awk command to do such equations.
My next problem is the table needs to be sorted so the biggest compression ratio is at the top so it'll look like this(made up numbers):
again I believe it is an awk command, using the awk field choosing to sort the lines by the $4 but I can't find use of sort in this way. So Far I have the 4 values put into a single value ie:
I tried putting these 3 values into a file with a > but I don't know how to then use that file in the program to sort and then display.
Any help on how to use awk these ways would be appriciated!
This is probably a fairly simple question but I cant seem to get it to work.
Im trying to multiply an entire column in a file by a variable in my bash script but just cant seem to get it to work with awk.
Here is what I'm trying
$varr is some value
$line is my file
awk '{print... (1 Reply)
Again, I am in need of some advice.
Earlier I was shown how to have awk create folders for me. That was so cool and helpful, but now I am exploring the posibilities of combining operations with bash scripts.
Now, I am creating the directories with the bash script, and then I want awk to... (1 Reply)
The goal:
I have a list of people in teams. The list looks something like this
$1 = Job Position (marketing, IT, PR)
$2 = Name
$3 = Team Name
$4 = Targeted member (somebody in field 2 targets somebody else)
$5 = Employment Status (full time/part time/etc)
The idea is to search through... (2 Replies)
Hello all,
I'm a beginner to shell/ awk script writing, and I'm trying to do something that looks like it shouldn't be (too) hard at all to do, but unfortunately, I can't seem to be able to find the right way to do it with awk.
I need to look for the time several processes start & end in a... (5 Replies)
I am trying to figure awk.
I have a file in my home directory called testawk.sh, have made it executable, and have run it... But don't see any output.
This is the contents of the file:
#!/usr/bin/awk -f
{ print " - HI -" }I enter ./testawk.sh in the prompt, press enter, and watch as the... (2 Replies)
Hi,
I made an executable file in terminal and it looks like this.
echo Enter the name of the file without the .wig extension
read NAME
echo Enter the ratio
read RATIO
awk '{$2*=$RATIO;{print $0}}' ${NAME}.wig > ${NAME}normalized.wig
I have a file with several million lines that look... (6 Replies)
Hi i have a control file which i need to read. It is ',' separated. the 3rd parameter will be ';' separated.
I have 2 files:
/home/orig.txt
/home/join.txt
I need a O/P file name based on firstparameter_1.txt and it should have the content of /home/orig.txt
and appended content from... (2 Replies)
Hi,
I need to read a string with ; separated using loop one filed by one field and perform some operation. Can you please check and let me know how to print command parameterised.
key=phani;ravi;kiran
number_of_keys=`echo $key|awk '{print NF}' FS=';'`
for (( i = 1; i <= $number_of_keys;... (4 Replies)
Hi,
I have 2 .txt pads containing data.
I need a script which reads content of one .txt file, performs some operations and calculates a number which is stored in a variable.
Now , all the content of another .txt pad should be appended to first .txt pad at pre calculated nth line number.
... (4 Replies)
I tried running this.
dsh -w server1 'lsof /audit | awk '{ print $2 }''
It did not like above so I tried to escape the single parenthesis at the end.
dsh -w server1 'lsof /audit | awk '{ print $2 }\''
It then hung so I changed up the parenthesis to this. This worked.
dsh -w server1... (6 Replies)
Discussion started by: cokedude
6 Replies
LEARN ABOUT OSX
gzip
GZIP(1) BSD General Commands Manual GZIP(1)NAME
gzip -- compression/decompression tool using Lempel-Ziv coding (LZ77)
SYNOPSIS
gzip [-cdfhkLlNnqrtVv] [-S suffix] file [file [...]]
gunzip [-cfhkLNqrtVv] [-S suffix] file [file [...]]
zcat [-fhV] file [file [...]]
DESCRIPTION
The gzip program compresses and decompresses files using Lempel-Ziv coding (LZ77). If no files are specified, gzip will compress from stan-
dard input, or decompress to standard output. When in compression mode, each file will be replaced with another file with the suffix, set by
the -S suffix option, added, if possible.
In decompression mode, each file will be checked for existence, as will the file with the suffix added. Each file argument must contain a
separate complete archive; when multiple files are indicated, each is decompressed in turn.
In the case of gzcat the resulting data is then concatenated in the manner of cat(1).
If invoked as gunzip then the -d option is enabled. If invoked as zcat or gzcat then both the -c and -d options are enabled. When invoked
as zcat, ``.Z'' will be appended to all filenames that do not have that suffix.
This version of gzip is also capable of decompressing files compressed using compress(1) or bzip2(1).
OPTIONS
The following options are available:
-1, --fast
-2, -3, -4, -5, -6, -7, -8
-9, --best These options change the compression level used, with the -1 option being the fastest, with less compression, and the -9
option being the slowest, with optimal compression. The default compression level is 6.
-c, --stdout, --to-stdout
This option specifies that output will go to the standard output stream, leaving files intact.
-d, --decompress, --uncompress
This option selects decompression rather than compression.
-f, --force This option turns on force mode. This allows files with multiple links, symbolic links to regular files, overwriting of
pre-existing files, reading from or writing to a terminal, and when combined with the -c option, allowing non-compressed
data to pass through unchanged.
-h, --help This option prints a usage summary and exits.
-k, --keep Keep (don't delete) input files during compression or decompression.
-L, --license This option prints gzip license.
-l, --list This option displays information about the file's compressed and uncompressed size, ratio, uncompressed name. With the -v
option, it also displays the compression method, CRC, date and time embedded in the file.
-N, --name This option causes the stored filename in the input file to be used as the output file.
-n, --no-name This option stops the filename and timestamp from being stored in the output file.
-q, --quiet With this option, no warnings or errors are printed.
-r, --recursive This option is used to gzip the files in a directory tree individually, using the fts(3) library.
-S suffix, --suffix suffix
This option changes the default suffix from .gz to suffix.
-t, --test This option will test compressed files for integrity.
-V, --version This option prints the version of the gzip program.
-v, --verbose This option turns on verbose mode, which prints the compression ratio for each file compressed.
ENVIRONMENT
If the environment variable GZIP is set, it is parsed as a white-space separated list of options handled before any options on the command
line. Options on the command line will override anything in GZIP.
SEE ALSO bzip2(1), compress(1), xz(1), fts(3), zlib(3), compat(5)HISTORY
The gzip program was originally written by Jean-loup Gailly, licensed under the GNU Public Licence. Matthew R. Green wrote a simple front
end for NetBSD 1.3 distribution media, based on the freely re-distributable zlib library. It was enhanced to be mostly feature-compatible
with the original GNU gzip program for NetBSD 2.0.
This implementation of gzip was ported based on the NetBSD gzip, and first appeared in FreeBSD 7.0.
AUTHORS
This implementation of gzip was written by Matthew R. Green <mrg@eterna.com.au> with unpack support written by Xin LI <delphij@FreeBSD.org>.
BUGS
According to RFC 1952, the recorded file size is stored in a 32-bit integer, therefore, it can not represent files larger than 4GB. This
limitation also applies to -l option of gzip utility.
BSD October 9, 2011 BSD