Sponsored Content
Top Forums Shell Programming and Scripting Append a line "while read line" Post 302982940 by RavinderSingh13 on Wednesday 5th of October 2016 12:06:48 AM
Old 10-05-2016
Quote:
Originally Posted by fongthai
input.txt
To make it easier, let assume xyz=2
So, I want look for the PIN line, then move it next xyz line (meaning: move it to next 2 lines)
The output should be like this:
Code:
line_before_pin_1
line_before_pin_2
..
line_after_pin_1
line_after_pin_2
PIN
line_after_pin_3
..
line_after_pin_end

Note that there are 2 actions:
- remove old PIN line
- add new PIN line to the right position
Hello fongthai,

Could you please try following and let me know if this helps you. Let's say your Input_file is as follows.
Code:
cat  Input_file
line_before_pin_1
line_before_pin_2
PIN
line_after_pin_1
line_after_pin_2
line_after_pin_3
line_after_pin_end

Then following is the code for same.
Code:
awk -vxyz=2 '{if($0 ~ /PIN/){while(++a<=xyz){getline;print $0;};print "PIN";a="";next}} 1'   Input_file

Output will be as follows.
Code:
line_before_pin_1
line_before_pin_2
line_after_pin_1
line_after_pin_2
PIN
line_after_pin_3
line_after_pin_end

Similarly you could change the value of variable in above code -vxyz=2to as per your requirement too.

Thanks,
R. Singh
This User Gave Thanks to RavinderSingh13 For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies

2. Shell Programming and Scripting

each line as 20digit long append zero "0" in front

i have an ip file like 121 1213412 34345353 long file want to made each line as 20digit long append zero "0" in front as 121 become 00000000000000000121 (1 Reply)
Discussion started by: RahulJoshi
1 Replies

3. Shell Programming and Scripting

sed append "\n" to end of every line in file

I know it sounds simple, but I want to e-mail the last 6 lines of a log file, which I have tailed into logresults.txt. I'm using echo -e "Subject:server results\nFrom:server log <user@domain.com>\n"`cat logresults.txt` | sendmail -t user@domain.com which works, but the body of the e-mail has... (4 Replies)
Discussion started by: unclecameron
4 Replies

4. Shell Programming and Scripting

script to read a line with spaces bet " " and write to a file

Hi, I need a command in UNIX KSH below is the description... MAPPING DESCRIPTION ="Test Mapping for the calid inputs" ISVALID ="YES" NAME ="m_test_xml" OBJECTVERSION ="1" VERSIONNUMBER ="1" unix ksh command to read the DESCRIPTION and write to a file Test Mapping for the calid inputs... (3 Replies)
Discussion started by: perlamohan
3 Replies

5. Shell Programming and Scripting

defining a variable using multiple "entries/columns" within a line using read

Hello All, I am trying to figure out how to use the read command. I have a txt file that has rows looking something like this: 1 2 3 4 5 6 7 8 9 where each number represents an entry of various characters deliminated by tabs. My goal is to set entries 2-7 as a variable/string that I... (3 Replies)
Discussion started by: Torinator
3 Replies

6. Shell Programming and Scripting

SED or AWK "append line to the previous line"

Hi, How can I remove the line beak in the following case if the line begin with the special char “;”? TEXT Text;text ;text Text;text;text I want to convert the text to: Text;text;text Text;text;text I have already tried to use... (31 Replies)
Discussion started by: research3
31 Replies

7. Shell Programming and Scripting

append "awk command" to the end of each line

hi; this is my qqq.mos: l ./gcsw 86.0.0.1 'lt all;l+;lset SectorPort=860 Tilt 861;l-' l ./gcsw 86.0.0.2 'lt all;l+;lset SectorPort=862 Tilt 863;l-' l ./gcsw 86.0.0.3 'lt all;l+;lset SectorPort=864 Tilt 865;l-' ... i want to append;l nawk 'NR==14 && $NF!="Set."{print "l ./gcsw "r"... (4 Replies)
Discussion started by: gc_sw
4 Replies

8. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

9. Shell Programming and Scripting

Move a line containg "char" above line containing "xchar"

Okay, so I have a rather large text file and will have to process many more and this will save me hours of work. I'm not very good at scripting, so bear with me please. Working on Linux RHEL I've been able to filter and edit and clean up using sed, but I have a problem with moving lines. ... (9 Replies)
Discussion started by: rex007can
9 Replies

10. Shell Programming and Scripting

Failure: if grep "$Var" "$line" inside while read line loop

Hi everybody, I am new at Unix/Bourne shell scripting and with my youngest experiences, I will not become very old with it :o My code: #!/bin/sh set -e set -u export IFS= optl="Optl" LOCSTORCLI="/opt/lsi/storcli/storcli" ($LOCSTORCLI /c0 /vall show | grep RAID | cut -d " "... (5 Replies)
Discussion started by: Subsonic66
5 Replies
beid-pkcs11-tool(1)						      Belgium						       beid-pkcs11-tool(1)

NAME
beid-pkcs11-tool - generic smart card utility SYNOPSIS
beid-pkcs11-tool [OPTIONS] DESCRIPTION
The beid-pkcs11-tool utility can be used from the command line to perform miscellaneous operations on the Belgium eID PKCS11 library, such as changing your PIN or testing the library. OPTIONS
--show-info, -I Show global token information --list-slots, -L List the available slots --list-mechanisms, -M List the mechanisms supported by the token --list-objects, -O List the objects on the token --login, -l Log into the token first (not needed when using --pin) --pin pin, -r pin Supply the PIN on the command line --change-pin, -c Change the PIN --slot slot Specify number of the slot to use --module module Specify PKCS11 library to use (default = libbeidpkcs11.so) --test, -t Test (best used with the --login or --pin option) SEE ALSO
beid-tool(1) AUTHORS
beid-pkcs11-tool is based on pkcs11-tool (www.openc.org) and adapted for the Belgian national eID card by Zetes NV/SA (www.zetes.com). 09/2005 beid-pkcs11-tool(1)
All times are GMT -4. The time now is 08:59 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy