04-18-2006
scripting question?
I am writing a backup script for AIX 5 and running into a problem where the output isn't being shown in the output log that is being created. Any ideas on how this would be corrected? I have included the script below. The only thing showing up in the file is listed below. I was hoping to capture all the stages of the output from the backup command that is actually seen when you run it from the command line.
--current output --cut and paste ---
Hello this is dumper_0 on 041706 on peter
We'll be performing backups this morning, for:
dumper_0 completed at 041706
--current output -- end of cut and paste ----
-- actual script -- cut and paste ----
#!/bin/csh -f
#
# $Source$
# $Revision$
# $Date$
# dumper_0
#
# Configured to backup local file systems on aixdbart01
set date = `date +%m%d%y`
set name = dumper_0
set host = peter
#
#
#
#
#
#set alarm1 = Cell or pager info
#set alarm2 =
set admin =
set file = /home/backuplogs/$host.$date
set header = /var/backups/header/$host.backup
#
#
#
touch $file
cp $header $file
echo "Hello this is $name on $date on $host" >> $file
echo "We'll be performing backups this morning, for:" >>
$file
echo "" >> $file
echo "" >> $file
echo "" >> $file
tctl -f /dev/rmt0 rewind
#################################################
backup -0 -u -f /dev/rmt0 / >> $file
#backup -0 -u -f /dev/rmt0 /usr >> $file
#backup -0 -u -f /dev/rmt0 /var >> $file
#backup -0 -u -f /dev/rmt0 /home >> $file
#backup -0 -u -f /dev/rmt0 /opt >> $file
#backup -0 -u -f /dev/rmt0 /home/app >> $file
#backup -0 -u -f /dev/rmt0 /u01 >> $file
#backup -0 -u -f /dev/rmt0 /u02 >> $file
#backup -0 -u -f /dev/rmt0 /sortmerge >> $file
#backup -0 -u -f /dev/rmt0 /proj >> $file
#################################################
echo "" >> $file
echo "" >> $file
echo "$name completed at $date" >> $file
/usr/bin/mail -s Backup for peter $admin < $file
-- actual script -- end cut and paste ----
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I am writing a script that will identify the oldest file in a directory. Here's the syntax:
#!/bin/ksh
cd directory
chmod 777 *
ls -r -1t > file1
sed -n -e "1P" < file1 > file2
So my problem is, now I have file2, which contains the name of the oldest file in the directory. How do I use,... (1 Reply)
Discussion started by: kristy
1 Replies
2. Shell Programming and Scripting
This script searches for core files and if it finds one, it emails me to let me know.I DONT want it to email me if it doesn't find one but I can't figure out what I need to change or add. Any thoughts? Script below:
/bin/find / -name core -type f -ls -exec file {} \;|/usr/bin/mailx -s... (1 Reply)
Discussion started by: damielle
1 Replies
3. Shell Programming and Scripting
Hello
I am working on cleaning up permissions on Oracle mountpoints and datafiles in unix. I am looking for a script or a scripting idea to 1st.
1. grep for owner oracle
2. ensure its a directory owned for oracle
3. chmod 750 on the oracle owned directory.
4. grep for oracle files, etc... (3 Replies)
Discussion started by: jigarlakhani
3 Replies
4. Shell Programming and Scripting
I'm new to shell scripting and am having a problem trying to do something in C shell. I want to write a script that will input something instead of a user doing it. For example, using the command 'write' the user is supposed to type something to be sent to another user. I want a script to be able... (3 Replies)
Discussion started by: batmike
3 Replies
5. Solaris
I'm writing a small script that will run an executable program (sort of like TOP). To exit the executable, you have to enter control C (^c). I'm trying to use a redirect input file to send the ^c but I'm not having any luck. My short script looks like this - /mydirectory/abc.script < abc.in >... (1 Reply)
Discussion started by: gonzotonka
1 Replies
6. Shell Programming and Scripting
Folks;
I'm writing a shell script to extract some fields out of a log file & it will run periodically, how can i make it runs starting from where it left of. for example;
if the script will do the extract every 2 days, let's say the first run will extract fields until July 25, 2007 @ 11:15:22... (1 Reply)
Discussion started by: moe2266
1 Replies
7. UNIX for Dummies Questions & Answers
folks;
I have a script to remove any files that older than 14 days then move any files that younger than 7 days to another directory. but for some reason it doesn't move the files, when i do it manually it works but not through the script. i tried 2 different ways in writing the move part but it... (6 Replies)
Discussion started by: Katkota
6 Replies
8. Shell Programming and Scripting
Preview of command prompt
f ---> to start ferret
q----> to stop ferret
asp@nex:~$ f
NOAA/PMEL TMAP
FERRET v6.82
Linux 2.6.18-308.8.2.el5PAE 32-bit - 08/03/12
3-Dec-12 16:44
yes? go my.jnl
yes?column=4/skip=1/type=num,text ............filename.txt
---... (4 Replies)
Discussion started by: nex_asp
4 Replies
9. Shell Programming and Scripting
Hi
I am trying to write a small script which takes one by one file name from a txt file and do a 'll' and need to check if equal to the given month, otherwise it should return back the file name.
Note: the file name contains parameter.
My code is given below: It is not working .. giving error... (6 Replies)
Discussion started by: Ravindra Swan
6 Replies
10. Shell Programming and Scripting
hi all,
I am writing a script and beginner in shell scripting. I have tried the below script. could you please check and let me know whether the below scirpt is correct.
Unix details : HP Unix
Input file.
cat input.txt | tail -4
HTS40002.W1978.PROM
HTS40003.W1978.PROM... (17 Replies)
Discussion started by: arun888
17 Replies
LEARN ABOUT DEBIAN
cmdtest
CMDTEST(1) General Commands Manual CMDTEST(1)
NAME
cmdtest - blackbox testing of Unix command line tools
SYNOPSIS
cmdtest [-c=COMMAND] [--command=COMMAND] [--config=FILE] [--dump-config] [--dump-memory-profile=METHOD] [--dump-setting-names]
[--generate-manpage=TEMPLATE] [-h] [--help] [-k] [--keep] [--list-config-files] [--log=FILE] [--log-keep=N] [--log-level=LEVEL]
[--log-max=SIZE] [--no-default-configs] [--output=FILE] [-t=TEST] [--test=TEST] [--timings] [--version] [FILE]...
DESCRIPTION
cmdtest black box tests Unix command line tools. Given some test scripts, their inputs, and expected outputs, it verifies that the command
line produces the expected output. If not, it reports problems, and shows the differences.
Each test case foo consists of the following files:
foo.script
a script to run the test (this is required)
foo.stdin
the file fed to standard input
foo.stdout
the expected output to the standard output
foo.stderr
the expected output to the standard error
foo.exit
the expected exit code
foo.setup
a shell script to run before the test
foo.teardown
a shell script to run after test
Usually, a single test is not enough. All tests are put into the same directory, and they may share some setup and teardown code:
setup-once
a shell script to run once, before any tests
setup a shell script to run before each test
teardown
a shell script to run after each test
teardown-once
a shell script to run once, after all tests
cmdtest is given the name of the directory with all the tests, or several such directories, and it does the following:
o execute setup-once
o for each test case (unique prefix foo):
-- execute setup
-- execute foo.setup
-- execute the command, by running foo.script, and redirecting standard input to come from foo.stdin, and capturing standard output
and error and exit codes
-- execute foo.teardown
-- execute teardown
-- report result of test: does exit code match foo.exit, standard output match foo.stdout, and standard error match foo.stderr?
o execute teardown-once
Except for foo.script, all of these files are optional. If a setup or teardown script is missing, it is simply not executed. If one of
the standard input, output, or error files is missing, it is treated as if it were empty. If the exit code file is missing, it is treated
as if it specified an exit code of zero.
The shell scripts may use the following environment variables:
DATADIR
a temporary directory where files may be created by the test
TESTNAME
name of the current test (will be empty for setup-once and teardown-once)
SRCDIR directory from which cmdtest was launched
OPTIONS
-c, --command=COMMAND
ignored for backwards compatibility
--config=FILE
add FILE to config files
--dump-config
write out the entire current configuration
--dump-memory-profile=METHOD
make memory profiling dumps using METHOD, which is one of: none, simple, meliae, or heapy (default: simple)
--dump-setting-names
write out all names of settings and quit
--generate-manpage=TEMPLATE
fill in manual page TEMPLATE
-h, --help
show this help message and exit
-k, --keep
keep temporary data on failure
--list-config-files
list all possible config files
--log=FILE
write log entries to FILE (default is to not write log files at all); use "syslog" to log to system log
--log-keep=N
keep last N logs (10)
--log-level=LEVEL
log at LEVEL, one of debug, info, warning, error, critical, fatal (default: debug)
--log-max=SIZE
rotate logs larger than SIZE, zero for never (default: 0)
--no-default-configs
clear list of configuration files to read
--output=FILE
write output to FILE, instead of standard output
-t, --test=TEST
run only TEST (can be given many times)
--timings
report how long each test takes
--version
show program's version number and exit
EXAMPLE
To test that the echo(1) command outputs the expected string, create a file called echo-tests/hello.script containing the following con-
tent:
#!/bin/sh
echo hello, world
Also create the file echo-tests/hello.stdout containing:
hello, world
Then you can run the tests:
$ cmdtest echo-tests
test 1/1
1/1 tests OK, 0 failures
If you change the stdout file to be something else, cmdtest will report the differences:
$ cmdtest echo-tests
FAIL: hello: stdout diff:
--- echo-tests/hello.stdout 2011-09-11 19:14:47 +0100
+++ echo-tests/hello.stdout-actual 2011-09-11 19:14:49 +0100
@@ -1 +1 @@
-something else
+hello, world
test 1/1
0/1 tests OK, 1 failures
Furthermore, the echo-tests directory will contain the actual output files, and diffs from the expected files. If one of the actual output
files is actually correct, you can actualy rename it to be the expected file. Actually, that's a very convenient way of creating the ex-
pected output files: you run the test, fixing things, until you've manually checked the actual output is correct, then you rename the file.
SEE ALSO
cliapp(5).
CMDTEST(1)