{"id":25737218,"url":"https://github.com/echo2echo/perl-email-tools","last_synced_at":"2026-06-13T19:34:32.267Z","repository":{"id":269218714,"uuid":"367223832","full_name":"echo2echo/Perl-Email-Tools","owner":"echo2echo","description":"Procedure and Script to merge email address files and purge duplicate records resulting in one sorted file with unique email addresses and a script to send to mid size email lists.","archived":false,"fork":false,"pushed_at":"2025-05-27T00:51:07.000Z","size":55,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-13T19:34:25.255Z","etag":null,"topics":["addresses","email","email-list","merge","perl","purge","purge-duplicate-records","smtp","sort","unique"],"latest_commit_sha":null,"homepage":"","language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/echo2echo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-14T02:05:36.000Z","updated_at":"2025-05-27T00:51:10.000Z","dependencies_parsed_at":"2024-12-21T21:23:14.926Z","dependency_job_id":"0d9a374b-4398-4379-b62e-be6a9020099f","html_url":"https://github.com/echo2echo/Perl-Email-Tools","commit_stats":null,"previous_names":["echo2echo/perl-email-tools"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/echo2echo/Perl-Email-Tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echo2echo%2FPerl-Email-Tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echo2echo%2FPerl-Email-Tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echo2echo%2FPerl-Email-Tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echo2echo%2FPerl-Email-Tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/echo2echo","download_url":"https://codeload.github.com/echo2echo/Perl-Email-Tools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echo2echo%2FPerl-Email-Tools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34298247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-13T02:00:06.617Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["addresses","email","email-list","merge","perl","purge","purge-duplicate-records","smtp","sort","unique"],"created_at":"2025-02-26T06:35:21.308Z","updated_at":"2026-06-13T19:34:32.251Z","avatar_url":"https://github.com/echo2echo.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Perl-Email-Tools\n\n## merge_purge_sort.pl\n\nThis is a procedure and script to merge email address files and purge duplicate records resulting in one sorted file with unique email addresses.\n\nMake sure your email list(s) have only one address per line with no given name, only email address and no blank lines. Do a visual inspection of your lists and see if they look ready for use.\nNext, create a single concatenated file of all your email address files by running the cat command on your line separated email files...\nMerge address files and name the concatenated and redirected file \"cat.txt\" as shown below\n    \n    $ cat emailfile1.txt emailfile2.txt emailfile3.txt \u003e cat.txt \n\nGrant permission to run script\n\n    $ sudo chmod 755 merge_purge_sort.pl\n\nRun the Perl script as follows to purge duplicate addresses and get a redirected file of sorted and unique email addresses\n    \n    $ ./merge_purge_sort.pl \u003e unique_sorted_emails.txt\n\nThis script was written for line separated email address files with only the email address and not the person's name as part of each record.\n\n## mail.pl\n\nYou will need a working SMTP server and Perl installed for this script to run\n\nTiming of this script clocked-in at sending over ~10 emails per second or the equivalent of ~36,000 emails per hour on modest hardware and network speeds.  Probably enough horsepower for mid size email lists.\n\nYou may need to install the MIME::Lite Perl module\n\nTo Install MIME::Lite Perl module...\n\n    $ cpan -i MIME::Lite    \nOr\n\n    $ cpanm MIME::Lite\n    \nOr if these don't work try apt install on Ubuntu/Debian Linux\n\n    $ sudo apt install libmime-lite-perl\n\nThis script runs in the same folder as the unique_sorted_emails.txt file described above in the merge_purge_sort.pl instructions.\n\n### I do some test mailings with an address text file that has a few of my own email addresses before I run the script on the \"big\" list to check for any errors and to see if it looks good enough to send.  Once it looks good, replace your test file with the unique_sorted_emails.txt or your own production ready file\n\nMake changes to the test_example_file.txt file to test with your own email addresses.\n\nGrant permission to run mail.pl file\n\n    $ sudo chmod 755 mail.pl\n \nTo run the script with your sorted and unique address file verify the file unique_sorted_emails.txt, or your production ready email list, is referenced in mail.pl and is run in the same directory as the list.\n\n    $ ./mail.pl\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecho2echo%2Fperl-email-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fecho2echo%2Fperl-email-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecho2echo%2Fperl-email-tools/lists"}