Sponsored Content
Top Forums Shell Programming and Scripting Slack message multi line from UNIX script Post 303025574 by Don Cragun on Tuesday 6th of November 2018 04:28:05 AM
Old 11-06-2018
Your code fragment: echo $text | $text1 is piping the output from echo $text into the command specified by $text1. From your description, that doesn't seem to be what you want to do. If you had shown us how lmsg had been initialized and had shown us the diagnostics produced when you tried to run your code, this might have been more obvious.

The code gull04 suggested will concatenate the text from both variables onto a single line of output. If you want to print the contents of your two variables on separate lines, you need to put a <newline> character between the output from formatting each of your two variables. One portable way to do that would be to replace the code fragment above with:
Code:
printf '%s\n' "$text" "$text1"

If $text and/or $text1 expand to multiple lines that you're trying to flatten or contain sequences of multiple spaces that you're trying to convert to single spaces or contain tabs that you want to convert to spaces (and that is why you didn't quote them), then replace the code fragment shown above with:
Code:
{ echo $text
  echo $text1
}

or:
Code:
{ echo $text; echo $text1; }

This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Programming

message queues and multi-process

Hi, Am supposed to use message queues to send and receive messages between the processes. when i was working on that i realised that the message qid and the message queue related data should be maintained in a shared memory so that it can be accessed by all the processes. Could anybody refer... (10 Replies)
Discussion started by: rvan
10 Replies

2. Shell Programming and Scripting

Multi line variable script... needs help.

I am trying to write a script that will help me put a file into excel with little manipulation. Below is a sample of the file im using. Group1:*:gid1:user,user Group2:*:gid2:user,user Group3:*:gid3:user,user,user,user,user,user,user Group4:*:gid4:user,user I marked in red the part that is... (1 Reply)
Discussion started by: rookieuxixsa
1 Replies

3. Shell Programming and Scripting

SH script to parse string and return multi-line file

Hello all, I have been asked to exercise my shell scripting and it has been 10 plus years since I used to do it so I can not remember hardly anything and ask for your help. What I need to do is copy a line out of a file that can be 10 to 100 characters long, I then need to parse this line into... (3 Replies)
Discussion started by: Alivadoro
3 Replies

4. Shell Programming and Scripting

Multi-line filtering based on multi-line pattern in a file

I have a file with data records separated by multiple equals signs, as below. ========== RECORD 1 ========== RECORD 2 DATA LINE ========== RECORD 3 ========== RECORD 4 DATA LINE ========== RECORD 5 DATA LINE ========== I need to filter out all data from this file where the... (2 Replies)
Discussion started by: Finja
2 Replies

5. Shell Programming and Scripting

Removing SAS multi line comments in UNIX

i have to remove the commented (/* . . . .*/) part which starts in one line and ends in other.help me with generic code because i have 1000 to 10k lines code which i have to remove. data one; set work.temp; input name age; infile filename; /* dfsdf dsfs sdfdf dsdd sdfsf sdfsf sfs... (4 Replies)
Discussion started by: saaisiva
4 Replies

6. Shell Programming and Scripting

Sed: deleting last line prevents '$' address from working in the multi-script invocation

It looks like if matching and deleting the last line confuses 'sed' so it does not recognize '$' address. Consider: sed -e '/^3/d' -e '$ a text' supposed to delete a line starting with '3' and then append 'text' after the last line of input. But, if it is the last line of input which starts... (2 Replies)
Discussion started by: msz59
2 Replies

7. Shell Programming and Scripting

Reading Multi Line SQL in UNIX

Hello, Currently, I am reading few queries from the below .sql file --SOURCE TABLE NAME --SOURCE QUERY SEL COL1, COL2, COL3, COL4, COL5, COL6, COL7 WHERE COL5 = '2015-11-04 16:24:00.000000' FROM SOURCE TABLE; --TARGET TABLE NAME --TARGET QUERY SEL COLUMN1, COLUMN2, COLUMN3, COLUMN4,... (4 Replies)
Discussion started by: ronitreddy
4 Replies

8. UNIX for Beginners Questions & Answers

Script to accept Multi line inputs

Hi there, I'm trying to create a script that will accept multiple inputs by copying and pasting the strings from a notepad, hit Enter key and output the string to a text file.I'm thinking of using the read command however it will just simply get the first line. Apologies but got no idea how... (7 Replies)
Discussion started by: norbie.lopez
7 Replies

9. Shell Programming and Scripting

Help with reformat single-line multi-fasta into multi-line multi-fasta

Input File: >Seq1 ASDADAFASFASFADGSDGFSDFSDFSDFSDFSDFSDFSDFSDFSDFSDFSD >Seq2 SDASDAQEQWEQeqAdfaasd >Seq3 ASDSALGHIUDFJANCAGPATHLACJHPAUTYNJKG ...... Desired Output File >Seq1 ASDADAFASF ASFADGSDGF SDFSDFSDFS DFSDFSDFSD FSDFSDFSDF SD >Seq2 (4 Replies)
Discussion started by: patrick87
4 Replies

10. UNIX for Beginners Questions & Answers

Merge multi-lines into one single line using shell script or Linux command

Hi, Can anyone help me for merge the following multi-line log which beginning with a " and line ending with ": into one line. *****Original Log***** 087;2008-12-06;084403;"mc;;SYHLR6AP1D\LNZW;AD-703;1;12475;SYHLR6AP1B;1.1.1.1;0000000062;HGPDI:MSISDN=12345678,APNID=1,EQOSID=365;... (3 Replies)
Discussion started by: rajeshlinux2010
3 Replies
expand(1)						      General Commands Manual							 expand(1)

NAME
expand, unexpand - Replaces tab characters with spaces or spaces with tab characters SYNOPSIS
Current syntax expand [-t tablist] [file...] unexpand [-a | -t tablist] [file...] Obsolescent syntax expand [-tabstop | -tab1,tab2,...,tabn] [file...] STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: expand: XCU5.0 unexpand: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
Replaces spaces at the beginning of each line with a tab, and inserts tab characters wherever their presence compresses the resultant file by replacing two or more characters. When the -t option is specified with the unexpand command, the -a option has no effect. (This option applies to the unexpand command only.) Specifies the tab stops. The tablist argument consists of a single positive decimal integer or multiple positive decimal integers, separated by spaces or commas, in ascending order. If a single number is specified, tabs are set tab- list column positions apart instead of the default (8). If multiple numbers are specified, tabs are set at those specific column posi- tions. Tabbing to tab stop position n thus causes the next character output to be in the (n+1)th column position on that line. If expand has to process a tab character at a position beyond the last of those specified in a multiple tab stop list, the tab char- acter is replaced by a single space in the output. Sets tab stops tabstop spaces apart instead of the default (8). (Obsolescent) Sets tab stops at specified columns. (Obsolescent) [Tru64 UNIX] Columns are measured in bytes. OPERANDS
The path name of a file to be processed. If you do not specify this operand, standard input is read. DESCRIPTION
The expand command changes tab characters to spaces in the named files, or the standard input, and writes the result to the standard out- put. The unexpand command puts tab characters into the data from the standard input, or the named files, and writes the result to the standard output. Backspace characters are preserved in the output and decrement the column count for tab calculations. The column position count cannot be decremented below one. The expand command is useful for preprocessing character files (before sorting, looking at specific columns, and so on.) that contain tab characters. By default, unexpand converts only spaces that are within sequences of spaces and tab characters at the beginnings of lines. Use -a to convert other sequences of spaces. NOTES
If the expand command encounters difficulties opening any specified file, it writes an error message to standard error and terminates imme- diately with an error status. If the unexpand command encounters difficulties opening any specified file, it writes an error message to standard error and continues operation. The exit status will reflect the error. EXIT STATUS
The following exit values are returned by either command: Successful completion. An error occurred. EXAMPLES
To replace tab characters in file with spaces, enter: expand file To replace the spaces in file with tab characters, enter: unexpand -a file ENVIRONMENT VARIABLES
The following environment variables affect the execution of expand and unexpand: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the inter- nationalization variables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non- empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale for the format and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the processing of LC_MESSAGES. SEE ALSO
Commands: fold(1), tabs(1) Standards: standards(5) expand(1)
All times are GMT -4. The time now is 12:51 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy