Finding what pages link to a specific file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Finding what pages link to a specific file
# 1  
Old 08-14-2008
Finding what pages link to a specific file

First time poster (so please excuse me in advance) Smilie

I have a webserver running linux, apache, etc. I have a list of HTML webpages that I want to delete because I think they are old. While I could delete them then check for broken links, I'd like to be more pro-active.

I want to write a shell script that will search all the pages in my site for links to the pages in my list.

Let's say I have a potential file to delete at www.fake-url.com/foo/bar/index.html

I can't just grep for it because the page can be written within pages in a number of way:
1) It could be a full or root relative (that's easy enough to search for)
2) It could be a relative link!

I can't grep for "index.html" because there are multiple index pages. I've written some shell scripts, but searching for relative links like this seems overwhelming.

Hopefully my question makes some sense and I'm posting it in an appropriate place. I was thinking of writing my own script, but you know of an existing script or program that does this it would certainly be appreciated!
# 2  
Old 08-21-2008
I would approach this in another way. Configure Apache for logging so that you can see the referring page (%{Referer}i) AND the file being served (%f). Now, crawl the site using a standard crawler (wget -r -l inf -nd --delete-after ). Next, analyze the logfile against your deletion-candidate list. You can do something like:

Code:
cat candidate-deletion-files.txt |
while read old_file;   do 
   grep -- "$old_file" access.log >/dev/null || echo "Safe to delete: $old_file"
done

To be more particular, I'd make sure I'm looking at the correct field in the logfile. You can do this with awk, or by first extracting the file names from the logfile and searching that output using the grep above.
# 3  
Old 08-26-2008
That's a different approach. I think it makes sense. Thanks!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Finding specific string in file and storing in another file

Text in input file is like this <title> <band height="21" isSplitAllowed="true" > <staticText> <reportElement x="1" y="1" width="313" height="20" key="staticText-1"/> <box></box> <textElement> <font fontName="Arial" pdfFontName="Helvetica-Bold"... (4 Replies)
Discussion started by: aankita30
4 Replies

2. Shell Programming and Scripting

Finding duplicates in a file excluding specific pattern

I have unix file like below >newuser newuser <hello hello newone I want to find the unique values in the file(excluding <,>),so that the out put should be >newuser <hello newone can any body tell me what is command to get this new file. (7 Replies)
Discussion started by: shiva2985
7 Replies

3. Shell Programming and Scripting

Finding 4 current files having specific File Name pattern

Hi All, I am trying to find 4 latest files inside one folder having following File Name pattern and store them into 4 different variables and then use for processing in my shell script. File name is fixed length. 1) Each file starts with = ABCJmdmfbsjop letters + 7 Digit Number... (6 Replies)
Discussion started by: lancesunny
6 Replies

4. Shell Programming and Scripting

finding file with a specific range

Hi All, Thanks in advance File is generated with following format 31000000.xml to 48999999.xml 74000000.xml to 88999999.xml Above range should be find and moved into the folder named abc and below is another range should should be find and moved into folder named xyz ... (1 Reply)
Discussion started by: sujit_kashyap
1 Replies

5. UNIX for Advanced & Expert Users

Finding a specific range of character in file

hi, I want to store from 102 character to 128 character to a variable of header record which can be identified as 'HDR' which is the first 3 characters in the same line of a same.txt file. Please advise. Thanks (4 Replies)
Discussion started by: techmoris
4 Replies

6. Shell Programming and Scripting

Finding a specific word

Hi, I am trying to develop a script which should find a word if a particular word exists. Below is the content of the file. insert_job: test_job ----> job name days_of_week: all start_times: "16:00" date_conditions: 1 insert_job: test_job2 ----> job name days_of_week: all... (16 Replies)
Discussion started by: rpatty
16 Replies

7. Shell Programming and Scripting

add newline in file after finding specific text

Hi All, I am tring to insert a newline with "/" in a text file whenever there is the text "end;" right now I have inside file: . . end; I want to have: . . end; / I tried doing the following within the file :g/^end;/s//end; \/ / (4 Replies)
Discussion started by: jxh461
4 Replies

8. Shell Programming and Scripting

Finding file in specific subdirectories

Hi experts problem: i have a directory "DATA" with lots of subdirectories named as date with hudge data containning files. Directory = "DATA" subdirectory = "20090611" & "20090612" ...... 20090611 = thousands of files i wanna apply find command to find all files in... (3 Replies)
Discussion started by: The_Archer
3 Replies

9. UNIX for Dummies Questions & Answers

help with finding specific files

before i get to it, i would like to say this is the greatest unix site ive ever seen, and im glad to see so many people are out there to help. thanks well, im trying to make myself a script where i can specify a directory and a file size so that my script will show me any files larger than the... (5 Replies)
Discussion started by: linuxlaptop
5 Replies

10. UNIX for Dummies Questions & Answers

finding specific values in a within a file

Hi everyone, Can anyone guide me on how to search through a huge file and look on specific column and if it finds a discrepancy on that column that does not conform to the specified criteria, ie (1) Numeric and (3) alpha chars F123 or G333..etc, etc! then idientify it and redirect... (3 Replies)
Discussion started by: Gerry405
3 Replies
Login or Register to Ask a Question