Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 15 Shell shell-scripting Projects
-
modernish
Modernish is a library for writing robust, portable, readable, and powerful programs for POSIX-based shells and utilities.
-
Project mention: Need leads on installing Cortex Xdr on through inTune for the Mac’s | /r/Intune | 2023-06-17
Deploy it via shell scripts instead, use the following for install template https://github.com/microsoft/shell-intune-samples, this is what I do for package where extra config is need after/before the deployment
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
I also recommend https://github.com/bach-sh/bach when you have to use Bash for things long enough it probably shouldn't be!
-
-
alias config="$(which git) -C $HOME --git-dir=$HOME/.dots/ --work-tree=$HOME" # ------------------------------------------------------------------ # Common # ------------------------------------------------------------------ alias python="$(which python3)" alias pip=pip3 # Place above other sudo commands to enable aliases to be sudo-ed. alias sudo="sudo " # if [ $UID -ne 0 ]; then # ## Effective UID is the user you changed to, UID is the original user. # # echo "UID is $UID and EUID is $EUID" # fi # ------------------------------------------------------------------ # Navigation # ------------------------------------------------------------------ alias cd..="cd .." alias ..="cd .." alias ...="cd ../.." alias ....="cd ../../.." alias .....="cd ../../../.." alias ~="cd $HOME" # `cd` is probably faster to type though alias -- -="cd -" # ------------------------------------------------------------------ # Copy / Get / Remove # ------------------------------------------------------------------ # mv, cp confirmation alias mkdir="mkdir -pv" alias cp="cp -iv" alias ln='ln -i' alias mv="mv -iv" if hash rsync 2>/dev/null; then # alias cpv="rsync -ah --info=progress2" alias cpv="rsync -ah --info=progress2 --no-inc-recursive --stats" # progress bar alias rcopy="rsync -av --progress -h" alias rmove="rsync -av --progress -h --remove-source-files" alias rupdate="rsync -avu --progress -h" alias rsynchronize="rsync -avu --delete --progress -h" fi # ------------------------------------------------------------------ # Safetynets/Permission/Ownership # ------------------------------------------------------------------ # do not delete / or prompt if deleting more than 3 files at a time # alias rm='rm -vI --preserve-root' # 'rm -i' prompts for every file # Safetynets [Parenting changing perms on / #] alias chown='chown -v --preserve-root' alias chmod='chmod -v --preserve-root' alias chgrp='chgrp --preserve-root' alias chmox="chmod +x --preserve-root" if [ $UID -ne 0 ]; then # Add sudo if forgotten. i.e. # require sudo if user is not root alias reboot='sudo reboot' alias update='sudo apt-get upgrade' alias susp='sudo /usr/sbin/pm-suspend' alias dpkg='sudo dpkg' fi # ------------------------------------------------------------------ # File managements # ------------------------------------------------------------------ alias df='df -h' alias du='du -hs' alias fs="stat -f \"%z bytes\"" # File size ## Alisase: new # List all files colorized in long format alias l="ls -lF ${colorflag}" # List all files colorized in long format, excluding . and .. alias la="ls -lAF ${colorflag}" # List only directories alias lsd="ls -lF ${colorflag} | grep '^d' --color=never" alias ls="ls --classify --tabsize=0 --group-directories-first --literal --show-control-chars ${colorflag} --human-readable" alias lh="ls -d .*" # show hidden files/directories only # tree should be in most distributions (maybe as an optional install) # alias tree="ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'" alias lsblkid="lsblk -o name,label,fstype,size,uuid --noheadings" #: A more descriptive, yet concise lsblk. alias blkid_="blkid -o list" alias new="/usr/bin/ls -lth | head -15" # a quick glance at the newest files. alias big="command du -a -BM | sort -n -r | head -n 10" # Find 10 largest files in pwd. # ------------------------------------------------------------------ # Nginx # ------------------------------------------------------------------ if hash nginx 2>/dev/null; then function ngensite { sudo ln -s "/etc/nginx/sites-available/$1" /etc/nginx/sites-enabled; } function ngdissite { sudo rm "/etc/nginx/sites-enabled/$1"; } alias nginx='sudo nginx' alias ngdir='cd /etc/nginx/' alias nglog-access='tail -f /var/log/nginx/access.log' alias nglog-error='tail -f /var/log/nginx/error.log' alias ngsites='ls /etc/nginx/sites-available' alias ngsitesen='ls /etc/nginx/sites-enabled' alias ngreload='sudo service nginx reload' alias ngrestart='sudo service nginx restart' alias ngstart='sudo service nginx start' alias ngstatus='sudo service nginx status' alias ngstop='sudo service nginx stop' alias ngtest='sudo nginx -t' fi # ------------------------------------------------------------------ # Networking and IP addresses # ------------------------------------------------------------------ alias ping="ping -c 5" alias ports='sudo netstat -vatnp' alias ifconfig="ip -c a | sed -e 's/\// \//g'" # Show active network interfaces alias ifactive="ifconfig | pcregrep -M -o '^[^\t:]+:([^\n]|\n\t)*status: active'" #alias ip="dig +short myip.opendns.com @resolver1.opendns.com" alias localip="ipconfig getifaddr en1" alias ips="ifconfig -a | grep -o 'inet6\? \(addr:\)\?\s\?\(\(\([0-9]\+\.\)\{3\}[0-9]\+\)\|[a-fA-F0-9:]\+\)' | awk '{ sub(/inet6? (addr:)? ?/, \"\"); print }'" # Enhanced WHOIS lookups alias whois="whois -h whois-servers.net" # View HTTP traffic alias sniff="sudo ngrep -d 'en1' -t '^(GET|POST) ' 'tcp and port 80'" alias httpdump="sudo tcpdump -i en1 -n -s 0 -w - | grep -a -o -E \"Host\: .*|GET \/.*\"" alias ports='sudo lsof -nP 2>/dev/null | grep LISTEN | sed -re "s/ +/ /g" | cut -d " " -f 1,3,9 | sort -u | column -t' # https://github.com/terminalforlife/BashConfig/ alias joke='command wget -U "curl/7.55.1" -o /dev/null -qO - https://icanhazdadjoke.com || printf "No jokes today"; echo' # Always enable colored `grep` output if [ -x /usr/bin/dircolors ]; then test -r $HOME/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias grep="grep -sI --color=auto --exclude-dir=__pycache__" alias grepi="grep -i --color=auto --exclude-dir=__pycache__" alias fgrep="fgrep --color=auto --exclude-dir=__pycache__" alias egrep="egrep --color=auto --exclude-dir=__pycache__" fi # One of @janmoesen’s ProTip™s for method in GET HEAD POST PUT DELETE TRACE OPTIONS; do alias "${method}"="lwp-request -m '${method}'" done # ------------------------------------------------------------------ # My Specific # ------------------------------------------------------------------ # Mine Specific Shortcuts alias dl="cd $HOME/Downloads" alias dt="cd $HOME/Desktop" if hash subl 2>/dev/null; then if [ $UID -ne 0 ]; then # If Sublime Text installed - use it istead of gedit # only for non-root to prevent side effects alias gedit=subl fi fi if hash nnn 2>/dev/null; then alias nnn="nnn -Rd" fi if [ -f ${HOME}/.local/bin/bat ]; then alias aliases="bat $HOME/.bash_aliases" # for quick reference if [ $UID -ne 0 ]; then # apply bat style inline incase .config/bat/conf is not available alias cat="bat -pp --paging=never --style='plain' --theme=TwoDark --color=always --decorations=always" fi fi if hash wget 2>/dev/null; then #alias wget="curl -O" alias wget="wget -c - --hsts-file='$XDG_CACHE_HOME/wget-hsts'" # resume if failed by default fi # ------------------------------------------------------------------ # Misc # ------------------------------------------------------------------ # Add an "alert" alias for long running commands. # Usage example: $ sleep 5; alert alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' # Much nicer output for the apt-get command. alias apt-get="apt-get -q -o Dpkg::Progress=true -o Dpkg::Progress-Fancy=true -o APT::Get::AutomaticRemove=true" # Show which commands you use the most alias freq='cut -f1 -d" " $HOME/.bash_history | sort | uniq -c | sort -nr | head -n 30' alias fuck="killall -9" # alias g="git" alias h="history" alias incognito='export HISTFILE=/dev/null' # Potentially useful option for viewing the kernel log. alias klog="dmesg -t -L=never -l emerg,alert,crit,err,warn --human --nopager" alias vi="vim" alias where=which # sometimes i forget alias shh="pkill mpv; pkill mpv" # Play online drum and bass radio station. alias dnb="shh; mpv --really-quiet https://dnbradio.com/hi.pls &" # make easier editing alias vimrc="$EDITOR $HOME/.vimrc" alias bashrc="$EDITOR $HOME/.bashrc" alias alia="$EDITOR $HOME/.bash_aliases" alias func="$EDITOR $HOME/.bash_functions" # Print each PATH entry on a separate line alias path="echo -e ${PATH//:/\\n}" # Control Sequences / Reload the shell alias cls='printf "\ec"' alias reload="exec $SHELL -l" # invoke as a login shell alias c="clear;exec bash" # Shell exit alias alias q="exit" alias :q="exit"
-
awesome-bash-commands
A curated list of awesome Bash useful commands. Inspired by awesome-shell and bash-handbook.
-
Project mention: Looking for guidance on simplifying my note-taking setup into the terminal | /r/commandline | 2023-04-26
I really love the look of shell-velocity, it is almost exactly what I want. However, I again do not know how I would call it directly inside vim, nor does it have quite the same convenience of automatically syncing with a remote if I need to quickly use my notes across different machines.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
fss
User-friendly command-line search scripts combining find and grep utilities with fzf previewing and direct actions on specific file types (by 5n00py)
-
-
-
-
-
android-get-saved-wifi-passwords
Discontinued Bash Script To Retrieve Saved Wi-Fi Passwords On Rooted Android Devices
Project mention: Bash Script To Retrieve Saved Wi-Fi Passwords On Rooted Android Devices | /r/bash | 2023-07-20 -
-
bookmark
Bookmark frequently visited directories without bloating your shell config with a bunch of cd aliases.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Shell shell-scripting related posts
- Multi-Lingual Literate Programming with Mdsh
- Need leads on installing Cortex Xdr on through inTune for the Mac’s
- Microsoft Edge for macOS - install pending
- Issue with Uploading Adobe Creative Cloud pkg in Intune Apps
- Intune and Mac management
- Intune deploy macOS .APP file
- MDM for Apple
-
A note from our sponsor - InfluxDB
www.influxdata.com | 18 Apr 2024
Index
What are some of the best open-source shell-scripting projects in Shell? This list will help you:
Project | Stars | |
---|---|---|
1 | modernish | 729 |
2 | shell-intune-samples | 571 |
3 | bach | 543 |
4 | mdsh | 160 |
5 | BashConfig | 56 |
6 | awesome-bash-commands | 51 |
7 | shell-velocity | 29 |
8 | fss | 13 |
9 | bash-raytracer | 11 |
10 | note | 8 |
11 | dotfiles | 7 |
12 | tbd | 5 |
13 | android-get-saved-wifi-passwords | 4 |
14 | semi-usefull-scripts | 2 |
15 | bookmark | 2 |