aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.aliases9
-rw-r--r--.functions14
2 files changed, 14 insertions, 9 deletions
diff --git a/.aliases b/.aliases
index 93be396..080f472 100644
--- a/.aliases
+++ b/.aliases
@@ -74,15 +74,6 @@ alias c="tr -d '\n' | pbcopy"
# Recursively delete `.DS_Store` files
alias cleanup="find . -type f -name '*.DS_Store' -ls -delete"
-# File size
-if stat -c '' . > /dev/null 2>&1; then
- # GNU `stat`
- alias fs="stat -c \"%s bytes\""
-else
- # OS X `stat`
- alias fs="stat -f \"%z bytes\""
-fi
-
# ROT13-encode text. Works for decoding, too! ;)
alias rot13='tr a-zA-Z n-za-mN-ZA-M'
diff --git a/.functions b/.functions
index ddb0f82..f1c94e6 100644
--- a/.functions
+++ b/.functions
@@ -3,6 +3,20 @@ function mkd() {
mkdir -p "$@" && cd "$@"
}
+# Determine size of a file or total size of a directory
+function fs() {
+ if du -shb /dev/null > /dev/null 2>&1; then
+ local arg=-sbh
+ else
+ local arg=-skh
+ fi
+ if [[ -n "$@" ]]; then
+ du $arg -- "$@"
+ else
+ du $arg .[^.]* *
+ fi
+}
+
# Use Git’s colored diff when available
hash git &>/dev/null
if [ $? -eq 0 ]; then