General :: Bash: How To Pass Command Line Arguments Containing Special Characters
Jun 24, 2011
I've written myself a linux program "program" that does something with a regular expression. I want to call the program in the bash shell and pass that regular expression as a command line argument to the program (there are also other command line arguments). A typical regular expression looks like "[abc]_[x|y]". Unfortunately the characters [, ], and | are special characters in bash. Thus, calling "program [abc]_[x|y] anotheragument" doesn't work. Is there a way to pass the expression by using some sort of escape characters or quotation marks etc.? (Calling program "[abc]_[x|y] anotheragument" isn't working either, because it interprets the two arguments as one.)
I've written myself a linux program "program" that does something with a regular expression. I want to call the program in the bash shell and pass that regular expression as a command line argument to the program(there are also other command line arguments). A typical regular expression looks like "[abc]_[x|y]".Unfortunately the characters [, ], and | are special characters in bash. Thus, calling "program [abc]_[x|y] anotheragument" doesn't work. Is there a way to pass the expression by using some sort of escape characters or quotation marks etc.?
(Calling program "[abc]_[x|y] anotheragument" isn't working either, because it interprets the two arguments as one.)
I'm having problems with bash quoting. Maybe someone can tell me what's going on.. Basically, I need to create a command line inside a bash script that contains arguments that contain spaces and bash variables that need to be expanded.
I wrote a C++ program that uses two different parsers. The first parser is reading program arguments from command line:./mybin arg1 arg2 ...then during program execution there's an interactive prompt asking for more parameters:
... >> (second bunch of arguments here) ...
I'd like to run my program inside a bash script, but I don't know how to give the second level arguments.
Write a script that will take a list of filenames as arguments and output a count of how many of them are regular files, and how many of them are scripts (if the file is executable, it will be assumed to be a script file)
I have a log file that contains information like this:
---------------------------- r11141 | prasath-palani | 2010-12-23 16:21:24 +0530 (Thu, 23 Dec 2010) | 1 line Changed paths: M /projects/ M /projects/
[code]....
what i need is, i need to copy the data given between the "---" to seperate files, for, e.g. the first set of data between the "---" should be in one file and another set of data in another file.
processArgs $* If I call this script with Code: ./script first second third it'll print each of the argument on a new line - exactly what I would expect. However if I call it with
Code: ./script "Single Argument" "Second-Argument" it splits the first argument in two using the space as a delimitor. The problem appears to be the call to processArgs, where $* doesn't honour the quotes around the variables sent to the script.
I have a bunch of files (around 900) that have some special characters. Some of the files contains example, and quoting "[useless] filename (something)"so what I want is just to strip the brackets and parenthesis, some are folders, others are text files
The university I go to uses a WPA2 wireless network that requires a netID and password to connect too. I installed wicd but I can't seem to connect to this network, is there a way to add this functionality to wicd, and if so, how do I do that (links to a how-to or guide would be nice, I've yet to find one).
Also, I spend most of my time on campus in the command line, so I'd like to know if there is a way to use command line utilities to connect to this network (again, a guide or how-to would be nice)
I can get online through my fedora live USB just fine (w/ network manager) but I'd rather get on directly from slackware.
I want to know how to get eg. the contents of a form on a webpage which has been passed to a server side PHP script, inside for example an array which I can read. I've been reading a ebook on PHP which as far as I can see doesn't cover this inside it.
I am having trouble trying to get the kernel to accept some command line arguments for parport_pc during bootup. I have a custom base board with a PC-104 CPU board connected to it through the ISA bus. On the base board I have 3 parallel ports mapped to addresses, 0x150, 0x158, and 0x160. Only the first one needs interrupts, the second two do not. So, on bootup I load the parport_pc module like this modprobe parport_pc io=0x150,0x158,0x160 irq=3,none,none I have been running an older RedHat kernel, 2.6.11 for the past few years and this has been working flawlessly. I had the above modprobe call in /etc/rc.d/rc.local.
Now I am trying to set the system up to use CentOS 5.5, kernel 2.6.18-194.el5. What happens is, the module inserts OK, but the system never recognizes the ports. (i.e, they do not show up in /proc/ioports) But, if I log into the system, then rmmod parport_pc, then re-modprobe it as above, it works just fine and now my ports are visible. This is an embedded system, expected to just come up and run, so kicking it into action by hand is not an option.
I have tried putting a parport_pc.modules file in /etc/sysconfig/modules so that it will be seen by rc.sysinit, (some site I found while googling said modprobes need to be done earlier than in rc.local),and again, the module gets inserted but the ports are not seen. I have also tried putting rediculously long pauses between each step of the modprobing of the parport stuff;
1. What file do i have to edit in order to include /usr/local/bin in the class path (ie. I put an executable in /usr/local/bin and when I try to execute it, it says the command cannot be found, etc.) EDIT: Solved, just didn't set PATH correctly. EDIT: New problem. When I try to execute a program in /usr/local/bin, it says "fopen: john.ini: File not found" Yet when i cd to /usr/local/bin, it doesn't say that. What would cause this?
2. Once I get my system setup the way i like it, how would i go about making it into a bootable CD/DVD?
3. How would I pass arguments from a shell script to a program?
how to use QGLviewer. I want to give my program a file name as a command line argument. All of the sample programs I find have a main.cpp file like this:
Quote:
#include <QApplication> #include "window.h" int main(int argc, char *argv[])
[code]....
Then the Window class, which is derived from QGLViewer, does all the program's actual work. If I want access to argc and argv, for example, to open and read a file that's passed as an argument, what would handle that? Is there a built-in way to get the arg variables to the window class, or do I need to just write a loadfile function and pass them?
I have recently installed MySQL Server on my CentOS box.
CentOS 5 MySQL 5.0.45 (installed using 'yum install mysql-server') I can start the daemon without error by issueing the following command: service mysqld start
The problem is that I want to use a number of the command line options available to mysqld, such as --verbose and When I issue '/etc/init.d/mysqld --verbose --help' I get the following output:
Simple logging script that allows user to enter quick notes and questions, but I can not get it to pass punctuation '?. no matter what I type after 'n' i need that to be inserted at the end of the working project note file.Any help and working examples would be appreciated, but please also direct me to the proper reading material so I can learn something - not looking for someone to just do it for me.usage:
I am trying to make specifically Norwegian characters appear properly. Right now they look like this:
[URL]
Characters like turns the same. This is a font that I downloaded called PT Sans. The letters I want are included, they just don't appear right in the GNOME environment, it seems. They work just fine in other applications, such as OOo Writer. I'm using Ubuntu 10.04.
Has anyone used rtmpdump or flvstreamer? They compile well (there is also a package on Packman for rtmpdump, but not for the latest version) and have man pages listing a bunch of command line arguments, but I have not yet figured out how to use them in connection with browser and flash plugin.
I am able to start up firefox just fine out of my terminal, but i have not been able to find any list of arguments that can be added in the command line. what i'm looking for is that it starts up in Full Screen mode right off. is there an argument that can be added to ti to do that?
I want to archive all .ctl files in a folder, recursively.tar -cf ctlfiles.tar `find /home/db -name "*.ctl" -print`The error message :tar: Removing leading `/' from member namestar: /home/db/dunn/j: Cannot stat: No such file or directorytar: 74.ctl: Cannot stat:No such file or directoryI have these files: /home/db/dunn/j 74.ctl and j 75. Notice the extra space. What if the files have other special characters? How do I archive these files recursively?
I am running gentoo openbox(rox file manager and desktop) I installed Digikam and Amarok. But I have problems with files which include special character in their names(such as �,�, �,ğ... ) The files are shown with strange and weird characters in the file dialogs of Digikam and Amarok.
I don't have this problem in other applications. I can create files with special character included. I think some settings do not agree with KDE4. How can I solve this problem? Does anyone have an idea? I also installed KDE systemsettings program but could not find a relevant config option for character encoding.