Hi, I'm a newbie in unix script. Currently i'm using script for my daily job. Can anyone here explain in detail above script? I mean the syntax and command line by line. I do understand the script swap the 3rd line with line 10. If i want to swap line no 2 with line no 3, i just need to change variable line=2 and line1=3 right?
TQ.
It should work, to learn this stuff is to read about it and find it out yourself, so try it out.
The idea of the script, to replace the 3th line with the 9th, is:
1. print all lines untill line 3-1 (2nd line)
2. place the 4th line untill line 9-1 (8th line) before the 3th line in the variable s separated by a newline
3. print the 9th line
4. print the variable s
5. print other lines after the 9th line
Explanation of the code:
Place the shellvariables in awk variables.
If the linenumber is equal to 3 execute the commands between the curly brackets {}
Place the current line in the variable s
Loop through the lines 4 till 8 and place the lines before the 3th line separated by a newline.
Read the next line (9th line), print the line, print the variable s and read the next line
awk evaluates the 1 as true and the prints the entire line by default, an equivalent of {print}.
I'm a bit new to regex and sed/perl stuff, so I would like to ask for some advice. I have tried several variations of scripts I've found on the net, but can't seem to get them to work out just right.
I have a file with the following information...
# Host 1
host 45583 {
filename... (4 Replies)
Hello, I have only recently begun with awk and need to write this:
I have an input consisting of a couple of letters, a space and a number followed by various other characters:
fiRcQ 9( )
klsRo 9( ) pause
fiRcQ 9( ) pause
klsRo continue 1
aPLnJ 62( )
fiRcQ continue 5
... and so on
I... (7 Replies)
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:
The assignment is to convert a text table to csv format. I've got the cleaning up done, but I need to swap two... (0 Replies)
I have some text:
<date>some_date</date>
<text>some_text</text>
<name>some_name<name>
and I want to transform it to smthng like that:
some_name on some_date: some_text
I've tried sed:
sed 's/<text>\(.*\)<\/text>
<name>\(.*\)<\/name>/\2 - \1/'
but it says unterminated... (13 Replies)
Hi
I'm quite new with linux.
Very simple, I need to swap every 2 lines in a file.
Example
INPUT:
a a a
b b b
x x x
y y y
s s s
t t t
OUTPUT:
b b b
a a a
y y y
x x x
t t t (5 Replies)
Hi All,
Sorry if this question has been posted elsewhere, but I'm hoping someone can help me! Bit of an AWK newbie here, but I'm learning (slowly!)
I'm trying to cobble a script together that will save me time (is there any other kind?), to swap two fields (one containing whitespace), with... (5 Replies)
Data file example
I look for primary and * to isolate the interesting slot number.
slot=`sed '/^primary$/,/\*/!d' filename | tail -1 | sed s'/*//' | awk '{print $1" "$2}'`
Now I want to get the Touch line for only the associate slot number, in this case, because the asterisk... (2 Replies)
How can you swap the first 4 line only, the rest will stay the same.
thanks
#!/bin/sh
line=4
awk -v var="$line" 'NR==var {
s=$0
getline;s=$0"\n"s
getline;print;print s
next
}1' fileko.tx
.
desired output: (8 Replies)
Hi there,
I have a text that I'm trying to format into something more readable. However, I'm stuck in the last step. I've searched and tried things over the internet with no avail.
OS: Mac
After parsing the original text that I won't put here, I managed to get something like this, but this... (8 Replies)