#!/usr/local/bin/perl -w ########################################### # fs-index # Mike Schilli, 2014 (m@perlmeister.com) ########################################### use strict; use Elasticsearch; use File::Find; use Sysadm::Install qw( slurp ); my $idx = "fs"; my( $base ) = @ARGV; die "usage: $0 basedir" if !defined $base; my $es = Elasticsearch->new( ); eval { $es->indices->delete( index => $idx ) }; find sub { my $file = $File::Find::name; return if ! -f $file; return if ! -T $file; return if -s $file > 100_000; my $content = slurp $file; $es->index( index => $idx, type => 'text', body => { content => $content, file => $file, } ); print "Added $file\n"; }, $base;