Sponsored Content
Top Forums Shell Programming and Scripting Help with simple IF statements Post 302458773 by ygemici on Friday 1st of October 2010 05:21:52 PM
Old 10-01-2010
Sorry for later reply (but i am sleeping methinks Smilie )

Code:
#!/bin/bash
zero () {
if [ -z $1 ] ; then
 if [ $2 == Nickname ] ; then
  read -p "Bot "$2":" ecnick
  zero "$ecnick" "Nickname"
 fi
  if [ $2 == "Username" ] ; then
   read -p "Bot "$2":" ecuname
   zero "$ecuname" "Username"
  fi
   if [ $2 == "Realname" ] ; then
    read -p "Bot "$2":" ecrname
  zero "$ecrname" "RealName"
  fi
   elif [ -n "$1" ] ; then
echo "Bot $2: $1"
fi
}
   read -p "Bot Nickname:" ecnick
   zero "$ecnick" "Nickname"
   read -p "Bot Username:" ecuname
   zero "$ecuname" "Username"
   read -p "Bot Realname:" ecrname
   zero "$ecrname" "Realname"

This User Gave Thanks to ygemici For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

or statements?

how do i do an or in an if-then statement? i tried: if ; then bleh fi how???? (1 Reply)
Discussion started by: Blip
1 Replies

2. Shell Programming and Scripting

Please help on IF statements.

I had different problem scenarios with IF statement. Can any expert please enlighten me on the difference with these scenarios. Thank you. 1st Scenario: testdate=`date +%Y%m` test=`cat /var/log/database0.$testdate*.log | grep "Errors found during processing" | tail -10` if then ... (4 Replies)
Discussion started by: filthymonk
4 Replies

3. Shell Programming and Scripting

HELP!! if statements

I am kind of new in Unix and i have to make a menu. I want to put an if statement in the menu. you should enter the filename and it goes to that file. How do i do this? (1 Reply)
Discussion started by: trob
1 Replies

4. UNIX for Dummies Questions & Answers

Help with For Statements

Hi, I am trying to write a for statement that will allow for the ps, who, finger, and date commands to run. Can anyone help? I use Putty. (22 Replies)
Discussion started by: lexydoll87
22 Replies

5. Shell Programming and Scripting

If statements....

Good morning all! I want to know if Im interpreting this if statement below right. if(((1) || (0)) && (1)){ do stuff; } This is saying: if true piped into false, then true, then do stuff. Right? What does the && stand for? thanks in advance! ben (3 Replies)
Discussion started by: bigben1220
3 Replies

6. Shell Programming and Scripting

vi and if statements

Hi I am very new to Unix programming and shell scripting. I am trying t figure out how to write a little script that will output the number of directories. I can find the number of directories using ls -l | grep "^d" | wc -l I can not figure out how to do it so when I type the name... (8 Replies)
Discussion started by: Reddoug
8 Replies

7. Homework & Coursework Questions

Using While and If statements

1. The problem statement, all variables and given/known data: Two problems I need solving please. I created a script where the user types in 7 numbers as standard input and each one is then stored in an array. Now I need to perform the following calculations on those numbers: 1) Use a while... (11 Replies)
Discussion started by: jjb1989
11 Replies

8. UNIX for Dummies Questions & Answers

if and then statements

I came across a bash script that outputs the forecast for the day and the max temperature but at the end of the day the max temperature disappears ($6) and I am left with "°C" after the forecast. Here is the script: #! /bin/bash curl -s --connect-timeout 30... (7 Replies)
Discussion started by: _light_
7 Replies

9. Shell Programming and Scripting

Help making simple perl or bash script to create a simple matrix

Hello all! This is my first post and I'm very new to programming. I would like help creating a simple perl or bash script that I will be using in my work as a junior bioinformatician. Essentially, I would like to take a tab-delimted or .csv text with 3 columns and write them to a "3D" matrix: ... (16 Replies)
Discussion started by: torchij
16 Replies

10. Red Hat

Syslog.conf: looking for a simple answer on a simple question

Cheers! In /etc/syslog.conf, if an error type is not specified, is it logged anywhere (most preferable is it logged to /var/log/messages) or not? To be more precise I am interested in error and critical level messages. At default these errors are not specified in syslog.conf, and I need to... (6 Replies)
Discussion started by: dr1zzt3r
6 Replies
JABBER-QUERYBOT(1p)					User Contributed Perl Documentation				       JABBER-QUERYBOT(1p)

