Enclosing characters in single quotes preserves the literal value of each character within the quotes. A single quote may not occur between single quotes, even when preceded by a backslash.
Therefore, you need to terminate the quoted expression, insert the escaped quote, and start a new quoted expression. The shell's quote removal does not add any extra spaces, so in effect you get string concatenation.
Last edited by vidyadhar85; 09-16-2009 at 10:53 PM..
Hello, I'm trying to use grep or egrep to exclude a whole range of characters but how do I exclude both a single and a double quote.
It might be easier to say how do I use grep to find both single and double quotes.
grep ' ' " ' file
grep detects the first single quote within my... (4 Replies)
I'm not very familiar with the ssh command. When I tried to set a variable and then echo its value on a remote machine via ssh, I found a problem. For example,
$ ITSME=itsme
$ ssh xxx.xxxx.xxx.xxx "ITSME=itsyou; echo $ITSME"
itsme
$ ssh xxx.xxxx.xxx.xxx 'ITSME=itsyou; echo $ITSME'
itsyou
$... (3 Replies)
Hi,
I am trying to write the following command as an alias in my .bashrc file.
bjobs -u all | awk '{if (NR > 1) {username++;}}END{{print"\nJOBS BY USER:\n"} for (i in username) {print username,i;}{print"\n Total Jobs=",NR-1,"\n" }}'
The command simply puts how many jobs each user is... (2 Replies)
Unix superusers,
I am new to unix but would like to learn more about grep. I am very familiar with regular expressions as i have used them for searching text files in windows based text editors. Since I am not very familiar with Unix, I dont understand when one should use GREP with the... (2 Replies)
Hi Unix experts,
Believe me, this forum has been really great help and I searched for many things that were already answered before open new post that were just new versions of old one, but with this one, I just can't simply move any forward.
This must be quite easy, but I cant find where I... (1 Reply)
Hello. I'm trying to write a bash script that uses GNU screen and have hit a brick wall that has cost me many hours... (I'm sure it has something to do with quoting/globbing, which is why I post it here)
I can make a script that does the following just fine:
test.sh:
#!/bin/bash
# make... (2 Replies)
Hi i have to insert the below line into a specific line number of another file
export MBR_CNT_PRCP_TYPE_CODES_DEL="'01','02','04','05','49','55','UNK'"
I have passed the above line to a variable say ins_line. I have used below command to perform the insert
awk 'NR==3{print "'"${ins_line}"'"}1'... (1 Reply)
Hi,
Trying to change the prompt. I have the following code.
export PS1='
<${USER}@`hostname -s`>$ '
The hostname is not displayed
<abc@`hostname -s`>$ uname -a
AIX xyz 1 6 00F736154C00
<adcwl4h@`hostname -s`>$
If I use double quotes, then the hostname is printed properly but... (3 Replies)
Hi Froum.
I have tried in vain to find a solution for this problem - I'm trying to replace any double quotes within a quoted string with a single quote, leaving everything else as is.
I have the following data:
Before:
... (32 Replies)
Hi All,
I'm unable to load the data using sql loader where there are double quotes within the double quotes As these are optionally enclosed by double quotes.
Sample Data :
"221100",138.00,"D","0019/1477","44012075","49938","49938/15043000","Television - 22" Refurbished - Airwave","Supply... (6 Replies)
Discussion started by: mlavanya
6 Replies
LEARN ABOUT FREEBSD
openpam_readword
OPENPAM_READWORD(3) BSD Library Functions Manual OPENPAM_READWORD(3)NAME
openpam_readword -- read a word from a file, respecting shell quoting rules
LIBRARY
Pluggable Authentication Module Library (libpam, -lpam)
SYNOPSIS
#include <sys/types.h>
#include <stdio.h>
#include <security/pam_appl.h>
#include <security/openpam.h>
char *
openpam_readword(FILE *f, int *lineno, size_t *lenp);
DESCRIPTION
The openpam_readword() function reads the next word from a file, and returns it in a NUL-terminated buffer allocated with malloc(3).
A word is a sequence of non-whitespace characters. However, whitespace characters can be included in a word if quoted or escaped according
to the following rules:
o An unescaped single or double quote introduces a quoted string, which ends when the same quote character is encountered a second time.
The quotes themselves are stripped.
o Within a single- or double-quoted string, all whitespace characters, including the newline character, are preserved as-is.
o Outside a quoted string, a backslash escapes the next character, which is preserved as-is, unless that character is a newline, in which
case it is discarded and reading continues at the beginning of the next line as if the backslash and newline had not been there. In all
cases, the backslash itself is discarded.
o Within a single-quoted string, double quotes and backslashes are preserved as-is.
o Within a double-quoted string, a single quote is preserved as-is, and a backslash is preserved as-is unless used to escape a double
quote.
In addition, if the first non-whitespace character on the line is a hash character (#), the rest of the line is discarded. If a hash charac-
ter occurs within a word, however, it is preserved as-is. A backslash at the end of a comment does cause line continuation.
If lineno is not NULL, the integer variable it points to is incremented every time a quoted or escaped newline character is read.
If lenp is not NULL, the length of the word (after quotes and backslashes have been removed) is stored in the variable it points to.
RETURN VALUES
If successful, the openpam_readword() function returns a pointer to a dynamically allocated NUL-terminated string containing the first word
encountered on the line.
The caller is responsible for releasing the returned buffer by passing it to free(3).
If openpam_readword() reaches the end of the line or file before any characters are copied to the word, it returns NULL. In the former case,
the newline is pushed back to the file.
If openpam_readword() reaches the end of the file while a quote or backslash escape is in effect, it sets errno to EINVAL and returns NULL.
IMPLEMENTATION NOTES
The parsing rules are intended to be equivalent to the normal POSIX shell quoting rules. Any discrepancy is a bug and should be reported to
the author along with sample input that can be used to reproduce the error.
SEE ALSO openpam_readline(3), openpam_readlinev(3), pam(3)STANDARDS
The openpam_readword() function is an OpenPAM extension.
AUTHORS
The openpam_readword() function and this manual page were developed by Dag-Erling Smorgrav <des@des.no>.
BSD September 12, 2014 BSD