Skip to content

Instantly share code, notes, and snippets.

View xtetsuji's full-sized avatar

OGATA Tetsuji xtetsuji

View GitHub Profile
@xtetsuji
xtetsuji / smtp-connect-bench.pl
Created August 31, 2018 04:54
measure script for SMTP connection establish times
#!/usr/bin/perl
# smtp-connect-bench.pl [HOSTNAME|IPADDR]
# SMTP 接続の速度を確認する
use strict;
use warnings;
use Net::SMTP;
use Time::HiRes qw(time sleep); # ミリ秒化
use constant WAIT_SECONDS => 15;
use constant SMTP_TIMEOUT_SECONDS => 120;
@xtetsuji
xtetsuji / zipcode.pl
Created August 26, 2018 07:48
Japanese zipcode serarch by KEN_ALL.CSV plain text. It is written at Perl-Entrance in Tokyo, 2018/08/25 for entertainment live coding show.
#!/usr/bin/env perl
use strict;
use warnings;
use utf8; # このスクリプトは UTF-8 で書かれている、文字列リテラルはそういう文字として評価する
use Encode qw(encode decode);
binmode STDOUT, ':utf8';
# https://www.post.japanpost.jp/zipcode/dl/kogaki-zip.html
my $file = 'KEN_ALL.CSV';
@xtetsuji
xtetsuji / rotate-stick.pl
Created July 22, 2018 13:01
Rotate 1 character "stick" by carriage return (\r).
#!/usr/bin/perl
# \r を使って文字のパラパラまんが的なもの
use strict;
use warnings;
use Time::HiRes qw(sleep);
# 標準出力は \n を送らないとバッファリングして画面に表示してくれないことがあるので、バッファリングしないでねという指示
$| = 1; # STDOUT のバッファリングをオフにしてほしい
@xtetsuji
xtetsuji / gihyo-pdf-duplicate-check.pl
Created June 21, 2018 14:01
File duplicate check between directories iCloud and Dropbox. File duplicate state explains by color.
#!/usr/bin/perl
# 2018/06/21 xtetsuji
# Dropbox と iCloud で片方にしか無い、または両方にあるファイルを色分け
# このスクリプトでは WEB+DB PRESS と Software Design で調査する
#
# iCloud で、クラウド側にはファイルはあるけれど手元にデータを
# 同期していない場合、foo.txt の代わりに .foo.txt.icloud というファイルが
# 置かれることに注意
use strict;
@xtetsuji
xtetsuji / http-ob.pl
Last active June 19, 2018 13:44
Very simple HTTP observation script. writen at 2017/06/16 in "Perl Entrance in Tokyo", after party.
#!/usr/bin/env perl
# 2018/06/16
# とても素朴なURL外形監視
use strict;
use warnings;
use Net::SMTP;
use HTTP::Tiny;
use Data::Dumper;
@xtetsuji
xtetsuji / seiza.pl
Created May 26, 2018 14:44
Scraper from Yahoo! JP Fortune.
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use Encode;
use HTTP::Tiny;
binmode STDOUT, ':utf8';
@xtetsuji
xtetsuji / yodobashi-price-watch.gs
Created April 18, 2018 03:46
Yodobashi net shopping price watcher by Google Apps Script. Please see https://qiita.com/xtetsuji/items/953da9e71eb28741804c for detail.
var mailto = "YOUR_PHONE_ADDRESS";
// 定期的に呼ばれる
function walkWritePrice () {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheetByName("価格ウォッチ");
if ( !sheet ) return;
var dateCell = _dateInsertionCell(sheet);
dateCell.setValue(today());
var urlColumnNumber = 2;
@xtetsuji
xtetsuji / move-to
Last active April 10, 2018 06:33
move-to DIR FILE...: yet another mv command which gets destination and sources as its reverse order.
#!/bin/bash
# xtetsuji 2018/04/10
# Usage:
# move-to DIR FILE1 FILE2 ...
#
# mv FILE1 FILE2 ... DIR ; 移動元ファイル群と移動先の指定が逆なもの
#
# これは xargs で役立つ
# e.g.:
# 4並列、一度の移動プロセスで最大100ファイルを目的のディレクトリへ移動させる場合
@xtetsuji
xtetsuji / ntable-numbers.pl
Created January 19, 2018 04:49
How many kinds of numbers does n*n multiplication table have? What is its order?
#!/usr/bin/perl
use strict;
use warnings;
use Memoize qw(memoize);
memoize("get_variation_hash");
for my $n (9..1_000_000) {
@xtetsuji
xtetsuji / phs
Created January 15, 2018 04:01
peco -> hostlist -> ssh, simple script. This script is beta quality because now I think this script is dirty.
#!/bin/bash
# phs - popup host ssh
# xtetsuji 2016/11/17
if [ "$1" ] && [ "_$1" = _-h -o "_$1" = _--help ] ; then
exec perldoc $0
fi
declare DEBUG
declare PHS_SCREEN_COMMAND PHS_TMUX_COMMAND PHS_OPEN_MODE PHS_SSH_COMMAND