NAME
jabber-querybot - a modular perl jabber bot DESCRIPTION
jabber-querybot connects a jabber account and wait for messages. If a message comes in, it forward it to your self programmend modul. The return string of your module, jabber-querybot send it back to the jabber sender. It is designed to be re-usable and to make it easy to write small Jabber bots that do one thing and do it well. A simple concept with a lot of examples and experiences are implemented. 1. Create a jabber account on a jabber-server around 2. Create a bot application: cd examples cp Querymodule.pm /etc/jabber-querybot/Mybot.pm cd /etc/jabber-querybot ln -s Mybot.pm Querymodule.pm Modify login parameters to your jabber-bot-account vim Mybot.pm our $hostname = "swissjabber.ch"; our $user = ""; our $password = ""; our $ident = "Testbot"; our $bot_admin = "@swissjabber.ch"; our $port = "5222"; our $timeout = "5"; our $service_name = "$user@$hostname"; our $bot_description = "Bot help title Bot description"; For each jabber message, jabber-querybot will execute sub run_query, that you can write here your application. You can control how your jabber response will be: o error = error message stanza o presence = error as presence stanza o ignore = ignore message OPTIONS
jabber-querybot has a lot of variables which you can easy modify for what you need: querystatus $querystatus = [ 0 | 1 ] o 0 = Bot will not proceed any incoming jabber messages. o 1 = Bot will proceed incoming messages. penalty_status If the bot has too much workload, it goes to penalty status and wait some time until his status change back to normal. $timer_reconnect_default = 21600 Every 21600 seconds (6 hours) the bot will shutdown automatically, wait 10 seconds and starting up again. $timer_auto_query = 0 If you set in your module this variable to 60, the bot will every 60 seconds call the function run_auto_query() which you may use for several things. System load If your systems load is >=6, this bot will shutdown the jabber connection and check every 10 seconds systems load. If load <=2, bot will start over. EXAMPLES
/usr/share/doc/jabber-querybot/examples/Testbot.pm FILES
/etc/jabber-querybot/Querymodule.pm /usr/bin/jabber-querybot RESOURCES
http://github.com/micressor/jabber-querybot/ METHODS
InMessage() An incoming jabber message to the bot will hook this function. o Read parameters of incoming stanza o Decode utf8 string o increment timer overload and do not process message if bot is overloaded. o Ignore message if it is from myself o Be sure, that it is not a message from another transport o Check any systemcommands for the bot o If the bot has sleeping status, change it to work o We process only normal text or chat type jabber messages o And now we give the real text string which was incoming to the bot via run_query(). o If run_query() say us 'ignore` we do a log entry and do not answer via jabber to the user. o If run_query() says 'error` we send a jabber error stanza wiht the status message from run_query() back to the user. o If there was no error, we update the statistic vars and send the answer from run_query() back to the jabber user. connect_server() This function connects to the jabber server with the given credentials from Querymodule.pm. Set the call back functions. This functions will be executed if a message of the types <message/> <iq/> or <presence/> are incoming. Stop() Shutdown jabber connection and exit main program disconnect_server() Only disconnect from the jabber-server. reconnect_server() Reconnect and create a log entry. InIQ() We do not proceed any iq (information query), this is only for statisic. InPresence() o Increment timer overload o Do not process message if we are overloaded penalty_handler(). We have a problem in Net::Jabber. An incoming message with a ` in resource blocks the bot. We will hotfix that for the moment. A subscription type `subscribe` is incoming. Send `subscribed` tho the user and say hello ;) o Send presence to user o Remove subscription if a user remove this bot from his roster sendPresence() Send presence information to user systemcommands() o If user type '!help` send a help instruction to the user o Send statistic information to the user if he types '!status` o Is it a bot command? o Is the bot command from the bot admin? If not, send "not allowed" o '!shutdown` will shutdown your bot via jabber invoke. o '!query off` turn off queries o '!query on` turn on queries get_barejid() Remove resource id from a jabber id. calcualte_stats() Calculate message statistics jabber_set_presence() Set new presence if we have another presence status or we have set the force flag (for transport presence). jabber_send_message() This function send all jabber messages which are outgoing from the jabber-querybot. set_wakeup_mode() Set jabber presence via jabber_set_presence() penalty_handler() This function checks if the bot is overloaded with incoming mesages and reject if it is. Two times that's ok so 2:1 because while in main. Bot admin got everytime an answer. jabber_add_footer() Add footer to the processed message. calcualte_elapsed_time() Calculate elapsed worktime for a query sendError() sendError($message, $from, $to, 404, "text"); system_load_check() o Calculate system load o If load is too high shutdown bot. o If load is ok, starting up bot connect_bot() Connect bot and initialize all timers. check_before_start() Check configuration variables in Querybotmodule.pm and give answer if anything does not match or is missing. COPYRIGHT AND LICENSE
Copyright (C) 2009-2012 Marco Balmer <marco@balmer.name> The Debian packaging is licensed under the GPL, see `/usr/share/common-licenses/GPL-3'. perl v5.14.2 2012-02-03 JABBER-QUERYBOT(1p)
All times are GMT -4. The time now is 11:41 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy