Write $line number into textfile and read from line number


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Write $line number into textfile and read from line number
# 1  
Old 06-08-2012
Write $line number into textfile and read from line number

Hello everyone,

I don't really know anything about scripting, but I have to manage to make this script, out of necessity.

Code:
#!/bin/bash
while read -r line; do #I'm reading from a big wordlist
instructions using $line
done

Is there a way to automatically write the $line number the script is at into a separate textfile and read from the line number so that I won't have to start everything from scratch in case I have to stop the script?


Thank you very much !

Last edited by Scrutinizer; 06-08-2012 at 09:43 AM.. Reason: code tags
# 2  
Old 06-08-2012
Code:
#!/bin/bash
CPT=0
while read -r LINE #I'm reading from a big wordlist
do
       CPT=$((CPT+1))
       instructions using $LINE
       echo "CPT="$CPT > ~/interrupted_at_line.log #will be in your $HOME
done

This User Gave Thanks to vbe For This Post:
# 3  
Old 06-08-2012
Thank you. It's working well: it tells me precisely at which line the script stopped.
But how do you start reading from this very line though?
# 4  
Old 06-08-2012
I think you will have to show what you are reading... Is it a file?
what format?
# 5  
Old 06-08-2012
It's a wordlist. utf8.
One word per line.

---------- Post updated at 11:32 AM ---------- Previous update was at 11:23 AM ----------

Somebody helped me out (Santhosh). I'm going to copy paste the code here just in case someone needs it in the future.

Code:
#!/bin/bash

TMP_FILE="/tmp/currentLineNumber"                         # a constant

current_line_count=0                                      # track the current line number

processed_lines_count=0

# Verify if we have already processed some stuff.
if [ -r "${TMP_FILE}" ]; then
  processed_lines_count=$(cat ${TMP_FILE})
fi

while read -r line; do                                    # I 'm reading from a big wordlist

    # Skip processing till we reach the line that needs to be processed.

    if [ $current_line_count -le $processed_lines_count ]; then

      # do nothing as this line has already been processed
      current_line_count=$((current_line_count+1))        # increment the counter
      continue

    fi

    current_line_count=$((current_line_count+1))
    echo $current_line_count > ${TMP_FILE}                # cache the line number

    # perform your operations
    command1 using $line
    command2 using $line

done

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to read a file starting at certain line number?

I am new to ksh scripts. I would like to be able to read a file line by line from a certain line number. I have a specific line number saved in a variable, say $lineNumber. How can I start reading the file from the line number saved in $lineNumber? Thanks! (4 Replies)
Discussion started by: dcowboys13
4 Replies

2. Shell Programming and Scripting

Cut from specific line number to a line number

Hi All, I've a file like this.. Sheet1 a,1 a,2 a,3 a,4 a,5 Sheet2 a,6 a,7 a,8 a,9 a,10 Sheet3 a,11 a,12 a,13 (7 Replies)
Discussion started by: manab86
7 Replies

3. Shell Programming and Scripting

Read line with particular number of lines

Hi all, I have a file sample.txt abc asd adf daf adw add adv wdf I want to control the number of lines to read Like if i give input as ./script_name 2 5 required output asd adf daf (2 Replies)
Discussion started by: krux_rap
2 Replies

4. Shell Programming and Scripting

write specific line number in file

dear all, i need your advice i have sample script like this: testing.sh for i in {1..10} do echo testing $i done but i forgot create "#!/bin/bash" in above "for" so i want output will like this testing.sh #!/bin/bash for i in {1..10} do echo testing $i done (2 Replies)
Discussion started by: zvtral
2 Replies

5. UNIX for Dummies Questions & Answers

How to read contents of a file from a given line number upto line number again specified by user

Hello Everyone. I am trying to display contains of a file from a specific line to a specific line(let say, from line number 3 to line number 5). For this I got the shell script as shown below: if ; then if ; then tail +$1 $3 | head -n $2 else ... (5 Replies)
Discussion started by: grc
5 Replies

6. Shell Programming and Scripting

Read the specified line number from file

Hi Guys, I am new to unix. Actually i want help in writing an single command where i can actually read specific line number in file where the line number will be passed to command as parameter. ex. 1 a 2 b 3 c 4 d And to my command i pass as 2. so i should get output as 2 b ... (15 Replies)
Discussion started by: kam786sim
15 Replies

7. Shell Programming and Scripting

how to get the data from line number 1 to line number 100 of a file

Hi Everybody, I am trying to write a script that will get some perticuler data from a file and redirect to a file. My Question is, I have a Very huge file,In that file I have my required data is started from 25th line and it will ends in 100th line. I know the line numbers, I need to get all... (9 Replies)
Discussion started by: Anji
9 Replies

8. Shell Programming and Scripting

Adding a columnfrom a specifit line number to a specific line number

Hi, I have a huge file & I want to add a specific text in column. But I want to add this text from a specific line number to a specific line number & another text in to another range of line numbers. To be more specific: lets say my file has 1000 lines & 4 Columns. I want to add text "Hello"... (2 Replies)
Discussion started by: Ezy
2 Replies

9. Shell Programming and Scripting

Appending line number to each line and getting total number of lines

Hello, I need help in appending the line number of each line to the file and also to get the total number of lines. Can somebody please help me. I have a file say: abc def ccc ddd ffff The output should be: Instance1=abc Instance2=def Instance3=ccc Instance4=ddd Instance5=ffff ... (2 Replies)
Discussion started by: chiru_h
2 Replies

10. Shell Programming and Scripting

How to get the line number from while read

I have a file TXTPROCESS.TXT.20071129 in which line 1 contains the file name and rest of the records are data. The file data looks like this: TXTPROCESS.TXT.20071129 DIVD20071129 INTR20071129 BALN20071129 From line 2 onwards the first 4 characters defines individual process. What I... (2 Replies)
Discussion started by: skymirror
2 Replies
Login or Register to Ask a Question