parent
d6907ab532
commit
98338c8544
@ -1,62 +1,36 @@
|
||||
# https://github.com/dbbolton
|
||||
#
|
||||
# Below are some useful Perl-related aliases/functions that I use with zsh.
|
||||
|
||||
|
||||
# Aliases ###################################################################
|
||||
|
||||
# perlbrew ########
|
||||
# Aliases
|
||||
alias pbi='perlbrew install'
|
||||
alias pbl='perlbrew list'
|
||||
alias pbo='perlbrew off'
|
||||
alias pbs='perlbrew switch'
|
||||
alias pbu='perlbrew use'
|
||||
|
||||
# Perl ############
|
||||
|
||||
# perldoc`
|
||||
alias pd='perldoc'
|
||||
|
||||
# use perl like awk/sed
|
||||
alias ple='perl -wlne'
|
||||
alias pd='perldoc'
|
||||
|
||||
# show the latest stable release of Perl
|
||||
alias latest-perl='curl -s http://www.perl.org/get.html | perl -wlne '\''if (/perl\-([\d\.]+)\.tar\.gz/) { print $1; exit;}'\'
|
||||
|
||||
|
||||
|
||||
# Functions #################################################################
|
||||
|
||||
# newpl - creates a basic Perl script file and opens it with $EDITOR
|
||||
newpl () {
|
||||
# set $EDITOR to 'vim' if it is undefined
|
||||
[[ -z $EDITOR ]] && EDITOR=vim
|
||||
|
||||
# if the file exists, just open it
|
||||
[[ -e $1 ]] && print "$1 exists; not modifying.\n" && $EDITOR $1
|
||||
|
||||
# if it doesn't, make it, and open it
|
||||
[[ ! -e $1 ]] && print '#!/usr/bin/perl'"\n"'use strict;'"\n"'use warnings;'\
|
||||
"\n\n" > $1 && $EDITOR $1
|
||||
}
|
||||
# Perl Global Substitution
|
||||
function pgs() {
|
||||
if (( $# < 2 )) ; then
|
||||
echo "Usage: $0 find replace [file ...]" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
local find="$1"
|
||||
local replace="$2"
|
||||
repeat 2 shift
|
||||
|
||||
# pgs - Perl Global Substitution
|
||||
# find pattern = 1st arg
|
||||
# replace pattern = 2nd arg
|
||||
# filename = 3rd arg
|
||||
pgs() { # [find] [replace] [filename]
|
||||
perl -i.orig -pe 's/'"$1"'/'"$2"'/g' "$3"
|
||||
perl -i.orig -pe 's/'"$find"'/'"$replace"'/g' "$@"
|
||||
}
|
||||
|
||||
# Perl grep since 'grep -P' is terrible.
|
||||
function prep() {
|
||||
if (( $# < 1 )) ; then
|
||||
echo "Usage: $0 pattern [file ...]" >&2
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Perl grep, because 'grep -P' is terrible. Lets you work with pipes or files.
|
||||
prep() { # [pattern] [filename unless STDOUT]
|
||||
perl -nle 'print if /'"$1"'/;' $2
|
||||
}
|
||||
local pattern="$1"
|
||||
shift
|
||||
|
||||
# say - append a newline to 'print'
|
||||
say() {
|
||||
print "$1\n"
|
||||
perl -nle 'print if /'"$pattern"'/;' "$@"
|
||||
}
|
||||
|
||||
|
Loading…
Reference in new issue