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 | |
parent | a164aafde81e9bfdc548d2fa57b3f73194d99f87 (diff) | |
parent | ccfe3181e74227dc8c8ad4b43fa7e4df77bb5b2b (diff) |
Merge branch 'master' of github.com:yulqen/perlscripts
-rwxr-xr-x | calendar/dayplan_revised.pl | 26 | ||||
-rwxr-xr-x | unarchive.pl | 39 |
2 files changed, 65 insertions, 0 deletions
diff --git a/calendar/dayplan_revised.pl b/calendar/dayplan_revised.pl index 862b191..fccc5cc 100755 --- a/calendar/dayplan_revised.pl +++ b/calendar/dayplan_revised.pl @@ -5,6 +5,32 @@ use strict; use warnings; use DateTime; use JSON; +use Archive::Tar; +use IO::Zlib; + +sub search_in_tgz { + my ($archive_file, $search_string) = @_; + my $tar = Archive::Tar->new; + $tar->read($archive_file); + # 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"; + } + } + } + } +} my $dayplans = '/home/lemon/Documents/Notes/journal/day_plans'; #my $dayplans = "/tmp/dayplans"; 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"; + } + } + } +} |