awk
# awk
tee awk.txt <<-'EOF'
john wang male 30 02103213
ludc dasf fama 12 12311321
EOF
awk '{print $1,$4}' awk.txt
awk '{print NF}' awk.txt
# 打印最後一行 awk 默認以空位爲分隔符 NF內部變量表示以分隔符劃分後元素的個數
awk '{print $NF}' awk.txt
cat awk.txt | awk '{print substr($1,1)}'
cat awk.txt | awk '{print length}'
cat awk.txt | awk 'BEGIN{total=0}{total+=$4}END{print total}'
cat awk.txt | awk 'BEGIN{total=0}{total+=$4}END{print total/NR}'
sed
tee sed.txt <<-'EOF'
this is line 1, this is First line
this is line 2, the Second line, Empty line followed
this is line 4, this is Third line
this is line 5, this is Fifth line
EOF
# 替換
sed 's/this/That/g ; s/line/LINE/g' sed.txt
# 刪除第一行
sed '1d' sed.txt
# 保存刪除後文件
sed '1d' sed.txt > save_file
# 若是想直接修改源文件
sed -i '1d' save_file
# 刪除指定範圍 (第1-3行)
sed '1,3d' sed.txt
# 刪除最後一行
sed '$d' sed.txt
# 清空文件
sed '1,$d' sed.txt
# 只保留第5行
sed '5!d' sed.txt
# 刪除全部包含Empty的行
sed '/Empty/d' sed.txt
# 刪除空行
sed '/^$/d' sed.txt
# 替換每一行的第一個值
sed 's/line/LINE' sed.txt
sed 's/line/LINE/2' sed.txt
sed 's/line/LINE/g' sed.txt
# 替換開頭的this 爲 that
sed 's/^this/that/'