Sponsored Content
Top Forums Shell Programming and Scripting interactive scripts with user input that includes quotes Post 302716939 by donniemac on Wednesday 17th of October 2012 10:34:50 AM
Old 10-17-2012
interactive scripts with user input that includes quotes

I'm writing a basic ldapsearch script that prompts the user for their search criteria. The input they're being asked for is the search filter portion of the ldapsearch command. This string must be quoted. When the script executes the command it returns nothing. If I hard code a search filter it works fine. Snippet below. Any ideas?

Code:
# Search criteria
echo "Enter the attribute and value you wish to search for, e.g. \""cn=firstname lastname\"".  Be sure to enclose in quotes per example."
read SEARCHCRITERIA
echo "You entered ${SEARCHCRITERIA}"
idsldapsearch -h localhost -b o=searchbase ${SEARCHCRITERIA}

sample script execution (bold text is user input)
Code:
[root@host01 ~]# ./lsearch.sh
Enter the attribute and value you wish to search for, e.g. "cn=firstname lastname"".  Be sure to enclose in quotes per example.
"cn=first last"
You entered "cn=first last"
[root@usdl2-ln00-ap01 ~]#

I'm tracking down in the log file what is actually get sent. Haven't got there yet, it has limited access.

Last edited by Scott; 10-17-2012 at 12:59 PM.. Reason: Please use code tags
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Automating interactive scripts

Hi all, I am trying to write a program that will automate interactive scripts that use 'pkgadd'. Easily enough I can use 'pkgask' and a response file for most of what I want to do, but unfortunately there are parts of some pkg installations that are configured to only take input from /dev/tty!!... (2 Replies)
Discussion started by: bookoo
2 Replies

2. Shell Programming and Scripting

put an interactive script in background after taking input

i am trying to find a way to put an interactive script in the background after taking input from the user a few test lines i was trying: date echo "Enter location" LOCATION= read LOCATION sleep 100 sleep 200 date for this small example i want the script to as the user for the... (7 Replies)
Discussion started by: epsilonaurigae
7 Replies

3. Shell Programming and Scripting

[/bin/sh] passing parameters with quotes between 2 scripts

Hi, I have a first shell script (/bin/sh) that receives some paremeters. This is only an example (there are more parameters in fact and this one is among them): -header "This is a test" This script calls a secund shell script (/bin/sh) with the same parameters. But, quotes disappear as I would... (0 Replies)
Discussion started by: velo_love
0 Replies

4. Shell Programming and Scripting

Interactive scripts for Oracle

Hello friends, I am a ORACLE user, we have some internal database file, lets say "demo.config" and an internal tool to patch this file....lets call that tool as "dbfixer". We have 100's-1000's of such files "demo.config" which need to get patched by the tool. So we need to write a script ...... (1 Reply)
Discussion started by: Newbie456267uni
1 Replies

5. UNIX for Beginners Questions & Answers

Linux Console for Interactive Input Script

Hi there, How do I enter command to the interactive console. I was able to do it via the first line. What if I have more lines to input into the interactive console from line 3 onwards. Is there a more easier way? (echo -e "load openvas" ; echo -e "openvas_help") | msfconsole ... (4 Replies)
Discussion started by: alvinoo
4 Replies

6. Shell Programming and Scripting

Bash interactive scripts

i have a script that contains: script.sh #!/bin/bash echo -e "\t\t\t0. Exit" echo -e "\t\t\t1. Help" echo -e "\t\t\t2. Notes" echo -e "\t\t\t3. Classes" echo "${newline}" echo -n -e "\t Please enter option number : " read Type case $Type in 1) clear ... (1 Reply)
Discussion started by: SkySmart
1 Replies

7. Shell Programming and Scripting

Identifying interactive scripts

so for the purposes of this thread, interactive scripts are shell scripts that prompts for a response from a user and then waits for the user to enter a response before proceeding. now, from my understanding of this, the one common string i can expect to find in all interactive scripts is some... (1 Reply)
Discussion started by: SkySmart
1 Replies

