09-20-2011
What's your system? What's your shell? If your shell doesn't even have substring operations this could be painful, if it has arrays, it's a snap.
If you can avoid it, a string might not be the best way to handle this, how about an array? The computer has an array like ( k i t t e n ), the user gets an array full of ( '' '' '' '' '' '' ). Whenever the user types a letter, loop through the 'kitten' array to see if the letter matches, and if it does, fill it into the user array.
Otherwise you could do this with substring operations, looping through "kitten" one by one and comparing it to an array full of spaces, if it matches replace one space by the letter. How to do this depends on your shell -- not all of them even have string operations...
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I have searched and found a few threads that have dealt with this, but the examples I've tried haven't seemed to help.
I am monitoring our database log for high checkpoints.
I can parse out the checkpoint value which can be anywhere from zero into a 3 digit number.
I set a variable to be the... (3 Replies)
Discussion started by: MizzGail
3 Replies
2. Shell Programming and Scripting
Script
#!/bin/sh
hardware=PC
os=WindowsNET
for i in `cat newservers`
do
x=`sudo /opt/openv/netbackup/bin/admincmd/bpplclients |grep $i |head -40 |grep $i|awk '{print $3;exit}'`
if
then
echo "$i is already added"
else
echo "Need to add"
fi
done
O/p in debug mode
bash-2.05$... (3 Replies)
Discussion started by: rajip23
3 Replies
3. Shell Programming and Scripting
I have two computers with dynamic IP addresses and am using dyndns so that they are identifiable as the same computer even if their IPs change (we'll call them host1.dyndns.com and host2.dyndns.com). I also have a remote server which I would like to store my computers' IP addresses on. There is a... (9 Replies)
Discussion started by: kerpm
9 Replies
4. Shell Programming and Scripting
Hi.
I have three arrays.
@a=('AB','CD','EF');
@b=('AB,'DG',HK');
@c=('DD','TT','MM');
I want to compare the elements of the first two array and if they match then so some substition.
I tried using the if statement using the scalar value of the array but its not giving me any output.
... (7 Replies)
Discussion started by: kamitsin
7 Replies
5. UNIX for Dummies Questions & Answers
im trying to compare ipaddresses. i loop through an array to see if the ip is already is in the array and if it is it should set a flag and then i wont add it to the array. but its just adding all the ipaddresses to the array
if ]
then
... (3 Replies)
Discussion started by: magnia
3 Replies
6. Shell Programming and Scripting
Hi,
I am a noob at shell scripting.
basically I am trying to compare row counts from 8 tables in different databases. I have managed to get the row counts using awk from the spool files for both databases.
now I have 16 variables with me
for database 1 :
$A
$B
$C
$D
$E
$F
$G... (3 Replies)
Discussion started by: smallville
3 Replies
7. Shell Programming and Scripting
I have very abstract need of "comparing two variables" and take subsequent actions.
please refer to image below
https://lh3.googleusercontent.com/-frNk5iA3q1c/TjI3lE0sWOI/AAAAAAAAAIE/fxzB1w07gas/script_block.JPG
I have a part of script which reads a file and generates variables based on... (4 Replies)
Discussion started by: animesharma
4 Replies
8. Shell Programming and Scripting
Is there a way to compare variables in a 'awk'?
I've been trying for a while and can't figure it out. I'm guessing its not possible :/
VAR=Bob
awk '$3 == $VAR { print $1 }' file.txt
Regards
Jikuu (4 Replies)
Discussion started by: Jikuu
4 Replies
9. Shell Programming and Scripting
I have a script like this. Just couldn't get the comparison part work. Any thought? thanks,
#!/usr/bin/ksh -x
STEP=`echo $(basename $0 .ksh) | tr "" ""`
log=/skip.log
while read LINE
do
if
then
echo `date`: STEP $STEP skipped by user >> $log
exit 0
fi
done < $1
echo... (0 Replies)
Discussion started by: ghostmic
0 Replies
10. UNIX for Beginners Questions & Answers
Hi,
I have 2 variables as given below. How can i compare them and say its matching ? Appreciate your help
VAR1=describe/read/write
VAR2=read/write/describeThanks,
Please use CODE tags as required by forum rules! (4 Replies)
Discussion started by: prince1987
4 Replies
UASORT(3) 1 UASORT(3)
uasort - Sort an array with a user-defined comparison function and maintain index association
SYNOPSIS
bool uasort (array &$array, callable $value_compare_func)
DESCRIPTION
This function sorts an array such that array indices maintain their correlation with the array elements they are associated with, using a
user-defined comparison function.
This is used mainly when sorting associative arrays where the actual element order is significant.
Note
If two members compare as equal, their relative order in the sorted array is undefined.
PARAMETERS
o $array
- The input array.
o $value_compare_func
- See usort(3) and uksort(3) for examples of user-defined comparison functions.
RETURN VALUES
Returns TRUE on success or FALSE on failure.
EXAMPLES
Example #1
Basic uasort(3) example
<?php
// Comparison function
function cmp($a, $b) {
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
// Array to be sorted
$array = array('a' => 4, 'b' => 8, 'c' => -1, 'd' => -9, 'e' => 2, 'f' => 5, 'g' => 3, 'h' => -4);
print_r($array);
// Sort and print the resulting array
uasort($array, 'cmp');
print_r($array);
?>
The above example will output:
Array
(
[a] => 4
[b] => 8
[c] => -1
[d] => -9
[e] => 2
[f] => 5
[g] => 3
[h] => -4
)
Array
(
[d] => -9
[h] => -4
[c] => -1
[e] => 2
[g] => 3
[a] => 4
[f] => 5
[b] => 8
)
SEE ALSO
usort(3), The comparison of array sorting functions.
PHP Documentation Group UASORT(3)