You can use strace on a specific pid to figure out what a specific process is doing, e.g.:
strace -fp <pid>
You might see something like:
select(9, [3 5 8], [], [], {0, 999999}) = 0 (Timeout)
| Using the nc command you can scan a port or a range of ports to verify whether a UDP port is open and able to receive traffic. | |
| This first command will scan all of the UDP ports from 1 to 65535 and add the results to a text file: | |
| $ nc -vnzu server.ip.address.here 1-65535 > udp-scan-results.txt | |
| This merely tells you that the UDP ports are open and receive traffic. | |
| Perhaps a more revealing test would be to actually transfer a file using UDP. |
| #!/bin/bash | |
| if [ -z "$1" ]; then | |
| echo "Usage: sudo $0 /dev/sdh1" | |
| exit 1; | |
| fi | |
| dd if=$1 of=/dev/null & pid=$! | |
| while true; do | |
| ps -p$pid --no-heading || break; | |
| echo "-- $(date) ------------------"; |
I will maybe someday get around to dusting off my C and making these changes myself unless someone else does it first.
Imagine a long-running development branch periodically merges from master. The
git log --graph --all --topo-order is not as simple as it could be, as of git version 1.7.10.4.
It doesn't seem like a big deal in this example, but when you're trying to follow the history trails in ASCII and you've got several different branches displayed at once, it gets difficult quickly.
| #!/bin/bash | |
| mkdir -p ~/.ssh | |
| # generate new personal ed25519 ssh keys | |
| ssh-keygen -o -a 100 -t ed25519 -f ~/.ssh/id_ed25519 -C "rob thijssen <[email protected]>" | |
| ssh-keygen -o -a 100 -t ed25519 -f ~/.ssh/id_robtn -C "rob thijssen <[email protected]>" | |
| # generate new host cert authority (host_ca) ed25519 ssh key | |
| # used for signing host keys and creating host certs |
People
:bowtie: |
π :smile: |
π :laughing: |
|---|---|---|
π :blush: |
π :smiley: |
:relaxed: |
π :smirk: |
π :heart_eyes: |
π :kissing_heart: |
π :kissing_closed_eyes: |
π³ :flushed: |
π :relieved: |
π :satisfied: |
π :grin: |
π :wink: |
π :stuck_out_tongue_winking_eye: |
π :stuck_out_tongue_closed_eyes: |
π :grinning: |
π :kissing: |
π :kissing_smiling_eyes: |
π :stuck_out_tongue: |
| # Source: http://fvue.nl/wiki/Bash:_Error_handling | |
| # | |
| #!/bin/bash -eu | |
| # -e: Exit immediately if a command exits with a non-zero status. | |
| # -u: Treat unset variables as an error when substituting. | |
| (false) # Caveat 1: If an error occurs in a subshell, it isn't detected | |
| (false) || false # Solution: If you want to exit, you have to detect the error yourself | |
| (false; true) || false # Caveat 2: The return status of the ';' separated list is `true' | |
| (false && true) || false # Solution: If you want to control the last command executed, use `&&' |
$ uname -r
| #!/bin/bash | |
| # Calculates network and broadcast based on supplied ip address and netmask | |
| # Usage: broadcast_calc.sh 192.168.0.1 255.255.255.0 | |
| # Usage: broadcast_calc.sh 192.168.0.1/24 | |
| tonum() { | |
| if [[ $1 =~ ([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+) ]]; then |
| for key in .git-crypt/keys/default/0/* ; do gpg -k $(echo $(basename $key) | sed -e 's/.gpg//') ; done ; |