diff --git a/README.md b/README.md index 7d35958..9552d64 100644 --- a/README.md +++ b/README.md @@ -256,6 +256,8 @@ performance of any of your sites from across the globe.
* [tail](#tool-tail) * [cpulimit](#tool-cpulimit) * [pwdx](#tool-pwdx) + * [tr](#tool-tr) + * [chmod](#tool-chmod) - **[HTTP/HTTPS](#http-https)** * [curl](#tool-curl) * [httpie](#tool-httpie) @@ -269,6 +271,7 @@ performance of any of your sites from across the globe.
* [socat](#tool-socat) * [lsof](#tool-lsof) * [netstat](#tool-nestat) + * [rsync](#tool-rsync) - **[Programming](#programming)** * [awk](#tool-awk) * [sed](#tool-sed) @@ -338,6 +341,12 @@ mkd () { mkdir -p "$@" && cd "$@"; } rename 'y/A-Z/a-z/' * ``` +###### Print a row of characters across the terminal + +```bash +printf "%`tput cols`s" | tr ' ' '#' +``` + ___ ##### Tool: [mount](https://curl.haxx.se) @@ -393,6 +402,12 @@ find / -mmin 60 -type f find / -type f -size +20M ``` +###### Find duplicate files (based on MD5 hash) + +```bash +find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33 +``` + ___ ##### Tool: [diff](https://curl.haxx.se) @@ -419,6 +434,8 @@ tail -f file | while read; do echo "$(date +%T.%N) $REPLY"; done tail -10000 access_log | awk '{print $1}' | sort | uniq -c | sort -n | tail ``` +___ + ##### Tool: [cpulimit](https://curl.haxx.se) ###### Limit the cpu usage of a process @@ -435,6 +452,8 @@ cpulimit -p pid -l 50 pwdx ``` +___ + ##### Tool: [taskset](https://curl.haxx.se) ###### Start a command on only one CPU core @@ -443,6 +462,26 @@ pwdx taskset -c 0 ``` +___ + +##### Tool: [tr](https://curl.haxx.se) + +###### Show directories in the PATH, one per line + +```bash +tr : '\n' <<<$PATH +``` + +___ + +##### Tool: [chmod](https://curl.haxx.se) + +###### Remove executable bit from all files in the current directory + +```bash +chmod -R -x+X * +``` + HTTP/HTTPS ##### Tool: [curl](https://curl.haxx.se) @@ -837,12 +876,26 @@ lsof -i tcp:443 lsof -Pan -i tcp -i udp ``` +###### List all open ports and their owning executables + +```bash +lsof -i -P | grep -i "listen" +``` + +###### Show open ports + +```bash +lsof -Pni4 | grep LISTEN | column -t +``` + ###### List all files opened by a particular command ```bash lsof -c "process" ``` +___ + **Tool: [netstat](http://www.dest-unreach.org/socat/doc/socat.html/)** ###### Graph # of connections for each hosts @@ -851,6 +904,22 @@ lsof -c "process" netstat -an | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | grep -v -e '^[[:space:]]*$' | sort | uniq -c | awk '{ printf("%s\t%s\t",$2,$1) ; for (i = 0; i < $1; i++) {printf("*")}; print "" }' ``` +###### Monitor open connections for specific port including listen, count and sort it per IP + +```bash +watch "netstat -plan | grep :443 | awk {'print \$5'} | cut -d: -f 1 | sort | uniq -c | sort -nk 1" +``` + +___ + +**Tool: [rsync](http://www.dest-unreach.org/socat/doc/socat.html/)** + +###### Rsync remote data as root using sudo + +```bash +rsync --rsync-path 'sudo rsync' username@hostname:/path/to/dir/ /local/ +``` + Programming ##### Tool: [awk](https://curl.haxx.se) @@ -883,6 +952,12 @@ sed -n 10p /path/to/file sed -i 10d /path/to/file ``` +###### Remove a range of lines from a file + +```bash +sed -i -re ',d' +``` + ___ ##### Tool: [grep](http://www.dest-unreach.org/socat/doc/socat.html/)