Ubuntu常用命令手册【自用笔记】

Ubuntu常用命令手册【自用】

目录

  • Ubuntu常用命令手册【自用】
    • 1. 杂项
        • 1. 删除进程中包含"smb"字段的所有进程
        • 2. 查看最近登录的ip
    • 2. xargs
    • 3. awk
    • 4. find
    • 5. grep
    • 6. sed
    • 7. timedatectl

1. 杂项

1. 删除进程中包含"smb"字段的所有进程
sudo kill -9 $(ps -aux | grep smb | awk '{print $2}')
2. 查看最近登录的ip
cat /var/log/audit/audit.log  | grep sshd | grep  -v "hostname=?" | grep -Eo "hostname=([0-9]{1,3}[\.]){3}[0-9]{1,3}" | awk -F '=' '{print $2}'| awk '!a[$0]++'

2. xargs

接受一个字符串作为命令参数使用。
正常条件下:命令参数 > 标准输入参数
-d 分隔符,默认是空格分隔,可以指定分隔符,例如 -d ‘@’
-n 分成n组执行,例如10个参数分成4组执行等等。
参考:xargs命令详解,xargs与管道的区别

ps -aux | grep smb | awk '{print $s}'|xargs kill -9

3. awk

$NF 输出最后一列
$1 输出第1列,可换
$2==? && $3=="?" 某一列等于数字 and 某一列等于字符串(&& ||)

# 查看最后一列
ps -aux | awk '{print $NF}'
# 查看七月30或31日,某几列的日志
awk '($2==31||$2==30) && $3=="Jul" {print $2,$3,$16,$17}' update_db.log 

4. find

根据文件的属性进行查找
如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间
更多参数:
    !:不等于
    -and(-a) :和
    -or(-o) :或

# 查找etc目录下名称包含srm的文件,通配符可自定义
find /etc -name '*srm*'

5. grep

根据文件的内容进行查找
对文件的每一行按照给定的模式(patter)进行匹配查找
主要参数:
    -c:只输出匹配行的计数。
    -i:不区分大小写
    -h:查询多文件时不显示文件名。
    -l:查询多文件时只输出包含匹配字符的文件名。
    -n:显示匹配行及行号。
    -s:不显示不存在或无匹配文本的错误信息。
    -v:显示不包含匹配文本的所有行。
正则表达式主要参数:
    \: 转义,忽略正则表达式中特殊字符的原有含义。
    ^:匹配正则表达式的开始行。
    $: 匹配正则表达式的结束行。
    <:从匹配正则表达 式的行开始。
    >:到匹配正则表达式的行结束。
    [ ]:单个字符,如[A]即A符合要求 。
    [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
    . :所有的单个字符。
    * :有字符,长度可以为0。

(1)grep 'test' d*          #显示所有以d开头的文件中包含 test的行
(2)grep 'test' aa bb cc    #显示在aa,bb,cc文件中包含test的行
(3)grep '[a-z]\{5\}' aa    #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
(4)grep magic /usr/src     #显示/usr/src目录下的文件(不含子目录)包含magic的行
(5)grep -r magic /usr/src  #显示/usr/src目录下的文件(包含子目录)包含magic的行
(6)grep -w pattern files     #只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),

参考链接:Linux 文本三剑客之 - grep 文本搜索工具
参考链接:Linux下的find文件查找命令与grep文件内容查找命令

6. sed

参考链接:Linux 文本三剑客之 - sed 字节流编辑器

7. timedatectl

  用来修改Linux的系统时间、硬件时间和时区。官方解释如下:

timedatectl [OPTIONS...] COMMAND ...

Query or change system time and date settings.
查询或更改系统时间和日期设置。

  -h --help                Show this help message
     --version             Show package version
     --no-pager            Do not pipe output into a pager
     --no-ask-password     Do not prompt for password
  -H --host=[USER@]HOST    Operate on remote host
  -M --machine=CONTAINER   Operate on local container
     --adjust-system-clock Adjust system clock when changing local RTC mode

Commands<命令>:
  status                   Show current time settings
  set-time TIME            Set system time
  set-timezone ZONE        Set system time zone
  list-timezones           Show known time zones
  set-local-rtc BOOL       Control whether RTC is in local time
  set-ntp BOOL             Enable or disable network time synchronization

具体使用参考连接:【timedatectl】修改Linux系统时间、硬件时间和时区

你可能感兴趣的:(Linux,ubuntu,运维,Linux)