我想将此命令链添加到别名中以获得简写:
tail -10000 /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -10
但是,作为别名,它不能正常工作:
alias ttn="tail -10000 /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -10"
我尝试使用单引号而不是双引号,或者在 awk 的引号之前使用转义字符\
,但没有成功。感谢您的帮助。
答案1
按照要求:
这就是函数比别名更好的原因之一:你可以避免引用 hell。
ttn() { tail -10000 /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -10; }
或者,更易读
ttn() {
tail -10000 /var/log/nginx/access.log |
awk '{print $1}' |
sort |
uniq -c |
sort -nr |
head -10
}
或者,另一种多线样式:
ttn() {
tail -10000 /var/log/nginx/access.log \
| awk '{print $1}' \
| sort \
| uniq -c \
| sort -nr \
| head -10
}