10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
The lines that I am trying to format look like
Device ID: j01-01, IP address: 10.10.10.36, IP address: 10.10.10.35, IP address: 10.10.102.201, Platform: 8040, Capabilities: Host ,
Interface: GigabitEthernet9/45, Port ID (outgoing port): e0k,Here is what I have so far but it... (4 Replies)
Discussion started by: dis0wned
4 Replies
2. Shell Programming and Scripting
Hi Guys,
I am trying to format my csv file. When I spool the file using sqlplus the single row output is wrapped on three lines.
Somehow I managed to format that file and finally i am trying to make the multiple line on single line.
The below command is working fine but I need to pass the... (3 Replies)
Discussion started by: RJSKR28
3 Replies
3. Shell Programming and Scripting
I have a file
# cat /tmp/user_find.txt
/home/user/bad_link1
/home/user/www
/home/user/mail
/home/user/access_logs
/home/user/bad_link2
I need to delete lines where there are patterns /home/user/www, /home/user/mail and /home/user/access_logs. I used below method, but its throwing error... (8 Replies)
Discussion started by: anil510
8 Replies
4. Shell Programming and Scripting
I need to match two patterns in a log file and need to get the next line of the one of the pattern (out of two patterns) that is matched,
finally need to print these three values in a single line.
Sample Log:
2013/06/11 14:29:04 <0999> (725102) Processing batch 02_1231324
2013/06/11... (4 Replies)
Discussion started by: rpm120
4 Replies
5. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
I have file which has got the following content
sam 123 LD 41
sam 234 kp
sam LD 41
kam pu
sam LD 61
Now... (1 Reply)
Discussion started by: muchyog
1 Replies
6. Shell Programming and Scripting
I'm new to using sed and grep commands, but have found them extremely useful. However I am having a hard time figuring this one out:
Delete every line containing the word CEN and the next line as well.
ie. test.txt
blue
324 CEN
green
red
blue
324 CEN
green
red
blue
to produce:... (2 Replies)
Discussion started by: rocketman88
2 Replies
7. Shell Programming and Scripting
Hello friends,
Only very recently i started learning sed command...an i found that sed is faster in finding the patterns than some of my scripts that uses grep to check the patten inside a file using line by line search method which is time consuming.
The below script... (4 Replies)
Discussion started by: frozensmilz
4 Replies
8. Shell Programming and Scripting
Hi..
How to search for multiple words in a single line using grep?.
Eg: Jack and Jill went up the hill
Jack and Jill were best friends
Humpty and Dumpty were good friends too
----------
I want to extract the 2nd statement(assuming there are several statements with... (11 Replies)
Discussion started by: anduzzi
11 Replies
9. Shell Programming and Scripting
I have the following data file.
zz=aa azxc-1234 aa=aa
zz=bb azxc-1234 bb=bb
zz=cc azxc-1234 cc=cc
zz=dd azxc-2345 dd=dd
zz=ee azxc-2345 ee=ee
zz=ff azxc-3456 ff=ff
zz=gg azxc-4567 gg=gg
zz=hh azxc-4567 hh=hh
zz=ii azxc-4567 ii=ii
I want to make 2nd field pattern matching multiple lines... (13 Replies)
Discussion started by: VTAWKVT
13 Replies
10. Shell Programming and Scripting
hey gents,
I'm working on something that will use snmpwalk to query the devices on my network and retreive the device name, device IP, device model and device serial. I'm using Nmap for the enumeration and sed to clean up the results for use by snmpwalk. Once i get all the data organized I'm... (8 Replies)
Discussion started by: mitch
8 Replies
SOCKDOWN(1) General Commands Manual SOCKDOWN(1)
NAME
sockdown - shutdown(2) a socket
netpipes 4.2
SYNOPSIS
sockdown [ fd [how] ]
DESCRIPTION
sockdown performs the shutdown(2) system call on one of its file descriptors specified by fd. The possible values for how are
+----------+---------------------------------------------------------+
|writeonly | convert to write-only file descriptor |
|0 | convert to write-only file descriptor |
|writeonly | symbolic for same as above |
|1 | convert to read-only file descriptor |
|readonly | symbolic for same as above |
|2 | complete shutdown. no more reads or writes are allowed |
|totally | symbolic for same as above |
+----------+---------------------------------------------------------+
The default fd is 1 (stdout) and the default how is 1.
EXAMPLES
Imagine you have a machine that can perform a service (in this case conversion from ASCII to fancy postscript) :
server$ faucet 3000 --in --out enscript -2rGhp -
You may then connect to it with a hose. However, the first example enters deadlock :
client$ hose server 3000 -in -out
sh -c " cat blah.txt & cat > blah.ps "
The enscript blocks waiting for input from the socket because not all of the client processes have exited. While the cat blah.txt is fin-
ished, the cat > blah.ps is not, and will not be finished until the remote enscript process finishes writing. The enscript process will
not finish writing until it is finished reading, but that client->server half of the socket is still open and will not be closed until all
the client processes are done. The result is deadlock.
So, we use sockdown to close half of the pipe
client$ hose server 3000 -in -out
sh -c " ( cat blah.txt ; sockdown ) & cat > blah.ps "
This way when the cat blah.txt is done, half of the socket is shut down and the remote enscript process runs out of input, causing it to
flush its output and exit, so eventually the whole mess finishes cleanly.
Note: the & on the hose is necessary to prevent another deadlock. If we simply used the ; to serialize the two cat processes it is possi-
ble that the enscript would fill up its write buffer before the first cat was done causing both processes to block and preventing the sec-
ond cat from draining the pipe.
Of course, that idiomatic usage of hose is so useful that it is a special form:
client$ hose server 3000 -slave < blah.txt > blah.ps
Ian Stirling <root@mauve.demon.co.uk> informs me that sockdown can be used in Linux's /proc/pid/fd/ directories to tear down hung network
connections. I have since used this myself on a wedged MOMspider. To try this, you have to know the PID of the program and the file
descriptor of the wedged socket (can sometimes be found by running strace and see if the program is stuck in a read(2) system call). If
the PID is 991 and the socket's descriptor is 5, you do this as root:
bash# sockdown 1 2 > /proc/991/fd/5
ERRORS
Socket operation on non-socket
Invalid argument (seen on Solaris) The fd you specified does not refer to a socket. This happens when you run sockdown by itself (it is
unlikely that any of the file descriptors attached to an interactive shell are actually sockets) or if you goof up your faucet/hose command
and forgot to dup(2) one of your descriptors.
Bad file number You gave it a bad file number for fd. If you have enough skill to actually generate this error, you probably know what is
wrong.
If you encounter any other errors, clue me in.
SEE ALSO
netpipes (1) faucet (1), hose (1), getpeername (1), socket (2), shutdown (2),
NOTES
Any normal human would assume a program this simple has to be bug free, but I am an experienced programmer.
Just avoid doing anything funky like passing sockdown strings and it should serve you well. You should not have to pass it any arguments
unless you are doing something fairly funky.
Perhaps I should ditch the shutdown -a semantics on hose since a sockdown 1 2 would do the job.
CREDITS
Ian Stirling <root@mauve.demon.co.uk>, for the idea of using this program in /proc on a Linux machine.
COPYRIGHT
Copyright (C) 1995-1998 Robert Forsman
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MER-
CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation,
Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
AUTHOR
Robert Forsman
thoth@purplefrog.com
Purple Frog Software
http://web.purplefrog.com/~thoth/
July 7, 1998 SOCKDOWN(1)