Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/env bash
- # usage: piplatest packagename
- compare_versions () {
- BBlack='\e[1;30m' # Black
- BRed='\e[1;31m' # Red
- BGreen='\e[1;32m' # Green
- BYellow='\e[1;33m' # Yellow
- BBlue='\e[1;34m' # Blue
- BPurple='\e[1;35m' # Purple
- BCyan='\e[1;36m' # Cyan
- BWhite='\e[1;37m' # White
- ESC='\e[0m'
- package="$1"
- piplist="$2"
- url="https://pypi.org/project/$package/"
- locate_version_element='<div class="package-header__left">'
- #local_package_data=$(pip3 show "$package")
- version="$(curl -s "$url" | grep -e "$locate_version_element" -A 2 | grep "$package" | sed "s/ *$package //")"
- local_version="$(echo "$piplist" | grep "^$package " | sed "s/$package *//")"
- if [ "$version" != "$local_version" ]; then
- version_color="$BRed"
- else
- version_color="$BGreen"
- fi
- local_output="$(printf "%slocal%s=%s%s\t" "$BCyan" "$BYellow" "$version_color" "$local_version")"
- pypi_output="$(printf "%spypi%s=%s%s\t" "$BCyan" "$BYellow" "$version_color" "$version")"
- package_output="$(printf "%s%s\n" "$BPurple" "$package")"
- echo -e "$local_output\t$pypi_output\t$package_output"
- #"$BCyan""pypi"$BYellow"=""$version_color""$version""\t"\
- #"$BPurple""$package"
- #echo "$BCyan""local"$BYellow"=""$version_color""$local_version""\t" \
- #"$BCyan""pypi"$BYellow"=""$version_color""$version""\t"\
- #"$BPurple""$package"
- }
- piplist="$(pip list)"
- for package in "$@"; do
- compare_versions "$package" "$piplist"
- done
Advertisement
Add Comment
Please, Sign In to add comment