Sponsored Content
Top Forums Shell Programming and Scripting In Vi "sed" substitute word on a specific line Post 302960023 by Don Cragun on Monday 9th of November 2015 03:33:55 PM
Old 11-09-2015
Quote:
Originally Posted by pimmit22043
shell script positional parameters have to be inside double quotes and singe quotes when using the sed.

below is code:

Code:
schema_name=1
table_name=2

sed -e '8s/'"$table_name"'/"$schema_name"'.'"$table_name"'/' input_file

Smilie
I think you confused all of us with the references to vi when you are not using vi at all.

Your sed command is doing a lot of unnecessary switching between single quotes and double quotes. You can get exactly the same results as the sed command above just using:
Code:
sed -e "8s/$table_name/$schema_name.$table_name/" input_file

With the values you're using in this example, no quotes are needed at all. But if $table_name or $schema_name could expand to strings containing whitespace characters or characters that could have special meaning to the shell if they aren't quoted, the double quotes protect you in that case. The key point is that the shell doesn't expand variables inside single quotes, so you have to use double quotes instead of single quotes if you want sed to see the table_name and schema_name variables expanded in your sed substitute command.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sed substitute / for \ : error "Function can not be parsed"

Hello all, I have a weird issue when trying to substitute the slashes into backslashes. If I execute this on the command-line (bash / ksh) I get the path correctly translated with backslashes instead of slashes. > echo $PWD | sed 's/\//\\/g' However, when I put this in my script to... (3 Replies)
Discussion started by: candyflip2000
3 Replies

2. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies

3. Shell Programming and Scripting

Can "sed" substitute word on a specific line?

Hello experts, I know line number of the word I want to replace. Can "sed" substitute word on a specific line? As well, can sed substitute words inside a specific patten. ex. <word>lalala</word> #replace anything between <word> and </word> minifish (2 Replies)
Discussion started by: minifish
2 Replies

4. Shell Programming and Scripting

How to substitute "\" by "\/" using SED?

Input: a/b/c Output required: a\/b\/c This does not work: sed s/'\/'/'\//'/g (6 Replies)
Discussion started by: indianjassi
6 Replies

5. Shell Programming and Scripting

cat $como_file | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g'

hi All, cat file_name | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g' Can this be done by using sed or awk alone (4 Replies)
Discussion started by: harshakusam
4 Replies

6. Shell Programming and Scripting

How do I grep with sed and substitute a "#" on that line

Hey all, I am trying to disable a certain cronjob before I run a backup. I want to be able to add/remove a "#" from the beginning on the crontab line it is located on. Here is the crontab: 46 11 * * * /etc/webmin/cron/tempdelete.pl @daily /etc/webmin/time/sync.pl */5 * * * *... (4 Replies)
Discussion started by: eg mike
4 Replies

7. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

8. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

9. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies

10. Shell Programming and Scripting

Add the word "prefix" to beginning of line using sed

SUSE linux bash shell this works test -d /tmpp && echo "directory exists" || echo "directory doesn't exists" |sed -e "s/^/prefix /" prefix directory doesn't exists but why doesn't this work? test -d /tmp && echo "directory exists" || echo "directory doesn't exists" |sed -e... (3 Replies)
Discussion started by: snoman1
3 Replies
Tk_GetScrollInfo(3)					       Tk Library Procedures					       Tk_GetScrollInfo(3)

__________________________________________________________________________________________________________________________________________________

NAME
Tk_GetScrollInfo, Tk_GetScrollInfoObj - parse arguments for scrolling commands SYNOPSIS
#include <tk.h> int Tk_GetScrollInfo(interp, argc, argv, dblPtr, intPtr) int Tk_GetScrollInfoObj(interp, objc, objv, dblPtr, intPtr) ARGUMENTS
Tcl_Interp *interp (in) Interpreter to use for error reporting. int argc (in) Number of strings in argv array. const char *argv[] (in) Argument strings. These represent the entire widget command, of which the first word is typically the widget name and the second word is typically xview or yview. int objc (in) Number of Tcl_Obj's in objv array. Tcl_Obj *const objv[] (in) Argument objects. These represent the entire widget command, of which the first word is typically the widget name and the second word is typically xview or yview. double *dblPtr (out) Filled in with fraction from moveto option, if any. int *intPtr (out) Filled in with line or page count from scroll option, if any. The value may be negative. _________________________________________________________________ DESCRIPTION
Tk_GetScrollInfo parses the arguments expected by widget scrolling commands such as xview and yview. It receives the entire list of words that make up a widget command and parses the words starting with argv[2]. The words starting with argv[2] must have one of the following forms: moveto fraction scroll number units scroll number pages Any of the moveto, scroll, units, and pages keywords may be abbreviated. If argv has the moveto form, TK_SCROLL_MOVETO is returned as result and *dblPtr is filled in with the fraction argument to the command, which must be a proper real value. If argv has the scroll form, TK_SCROLL_UNITS or TK_SCROLL_PAGES is returned and *intPtr is filled in with the number value, which must be a proper integer. If an error occurs in parsing the arguments, TK_SCROLL_ERROR is returned and an error message is left in interp->result. Tk_GetScrollInfoObj is identical in function to Tk_GetScrollInfo. However, Tk_GetScrollInfoObj accepts Tcl_Obj style arguments, making it more appropriate for use with new development. KEYWORDS
parse, scrollbar, scrolling command, xview, yview Tk 8.0 Tk_GetScrollInfo(3)
All times are GMT -4. The time now is 01:29 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy