Visit Our UNIX and Linux User Community


awk move txt up one line x2


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting awk move txt up one line x2
# 1  
Old 02-29-2020
awk move txt up one line x2

using awk
iam trying to get the title moved up to the line above
the title is between the first and last dashs
some titles have more dashs than others
also need the video size between the 9th forward slash moved up as well

i have this

Code:
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hello-bye-hello-1574325303/1080p/index.m3u8
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hi-bye-see-you-1574325303/720p/index.m3u8
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hello-you-1574325303/480p/index.m3u8
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-once-upon-a-time-there-was-bear-1574325303/360p/index.m3u8

required output


Code:
hello bye hello 1080p
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hello-bye-hello-1574325303/1080p/index.m3u8
hi bye see you 720p
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hi-bye-see-you-1574325303/720p/index.m3u8
hello you 480p
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-hello-you-1574325303/480p/index.m3u8
once upon a time there was bear 360p
https://example.com/7p0sM06YtrQZFe2QP_WHlA/1582963669/storage3/movies/7131622-once-upon-a-time-there-was-bear-1574325303/360p/index.m3u8

i have tried this but because the amount of dashs some more some less it will only do part of the last one

Code:
awk -F'[-]' '{print $2,$3,$4,$5,$6,$7,$8;print $0}' file

thanks
# 2  
Old 02-29-2020
Hi
What about 'sed'?
Code:
sed -r 's%^[^-]*-(.*)-.*/(.*)/.*$%\1 \2\n&%' file

These 2 Users Gave Thanks to nezabudka For This Post:
# 3  
Old 02-29-2020
thank you

that works fantastic




Quote:
Originally Posted by nezabudka
Hi
What about 'sed'?
Code:
sed -r 's%^[^-]*-(.*)-.*/(.*)/.*$%\1 \2\n&%' file

# 4  
Old 03-02-2020
I see you already got a good answer
but here is a solution in awk instead of sed

Code:
awk -F '/' '{tw = split ($8, arr, "-"); i = 2; title = ""; while (i < tw) {title = title arr[i] " "; ++i} print title $9 "\n" $0}' file

there is probably a better way to write this but it works
This User Gave Thanks to daustin For This Post:
# 5  
Old 03-02-2020
Hi @daustin
You reminded me that I did not remove the dashes in the titles. Thanks
Code:
sed -nr 'h;s%^[^-]*-(.*-).*/(.*)/.*$%\1\2%; s/-/ /gp;x;p' file


Previous Thread | Next Thread
Test Your Knowledge in Computers #965
Difficulty: Medium
The HTML syntax requires a doctype to be specified to ensure that the browser renders the page in standards mode.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Awk, sed, shell all words in INPUT.txt find in column1 of TABLE.txt and replce with column2 in

Hi dears i have text file like this: INPUT.txt 001_1_173 j nuh ]az 001_1_174 j ]esma. nuh ]/.xori . . . and have another text like this TABLE.txt j j nuh word1... (6 Replies)
Discussion started by: alii
6 Replies

2. Shell Programming and Scripting

Bash incert line from 1.txt to 2.txt

i would like to insert a line from 2.txt into 1.txt between " and " or a way of adding to the end of each line " _01_ and have the numbers correspond to the line # 1.txt= foofoo "" _01_ foofoo "" _02_ foofoo "" _03_ foofoo "" _04_ 2.txt= ... (6 Replies)
Discussion started by: klein
6 Replies

3. UNIX for Dummies Questions & Answers

Split Every Line In Txt Into Separate Txt File, Named Same As The Line

Hi All Is there a way to export every line into new txt file where by the title of each txt output are same as the line ? I have this txt files containing names: Kandra Vanhooser Rhona Menefee Reynaldo Hutt Houston Rafferty Charmaine Lord Albertine Poucher Juana Maes Mitch Lobel... (2 Replies)
Discussion started by: Nexeu
2 Replies

4. Shell Programming and Scripting

Desired output.txt for reading txt file using awk?

Dear all, I have a huge txt file (DATA.txt) with the following content . From this txt file, I want the following output using some shell script. Any help is greatly appreciated. Greetings, emily DATA.txt (snippet of the huge text file) 407202849... (2 Replies)
Discussion started by: emily
2 Replies

5. Shell Programming and Scripting

Need to append the date | abcddate.txt to the first line of my txt file

I want to add/append the info in the following format to my.txt file. 20130702|abcd20130702.txt FN|SN|DOB I tried the below script but it throws me some exceptions. <#!/bin/sh dt = date '+%y%m%d'members; echo $dt+|+members+$dt; /usr/bin/awk -f BEGIN { FS="|"; OFS="|"; } { print... (6 Replies)
Discussion started by: harik1982
6 Replies

6. Shell Programming and Scripting

awk append fileA.txt to growing file B.txt

This is appending a column. My question is fairly simple. I have a program generating data in a form like so: 1 20 2 22 3 23 4 12 5 43 For ever iteration I'm generating this data. I have the basic idea with cut -f 2 fileA.txt | paste -d >> FileB.txt ???? I want FileB.txt to grow, and... (4 Replies)
Discussion started by: theawknewbie
4 Replies

7. Shell Programming and Scripting

Use AWK to move matched line back one?

Can somebody help me with this? I'm sure it's a no-brainer if you know awk... but I don't. Input: Blah Blah Me love you long time Blah Blah awk magic with 'long time' ==> Output: Blah Blah Me love you long time (0 Replies)
Discussion started by: Ryan.
0 Replies

8. Shell Programming and Scripting

awk script to move a line after the matched pattern line

I have the following text format in a file which lists the question first and then 5 choices after that the explanantion and finally the answer. 1.The amount of time it takes for most of a worker’s occupational knowledge and skills to become obsolete has been declining because of the... (2 Replies)
Discussion started by: nanchil_guy
2 Replies

9. Shell Programming and Scripting

awk - if field is empty, move line to new file

I have a script with this statement: /usr/xpg4/bin/awk -F"" 'NR==FNR{s=$2;next}{printf "%s\"%s\"\n", $0, s}' LOOKUP.TXT finallistnew.txt >test.txt I want to include logic or an additional step that says if there is no data in field 3, move the whole line out of test.txt into an additional... (9 Replies)
Discussion started by: scriptr2be
9 Replies

10. Shell Programming and Scripting

Perl how to move pointer to previous line in a txt file?

I have a text file that has blocks of text. Each block starts with ### and ends with End_###. I wrote a perl script to search a string from line 2 (ignore any line starts with ###) of each block if matched, need to print that whole block. According to the input file in below, it will print... (5 Replies)
Discussion started by: tqlam
5 Replies

Featured Tech Videos