Echo print on same line while loop using variable


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Echo print on same line while loop using variable
# 1  
Old 11-08-2019
Echo print on same line while loop using variable

Currently using below script but echo it print the output in two line.

Input file all-vm-final-2.txt

Code:
CEALA08893 SDDC_SCUN DS_SIO_Workload_SAPUI_UAT_01 4
CEALA09546 SDDC_SCUN DS-SIO-PD5_Workload_UAT_SP1_Flash_07 4
CEALA09702 SDDC_SCUN DS-VSAN-RMP-WORKLOAD01 4
DEALA08762 SDDC_LDC DS-SIO-Workload-NonPROD-01 4

Code:
 while IFS=" ," read a b c d; do
    echo "New-HardDisk -VM  $a -CapacityGB $d -DiskType Flat -Datastore $c -StorageFormat Thin" >> script-file.txt
done < all-vm-final-2.txt

I am getting output like this

Code:
New-HardDisk -VM  CEALA08893 -CapacityGB 4
 -DiskType Flat -Datastore DS_SIO_Workload_SAPUI_UAT_01 -StorageFormat Thin
New-HardDisk -VM  CEALA09546 -CapacityGB 4
 -DiskType Flat -Datastore DS-SIO-PD5_Workload_UAT_SP1_Flash_07 -StorageFormat Thin
New-HardDisk -VM  CEALA09702 -CapacityGB 4
 -DiskType Flat -Datastore DS-VSAN-RMP-WORKLOAD01 -StorageFormat Thin
New-HardDisk -VM  DEALA08762 -CapacityGB 4
 -DiskType Flat -Datastore DS-SIO-Workload-NonPROD-01 -StorageFormat Thin

# 2  
Old 11-08-2019
On what OS was your input file produced? Looks like MSsomething... and so I would not be surprised that "$d" contains next line char...
Try and put
Code:
-CapacityGB $d

at the end and see what happens...
So for testing new code:
Code:
 while IFS=" ," read a b c d; do
    echo "New-HardDisk -VM  $a  -DiskType Flat -Datastore $c -StorageFormat Thin -CapacityGB $d" >> script-file.txt
done < all-vm-final-2.txt

If that is the case, then pass your file through dos2unix type utility...

My 2 cents...

Last edited by vbe; 11-08-2019 at 07:31 AM..
This User Gave Thanks to vbe For This Post:
# 3  
Old 11-08-2019
Pls post a hexdump of your input file.
# 4  
Old 11-08-2019
Quote:
Originally Posted by vbe
On what OS was your input file produced? Looks like MSsomething... and so I would not be surprised that "$d" contains next line char...
Try and put
Code:
-CapacityGB $d

at the end and see what happens...
So for testing new code:
Code:
 while IFS=" ," read a b c d; do
    echo "New-HardDisk -VM  $a  -DiskType Flat -Datastore $c -StorageFormat Thin -CapacityGB $d" >> script-file.txt
done < all-vm-final-2.txt

If that is the case, then pass your file through dos2unix type utility...

My 2 cents...
I am using cygwin in windows. Thanks it was working now i used
Code:
-CapacityGB $d

at the end

Last edited by ranjancom2000; 11-08-2019 at 08:43 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep echo awk print all output on one line

Hello, I've been trying to find the answer to this with Google and trying to browse the forums, but I haven't been able to come up with anything. If this has already been answered, please link me to the thread as I can't find it. I've been asked to write a script that pulls a list of our CPE... (51 Replies)
Discussion started by: rwalker
51 Replies

2. Shell Programming and Scripting

BASH - Need to echo for loop output to one line

I'm trying to echo the release version of some of our Linux servers. Typically I do these types of things by "catting" a text file with the host names, "ssh-ing" to the host and running my string. This is what I've written for i in `cat versions.txt` ; do echo $i ; ssh $i cat /etc/issue |... (5 Replies)
Discussion started by: lombardi4851
5 Replies

3. Shell Programming and Scripting

Echo printing a line in 2 lines; expected to print in one line

Dear All, fileName: therm.txt nc3h7o2h 7/27/98 thermc 3h 8o 2 0g 300.000 5000.000 1390.000 41 1.47017550e+01 1.71731699e-02-5.91205329e-06 9.21842570e-10-5.36438880e-14 2 -2.99988556e+04-4.93387892e+01 2.34710908e+00 4.34517484e-02-2.65357553e-05 3 ... (7 Replies)
Discussion started by: linuxUser_
7 Replies

4. Shell Programming and Scripting

Print for loop variable in output too

Hi, This is my input file cat input chr1:100-200 chr1:220-300 chr1:300-400 Now, I would like to run a program that will take each of the input record for i in `cat input`; do program $i | wc -l;done the output will be something like 10 20 30 But, I would like to print the... (4 Replies)
Discussion started by: jacobs.smith
4 Replies

5. Shell Programming and Scripting

Print in New line in loop

Hi , i want to print the output in line by line while read LINE do echo $LINE | grep UCM | egrep '(Shutdown|Unavailable)' echo $LINE | grep SRBr | egrep '(Shutdown|Unavailable)' echo $LINE | grep SRP| egrep '(Shutdown|Unavailable)' echo $LINE | grep OM | grep JMS|... (7 Replies)
Discussion started by: navsan
7 Replies

6. Shell Programming and Scripting

Script to loop line in a file and add info or do echo

I have a record.txt it will update weekly, and it could be 2 lines or more ... it just echo each line to the script san jose,23.34% tampa,2.15% dallas,30.20% seattle,44.29% Unknown,16.72% How do i write a shell script to give me a test.pl or bash file which contain #!/home/perl... (8 Replies)
Discussion started by: sabercats
8 Replies

7. Shell Programming and Scripting

Print (echo) variable in a single line

Hi, I have written this code ------------------------------------------------ # !/bin/ksh i=0 while do j=$i while do echo -e $j #printf "%d",$j j=`expr $j - 1` done echo i=`expr $i + 1` done ---------------------------------------------------- The ouput which... (2 Replies)
Discussion started by: rac
2 Replies

8. Shell Programming and Scripting

echo/print variable question

while read filer ; do echo $filer $1 $2; ssh $filer vfiler status -r | awk '/running/{host=$1}/Path:/{path=$2;print host,path}'; done < filers.list this will print node1 vfiler0 / vfiler2 /vol/vfiler2_vol0 vfilert /vol/vfiler_vol vfilert /vol/virt_vol where node1 = $filer. however how... (1 Reply)
Discussion started by: riegersteve
1 Replies

9. Shell Programming and Scripting

Using echo to print double quotes along with variable substitution

Hi, I am generating html code using cshell, but i am having one problem while printing double quotes, I need to write following code in file. where $var contains list of web address <a href="$var">$var</a> So i am using echo "<a href="$var">$var</a>" > file.html But with this " in... (4 Replies)
Discussion started by: sarbjit
4 Replies
Login or Register to Ask a Question