/usr/bin/Fpatch is in ferret-vis 6.6.2-3.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 | #! /bin/csh -f
# Fpatch
# Untar's the file fer_patch.tar.Z to patch in additions to the current version
# of ferret and its support files
# J Davison 6.94/8.28.95
# NOAA PMEL TMAP
echo " This script patches the current version of FERRET with enhancements to"
echo " GO scripts, documentation and other support files. "
### Print menu and act on choice
menu:
echo " "
echo " Enter your choice:"
echo " (1) Install the patch, (2) Exit and do nothing"
echo -n " (1 or 2) --> "
set choice = $<
if ($choice == 1) goto install_patch
if ($choice == 2) exit
goto menu
### Install the patch ###################################################
install_patch:
echo " "
echo " Install patch..."
echo " "
### Get FER_DIR value
if ($?FER_DIR) then
set fer_dir = $FER_DIR
echo " The environment variable FER_DIR is currently defined as"
echo " $FER_DIR."
echo " This is the directory where the 'fer_environment' tar file was installed."
echo -n " Is that correct and acceptable (y/n) [y] "
set ans = $<
if ($ans != 'N' && $ans != 'n' ) goto get_tarloc
echo " "
endif
echo " Enter the complete path of the directory where the 'fer_environment'"
echo " tar file was installed (FER_DIR). The location recommended"
echo " in the FERRET installation guide was '/usr/local/ferret'. "
getfer_dir:
echo -n " FER_DIR --> "
set fer_dir = $<
set fer_dir = $fer_dir
echo $fer_dir | grep '^/' > /dev/null
if ($status != 0) then
echo " Sorry, you can't use relative pathnames..."
goto getfer_dir
endif
if (! -d $fer_dir) then
echo " '$fer_dir' is not a directory..."
goto getfer_dir
endif
if (`find $fer_dir/bin -name Fgo -print` == "") then
echo " The FERRET environment files are not in $fer_dir..."
goto getfer_dir
endif
### Get directory where ferret patch tar file is supposed to be
get_tarloc:
echo " "
echo " Enter the complete path of the directory where you put the"
echo " 'patch' tar file."
getferpatch_dir:
echo -n " patch tar file location --> "
set ferpatch_dir = $<
set ferpatch_dir = $ferpatch_dir
echo $ferpatch_dir | grep '^/' > /dev/null
if ($status != 0) then
echo " Sorry, you can't use relative pathnames..."
goto getferpatch_dir
endif
if (! -d $ferpatch_dir) then
echo " '$ferpatch_dir' is not a directory..."
goto getferpatch_dir
endif
### Get name of patch tar file
get_patchname:
echo " "
echo " Enter the name of this 'patch' tar file, e.g. patch_28aug95.tar.Z"
echo -n " patch tar file name --> "
set patchname = $<
set patchname = $patchname
if (! -e $ferpatch_dir/$patchname) then
echo " '$patchname' is not in $ferpatch_dir..."
goto get_patchname
endif
### Move to $FER_DIR directory and begin work
pushd $fer_dir > /dev/null
echo " "
echo " Moving to $cwd..."
### Untar the patch tar file
echo " "
zcat $ferpatch_dir/$patchname | tar xvpf -
if ($status != 0) goto patch_err
echo " "
echo " Extracted ${patchname}..."
echo " "
echo "This FERRET patch installed `date +'%d%h%y'|tr '[A-Z]' '[a-z]'` by $user" >! $fer_dir/${patchname}_README
if ($status != 0) goto patch_err
echo " Created $fer_dir/${patchname}_README log file..."
echo
pushd > /dev/null
echo " "
echo " Returning to $cwd..."
goto menu
### There was a problem installing the patch
patch_err:
pushd > /dev/null
echo " "
echo "There's a problem manipulating files in $fer_dir. Check your"
echo "privileges to change files in that directory and try again."
exit (1)
|