-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmake_large_csv.sh
44 lines (40 loc) · 1.4 KB
/
make_large_csv.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bIN/BASh
#get token
#printf "Enter your github token, if you have one. Otherwise hit enter: "
#read -r CMD
# if [ -z $CMD ]
# then
# CMD=""
# else
# CMD="?access_token=$CMD"
# fi
#echo $CMD;
#get user
GTOKEN=$(cat ~/.gh)
CMD="?access_token=$GTOKEN"
echo ''
printf 'Enter which github user you would like to check percentages on: '
read -r GHUSER
export GHUSER=$GHUSER
#echo 'https://api.github.com/users/bsdpunk/repos'$CMD
http https://api.github.com/users/$GHUSER/repos$CMD |python -m json.tool | egrep '"name"|"fork"' > list
#sleep 1
cat list | gsed '/true/,+1d' | grep '"name"' | awk -F: '{print $0}' | tr -d '{' | tr -d '}' | tr -d '"' |sort | grep -v '^$' | gsed 's/^.*name://gi' | tr -d ',' >> repos
for i in $(cat repos); do echo '' >> lang && http https://api.github.com/repos/$GHUSER/$i/languages$CMD >> lang; done;
awk -F, '{print $0}' lang | tr -d '{' | tr -d '}' | tr -d '"'| tr ' ' '\n' |sort | grep -v '^$' | tr -d ',' >> preclean
cat preclean |perl -pe "s/(\d+|\d)([A-Za-z])/\1\n\2/gi" | grep -v 'HTML'| grep -v 'CSS' | sort >> clean
bash tottals.awk
bash csv.awk
#gsed 's/$/,$GHUSER' > locuser.csv
#gsed -e "s/$/,${GHUSER}/" loc.csv >> locuser.csv
head -n1 loc.csv >> locuser.csv
tac locuser.csv > locusertwo.csv
Rscript loctwo.R $GHUSER 2>&1 >/dev/null
rm -rf list
rm -rf repos
rm -rf lang
rm -rf clean
rm -rf preclean
rm -rf loc.csv
rm -rf locuser.csv
rm -rf locusertwo.csv