Sponsored Content
Top Forums Shell Programming and Scripting a very basic sed one-liner...that isn't working :-( Post 302360392 by SteveB-in-LV on Thursday 8th of October 2009 08:56:51 PM
Old 10-08-2009
a very basic sed one-liner...that isn't working :-(

Greetings all. Smilie

I would like to use sed to join all non-blank lines together in a particular file. I was thinking I could do this by simply replacing the terminating, new-line character on every line which is not blank, but I must be missing something in my sed line:

Code:
$ sed '/^.*$/s/\n$/\t/' InputFile

The solution here needs to leave blank lines untouched as the file is setup so blank lines mark the beginning of a new block of related lines, like so:

Code:
 
ROUTER-1-1
Virtual-Access1 is up, line protocol is up
Hardware is Virtual Access interface
MTU 1500 bytes, BW 256 Kbit, DLY 20000 usec,
reliability 255/255, txload 5/255, rxload 4/255
Encapsulation PPP, LCP Open
 
Dialer0 is up, line protocol is up (spoofing)
Hardware is Unknown
Internet address is 192.168.1.1/32
MTU 1500 bytes, BW 56 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation PPP, loopback not set
 
Virtual-Access1 is up, line protocol is up
Hardware is Virtual Access interface
MTU 1500 bytes, BW 256 Kbit, DLY 20000 usec,
reliability 255/255, txload 5/255, rxload 4/255
Encapsulation PPP, LCP Open
 
Loopback0 is up, line protocol is up
Hardware is Loopback
Description: Version 1.2
Internet address is 10.0.1.1/32
MTU 1514 bytes, BW 8000000 Kbit, DLY 5000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation LOOPBACK, loopback not set

Essentially, each original line in a block will end-up as a tab-delimited field on a single line of output; Something like this:

Code:
 
ROUTER-1-1 Virtual-Access1 is up, line protocol is up Hardware is Virtual Access interface MTU 1500 bytes, BW 256 Kbit, DLY 20000 usec, reliability \ ...
 
Dialer0 is up, line protocol is up (spoofing) Hardware is Unknown Internet address is 192.168.1.1/32 MTU 1500 bytes, BW 56 Kbit, DLY 20000 usec, \ ...
 
Virtual-Access1 is up, line protocol is up Hardware is Virtual Access interface MTU 1500 bytes, BW 256 Kbit, DLY 20000 usec, reliability \ ...
 
Loopback0 is up, line protocol is up Hardware is Loopback Description: Version 1.2 Internet address is 10.0.1.1/32 MTU 1514 bytes, BW 8000000  \ ...

Please correct my misguided ways and also let me know if you have a more eligant solution to this problem.


Thanks!
--Steve
(Linux newbie...in case you couldn't tell)

p.s.
For anyone out there reading this on a small monitor, I'm sorry if my lines of example output are excessively long. Smilie

I thought about using shorter (...and more boring) lines of input, but in the end, thought it might be more interesting and instructive if I included the real-world data with which I'm working.

If I made the wrong call here, let me know and I'll refrain from including long lines in my future posts.
 

10 More Discussions You Might Find Interesting

1. Solaris

grep -r isn't working

Hi, I was trying to use this particular option of grep grep -r 'Search_pattern' * This command should ideally search all the occurrences of Search_pattern recursively within a directory & print it on shell prompt. But this command is not doing what is expected. It just displays nothin! ... (8 Replies)
Discussion started by: harishmitty
8 Replies

2. UNIX for Dummies Questions & Answers

Which Sendmail version ? and why -d isn't working

Hi, I am trying to figure out which version I am running of sendmail, but I am buffed. This is what I get sendmail -d0.1 -bt < /dev/null sendmail: illegal option -- d Telneting to my host: ~]$ telnet localhost 25 Trying 127.0.0.1... Connected to localhost. Escape character is... (1 Reply)
Discussion started by: saariko
1 Replies

3. UNIX for Dummies Questions & Answers

Why isn't this working? tsch-doit file

#! /usr/tsch foreach f (`cat contacts.list`) awk '{printf ($2 in a) ? ","$5 : (NR>1) ? RS $2 FS $5 : $2 FS $5; a} END{print e}' $f > $f_inter.map end My file: cat contacts.list is just a list of files. I get this error: doit_contacts2intermap.sh: Command not found. Thanks! (1 Reply)
Discussion started by: lost
1 Replies

4. OS X (Apple)

Canot find library on compile - fixing PKG_CONFIG_PATH isn't working

I am using bash on OSX Leopard. When I attempt ./configure I get this error: checking for OPENSSL... configure: error: Package requirements (openssl) were not met: No package 'openssl' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a... (2 Replies)
Discussion started by: reasonstoprefer
2 Replies

5. Shell Programming and Scripting

awk isn't working

awk 'BEGIN{print '1.2449'**0.5}' awk: line 1: syntax error at or near * can someone help me troubleshoot the above command? i'm trying to do the square root of 1.2449. this command works on Red Hat, but for some reasonn isn't working on kubuntu (latest version). shell is bash. i... (3 Replies)
Discussion started by: SkySmart
3 Replies

