diff options
author | Matthew Lemon <y@yulqen.org> | 2023-10-04 15:42:40 +0100 |
---|---|---|
committer | Matthew Lemon <y@yulqen.org> | 2023-10-04 15:42:40 +0100 |
commit | 1c322f04a970d2573a863d01b2c9d360dfaab19a (patch) | |
tree | 4932e2333f7413f62f2b2e262d4a35f279b6419b /unarchive.pl | |
parent | a164aafde81e9bfdc548d2fa57b3f73194d99f87 (diff) | |
parent | ccfe3181e74227dc8c8ad4b43fa7e4df77bb5b2b (diff) |
Merge branch 'master' of github.com:yulqen/perlscripts
Diffstat (limited to 'unarchive.pl')
-rwxr-xr-x | unarchive.pl | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/unarchive.pl b/unarchive.pl new file mode 100755 index 0000000..810b008 --- /dev/null +++ b/unarchive.pl @@ -0,0 +1,39 @@ +#!/usr/bin/env -S perl + +use strict; +use warnings; +use feature q(say); +use Archive::Tar; + +# This is just a test script to play with the Archive::Tar package + +# Specify the archive file you want to read +my $archive_file = 'journal_archive_aug23.tgz'; + +# Create an Archive::Tar object for reading +my $tar = Archive::Tar->new; + +# Read the archive file +$tar->read($archive_file); + +# Search string +my $search_string = "Joanna"; + +# Iterate through the files in the archive in memory +foreach my $file ($tar->get_files) { + # Check if the file matches your filter (e.g., .txt extension) + if ($file->name =~ /\.md$/) { + # Get the content of the file and process it as needed + my $file_content = $file->get_content; + + # Perform your desired operations on $file_content + # For example, you can print it or manipulate it here + + my @lines = split(/\n/, $file_content); + foreach my $line (@lines) { + if ($line =~ /$search_string/) { + print "File name: " . $file->name . ": " . $line . "\n"; + } + } + } +} |