
ショートカットとして、このコマンド チェーンをエイリアスに追加したいと思います。
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
ご要望に応じて:
これは、関数がエイリアスよりも優れている理由の 1 つです。つまり、引用符の煩わしさを回避できるのです。
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
}