Linux常用命令总结

1 文本处理工具

test.txt原文

IP URL
4 X
2 X
4 X
2 X
4 X
5 X
2 X
1 X
3 X
3 X

查询IP出现最多次数最多的前3名

 cat test.txt | awk 'NR != 1 {print $1}' | sort | uniq -c | sort -nr | head -3

2 awk工具

awk options BEGIN {command} 'pattern {command}' END {command} input-file > output-file

BEGIN 处理前执行脚本
END 处理后执行脚本
options 选项,主要就是-F,指定分隔符
pattern匹配模式,筛选行,如NR
command动作,如print,printf,sum

内置变量
内置变量

3 cut命令

cut -d ":" -f 1

如以上命令,以:分割,然后输出第1列

-c:仅显示行中指定范围的字符;
-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;

4 Shell命令

4.1 几个符号

“” 处理命令或转移字符
$ a或$ {a}
$0 脚本名称
$1,$2等 入参,以空格分隔
$# 参数数量
$? 最后命令退出状态,0正常,其他异常
$* 或 $@ 单字符显示所有入参
$$ 当前进程ID
$! 最近一个进程ID

() 数组
[ 表达式 ] 条件表达式,必须要有空格
`expr 表达式` 或者$((表达式)) 算数表达式

IF语句

if condition1
then
    command1
elif condition2 
then 
    command2
else
    commandN
fi

while语句

while true
do
    command
done

for语句

for var in item1 item2 ... itemN
do
    command1
    command2
    ...
    commandN
done

util语句

until condition
do
    command
done

case语句

#!/bin/bash
while :
do
    echo -n "输入 1 到 5 之间的数字: "
    read aNum
    case $aNum in
        1|2|3|4|5) echo "你输入的数字为 $aNum!"
        ;;
        *) echo "你输入的数字不是 1 到 5 之间的!"
            continue
            echo "游戏结束"
        ;;
    esac
done
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值