8. Shell Programming and Scripting

Bash -c interactive scripts

i have to run the following script through a pipe: script.sh: #!/bin/bash echo "Hello World" echo -e "The \033 here's how its currently being run: bash -c "$(cat script.sh)" This is an interactive script. the problem is, when i run it this way, if you go to another terminal and... (4 Replies)
Discussion started by: SkySmart
4 Replies

9. Shell Programming and Scripting

Recording user input from interactive shell script

Hello, I want to start out by saying that I am fairly new to scripting and am looking for someone that can point me in the right direction. Basically what I need is a way to run a interactive script that will prompt users with questions weather that be yes/no or a specific answer.. I want to be... (3 Replies)
Discussion started by: shoutcast
3 Replies
LUA(1)							      General Commands Manual							    LUA(1)

NAME
lua - Lua interpreter SYNOPSIS
lua [ options ] [ script [ args ] ] DESCRIPTION
lua is the stand-alone Lua interpreter. It loads and executes Lua programs, either in textual source form or in precompiled binary form. (Precompiled binaries are output by luac, the Lua compiler.) lua can be used as a batch interpreter and also interactively. The given options (see below) are executed and then the Lua program in file script is loaded and executed. The given args are available to script as strings in a global table named arg. If these arguments contain spaces or other characters special to the shell, then they should be quoted (but note that the quotes will be removed by the shell). The arguments in arg start at 0, which contains the string `script'. The index of the last argument is stored in arg.n. The arguments given in the command line before script, including the name of the interpreter, are available in negative indices in arg. At the very start, before even handling the command line, lua executes the contents of the environment variable LUA_INIT, if it is defined. If the value of LUA_INIT is of the form `@filename', then filename is executed. Otherwise, the string is assumed to be a Lua statement and is executed. Options start with - and are described below. You can use -- to signal the end of options. If no arguments are given, then -v -i is assumed when the standard input is a terminal; otherwise, - is assumed. In interactive mode, lua prompts the user, reads lines from the standard input, and executes them as they are read. If a line does not contain a complete statement, then a secondary prompt is displayed and lines are read until a complete statement is formed or a syntax error is found. So, one way to interrupt the reading of an incomplete statement is to force a syntax error: adding a `;' in the middle of a statement is a sure way of forcing a syntax error (except inside multiline strings and comments; these must be closed explicitly). If a line starts with `=', then lua displays the values of all the expressions in the remainder of the line. The expressions must be separated by commas. The primary prompt is the value of the global variable _PROMPT, if this value is a string; otherwise, the default prompt is used. Similarly, the secondary prompt is the value of the global variable _PROMPT2. So, to change the prompts, set the corresponding variable to a string of your choice. You can do that after calling the interpreter or on the command line with _PROMPT='lua: ', for exam- ple. (Note the need for quotes, because the string contains a space.) The default prompts are ``> '' and ``>> ''. OPTIONS
- load and execute the standard input as a file, that is, not interactively, even when the standard input is a terminal. -e stat execute statement stat. You need to quote stat if it contains spaces, quotes, or other characters special to the shell. -i enter interactive mode after script is executed. -l file call require(file) before executing script. Typically used to load libraries (hence the letter l). -v show version information. -P suppress the creation of a standard LUA_PATH variable. Use this if you need to run scripts which conflict with system-installed libraries. SEE ALSO
luac(1) http://www.lua.org/ DIAGNOSTICS
Error messages should be self explanatory. AUTHORS
R. Ierusalimschy, L. H. de Figueiredo, and W. Celes <lua@tecgraf.puc-rio.br> Debian modifications to the manpage by Daniel Silverstone <dsilvers@debian.org> 2003/04/02 00:05:20 LUA(1)
All times are GMT -4. The time now is 02:55 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy