Guessing import path for Go executables
~ $ go tool objdump -s main.main " $( which godoc) " \
| grep -E ' ^TEXT main.main' | cut -d' ' -f3 \
| sed -e ' s/.*\/src\/\(.*\)\/[^\/]*/\1/'
code.google.com/p/go.tools/cmd/godoc
List all github.com packages the executable uses
~ $ strings xflicstat | perl -ne ' /.*github.com\/(.*\/.*)\/[^\/]+/ && print "$1\n"' \
| sort | uniq
BurntSushi/toml
cihub/seelog
coopernurse/gorp
go-sql-driver/mysql
go-sql-driver/mysql/wiki
sigu-399/gojsonpointer
sigu-399/gojsonreference
sigu-399/gojsonschema
x-formation/rpc
x-formation/rpc/json
Resize and optimize images in parallel
~ $ /bin/ls * .jpg | xargs -P$( nproc) -i -- sh -c \
' convert -strip -interlace Plane -gaussian-blur 0.05 -resize 25% "{}" "min-{}" && \
echo min-{}'
Update badges URLS to shields.io
badgefix () {
badges=(
' s|https://travis-ci.org/\([a-z]*\)/\([a-z]*\).png?branch=\([a-z]*\)|https://img.shields.io/travis/\1/\2/\3.svg|g'
' s|(https://ci.appveyor.com/api/projects/status/.*)](https://ci.appveyor.com/project/\([a-z]*\)/\([a-z0-9\-]*\)|(https://img.shields.io/appveyor/ci/\1/\2.svg)](https://ci.appveyor.com/project/\1/\2|g'
' s|https://coveralls.io/repos/\([a-z]*\)/\([a-z]*\)/badge.png?branch=\([a-z]*\)|https://img.shields.io/coveralls/\1/\2/\3.svg|g'
)
for i in ${! badges[@]} ; do
sed -i -e " ${badges[i]} " README.md
done
}
Go - install missing imports when ... does not work because of some broken package in $GOPATH
missing () {
go install -a ${1:- ...} 2>&1 | sed -n ' s/.*cannot find package "\(.*\)" in any of/\1/p' |
tr -d : | xargs go get -u
}