6. Shell Programming and Scripting

crontab - runninf a java script just isn't quite working...

hi gurus. I have a little script that runs java from a certain directory. This script runs fine when run manually but when I try to schedule it, it fails to find the script. little_script.sh.. /<directory of java>/java -classpath... (3 Replies)
Discussion started by: MrCarter
3 Replies

7. Shell Programming and Scripting

String == isn't working in [[-test

Hi. I'm new to this forum, my English perhaps is not so good, but here is my question: In bash you can use ] for tests, and how I understand it the variable names should be expanded automatically. So this should give "yes": xx=hello $ ] && echo yes || echo no no # not giving "yes" These two... (2 Replies)
Discussion started by: 244an
2 Replies

8. Shell Programming and Scripting

export of a variable isn't working

Hi I want export input data ... echo "month: " read m export m=$m also export m is not working ? the month-variable should be exportet for the use in other scripts, but it is not working like this. What i'm doing wrong? Thanks in advance! IMPe (10 Replies)
Discussion started by: IMPe
10 Replies

9. Shell Programming and Scripting

Chmod working in sudo run script but chown isn't

My git user has permission in sudoers to run a wrapper script to move files into my webroot. Everything is working fine except for the chown line. After the script has run, the files ar still root:root instead of apache:apache. Scratching my head...:confused: #!/bin/sh echo echo "****... (4 Replies)
Discussion started by: dheian
4 Replies

10. HP-UX

Syslog daemon isn't working

Hi All, I've tried starting syslogd on our hp-ux 11.31 server. However, it is not getting started nor it is updating the syslog file. There is no space issue also. However, the mail.log file is approx 2GB, can that be of any issue. Please find the details below: # /sbin/init.d/syslogd... (2 Replies)
Discussion started by: Kits
2 Replies
netmasks(4)                                                        File Formats                                                        netmasks(4)

NAME
netmasks - network mask database SYNOPSIS
/etc/inet/netmasks /etc/netmasks DESCRIPTION
The netmasks file contains network masks used to implement IP subnetting. It supports both standard subnetting as specified in RFC-950 and variable length subnetting as specified in RFC-1519. When using standard subnetting there should be a single line for each network that is subnetted in this file with the network number, any number of SPACE or TAB characters, and the network mask to use on that network. Network numbers and masks may be specified in the conventional IP `.' (dot) notation (like IP host addresses, but with zeroes for the host part). For example, 128.32.0.0 255.255.255.0 can be used to specify that the Class B network 128.32.0.0 should have eight bits of subnet field and eight bits of host field, in addition to the standard sixteen bits in the network field. When using variable length subnetting, the format is identical. However, there should be a line for each subnet with the first field being the subnet and the second field being the netmask that applies to that subnet. The users of the database, such as ifconfig(1M), perform a lookup to find the longest possible matching mask. It is possible to combine the RFC-950 and RFC-1519 form of subnet masks in the net- masks file. For example, 128.32.0.0 255.255.255.0 128.32.27.0 255.255.255.240 128.32.27.16 255.255.255.240 128.32.27.32 255.255.255.240 128.32.27.48 255.255.255.240 128.32.27.64 255.255.255.240 128.32.27.80 255.255.255.240 128.32.27.96 255.255.255.240 128.32.27.112 255.255.255.240 128.32.27.128 255.255.255.240 128.32.27.144 255.255.255.240 128.32.27.160 255.255.255.240 128.32.27.176 255.255.255.240 128.32.27.192 255.255.255.240 128.32.27.208 255.255.255.240 128.32.27.224 255.255.255.240 128.32.27.240 255.255.255.240 128.32.64.0 255.255.255.192 can be used to specify different netmasks in different parts of the 128.32.0.0 Class B network number. Addresses 128.32.27.0 through 128.32.27.255 have a subnet mask with 28 bits in the combined network and subnet fields (often referred to as the subnet field) and 4 bits in the host field. Furthermore, addresses 128.32.64.0 through 128.32.64.63 have a 26 bits in the subnet field. Finally, all other addresses in the range 128.32.0.0 through 128.32.255.255 have a 24 bit subnet field. Invalid entries are ignored. SEE ALSO
ifconfig(1M), inet(7P) Postel, Jon, and Mogul, Jeff, Internet Standard Subnetting Procedure, RFC 950, Network Information Center, SRI International, Menlo Park, Calif., August 1985. V. Fuller, T. Li, J. Yu, K. Varadhan, Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy, RFC 1519, Network Information Center, SRI International, Menlo Park, Calif., September 1993. T. Pummill, B. Manning, Variable Length Subnet Table For IPv4, RFC 1878, Network Information Center, SRI International, Menlo Park, Calif., December 1995. NOTES
/etc/inet/netmasks is the official SVr4 name of the netmasks file. The symbolic link /etc/netmasks exists for BSD compatibility. SunOS 5.10 7 Jan 1997 netmasks(4)
All times are GMT -4. The time now is 10:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy