案例一:将 test.txt 的所属主设置为 root
# chown root test.txt
或者:
# chown root: test.txt
案例二:将 test.txt 的所属组设置为 root
# chown :root test.txt
案例三:将 test.txt 的所数主设置为 root,所属组设置为 root
# chown root:root test.txt
# chown root test.txt
或者:
# chown root: test.txt
# chown :root test.txt
# chown root:root test.txt
# head -1 /etc/shadow
root:$6$qnQA3KzPOeJP$Kb0zwnZsuEcHXkEXwzYJPKbhbbstdtDuU7mrn3FdKULpMkG5x6WR963olxLAX/E75knAlgwfj/bFHi9R0IMS1.:18331::::::
1) 字段 1:用户
2) 字段 2:加密了的密码字符串
3) 字段 3:最后一次修改密码的时间,从 1970.01.01 到修改时的天数
4) 字段 4:密码的最短使用时间,默认值为 0,单位为天
5) 字段 5:密码的最长使用时间,默认值为 99999,单位为天
6) 字段 6:密码快要到期的警告天数,默认值为 7,单位为天
7) 字段 7:密码过期之后用户还可以有效使用的天数
8) 字段 8:用户失效了多时间,默认值为空,从 1970.01.01 到现在的天数
9) 字段 9:保留字段
(
注意:
1) 如果加密了的密码字符串为:!!,则代表是没有密码
2) 如果加密了的密码字符串为:*,则代表密码被锁定了
)
1) 命令模式:主要用于对文件进行批量编辑
2) 末行模式:主要用于保存退出文件
3) 输入模式:主要用于编辑文件
# vi <file>
或者:
# vim <file>
(补充:此时将自动进入命令模式)
# vi +<line number> <file>
或者:
# vim +<line number> <file>
(补充:此时将自动进入命令模式)
按下 “g” 键再按下 “上方向” 键
或者:
按下 “g” 键再按下 “j” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 “上方向” 键
或者:
按下 “k” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
或者:
按下 “<any number>” 键再按下 “上方向” 键
(补充:此方法会向上方移动对应数字个光标位)
或者:
按下 “<any number>” 键再按下 “k” 键
(补充:此方法会向上方移动对应数字个光标位)
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 “g” 键再按下 “下方向” 键
或者:
按下 “g” 键再按下 “k” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 “下方向” 键
或者:
按下 “j” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
或者:
按下 “<any number>” 键再按下 “下方向” 键
(补充:此方法会向下方移动对应数字个光标位)
或者:
按下 “<any number>” 键再按下 “j” 键
(补充:此方法会向下方移动对应数字个光标位)
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 “左方向” 键
或者:
按下 “h” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
或者:
按下 ““<any number>” 键之后再按下 “左方向” 键
(补充:此方法会向左方移动对应数字个光标位)
或者:
按下 ““<any number>” 键之后再按下 “h” 键
(补充:此方法会向左方移动对应数字个光标位)
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 “右方向” 键
或者:
按下 “l” 键
(注意:此方法还可以实现让光标跨分布或跨终端移动)
或者:
按下 ““<any number>” 之后再按下 “右方向” 键
(补充:此方法会向右方移动对应数字个光标位)
或者:
按下 ““<any number>” 之后再按下 “l” 键
(补充:此方法会向右方移动对应数字个光标位)
(注意:此方法还可以实现让光标跨分布或跨终端移动)
按下 ““<any number>” 键之后再按下 “G” 键
(补充:此方法会让光标移动到对应数字的行)
按下 “0” 键
按下 “^” 键
按下 “$” 键
按下 “H” 键
按下 “M” 键
按下 “L” 键
按下 “g” 键之后再按下 “g” 键
按下 “G” 键
同时按下 “ctrl” 键和 “b” 键
同时按下 “ctrl” 键和 “f” 键
同时按下 “ctrl” 键和 “u” 键
同时按下 “ctrl” 键和 “e” 键
输入百分比后再按下 “%” 键
按下 “z” 键之后再按下 “z” 键
按下 “z” 键之后再按下 “t” 键
按下 “z” 键之后再按下 “b” 键
按下 “d” 键之后再按下 “w” 键
按下 “d” 键之后再按下 “<any number>” 键之后再按下 “w”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向后删除对应数字个单词)
按下 “d” 键之后再按下 “<any number>” 键之后再按下 “h”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向前删除对应数字个字符)
同时按下 “d” 键和 “0” 键
按下 “d” 键之后再按下 “<any number>” 键之后再按下 “l”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向后删除对应数字个字符)
同时按下 “d” 键和 “$” 键
或者:
按下 “D” 键
按下 “d” 键之后再按下 “d” 键
按下 “<start number>” 键之后再按下 “,” 键之后再按下 “<end number>” 之后再按下 “d” 键
(补充:此方法会删除从对应数字到对应数字的行)
按下 “<any number>” 键之后再按下 “d” 键之后再按下 “d” 键
(补充:此方法会从光标所在行开始向后删除对应数字个行)
按下 “d” 键之后再按下 “G” 键
按下 “d” 键之后再按下 “1” 键之后再按下 “G” 键
或者:
按下 “d” 键之后再按下 “g” 键之后再按下 “g” 键
按下 “c” 键
按下 “X” 键
按下 “x” 键
按下 “<any number>” 键之后再按下 “X” 键
(补充:此方法会在光标所在行的范围内从光标所在位置开始向后删除对应数字个字符)
按下 “<any number>” 键之后再按下 “x” 键
(补充:此方法会在光标所在行的范围内从光标所在位置开始向前删除对应数字个字符)
按下 “y” 键之后再按下 “w” 键
按下 “y” 键之后再按下 “<any number>” 键之后再按下 “w”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向后复制对应数字个单词)
按下 “y” 键之后再按下 “<any number>” 键之后再按下 “h”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向前复制对应数字个字符)
同时按下 “y” 键和 “0” 键
按下 “y” 键之后再按下 “<any number>” 键之后再按下 “l”
(补充:此方法会在光标所在行的范围内从光标所在位置开始向后复制对应数字个字符)
同时按下 “y” 键和 “$” 键
按下 “y” 键之后再按下 “y” 键
按下 “<start number>” 键之后再按下 “,” 键之后再按下 “<end number>” 之后再按下 “y” 键
(补充:此方法会复制从对应数字到对应数字的行)
按下 “<any number>” 键之后再按下 “y” 键之后再按下 “y” 键
(补充:此方法会从光标所在行开始向后复制对应数字个行)
按下 “y” 键之后再按下 “G” 键
按下 “y” 键之后再按下 “1” 键之后再按下 “G” 键
或者:
按下 “y” 键之后再按下 “g” 键之后再按下 “g” 键
按下 “p” 键
按下 “P” 键
1) 按下 “i” 键,在光标所在位置进入输入模式
2) 按下 “a” 键,在光标所在位置的后 1 个字符进入输入模式
3) 按下 “I” 键,在光标所在行行首的第 1 个非空格字符进入插入模式
4) 按下 “A” 键,在光标所在行的行尾进入插入模式
5) 按下 “O” 键,在光标所在行的上 1 行新建 1 行,并在行首进入输入模式
5) 按下 “o” 键,在光标所在行的下 1 行新建 1 行,并在行首进入输入模式
按下 “:” 键
按下 “v” 键
或者:
按下 “V” 键
同时按下 “ctrl” 键和 “v” 键
在光标所在行行首,同时按下 “ctrl” 键和 “v” 键再选择对应的行首再按下 “d” 键或者 “x”键,删除在这些行行首的字符
在光标所在行行首,同时按下 “ctrl” 键和 “v” 键再选择对应的行首再按下 “I” 键再输入 <content>再按 “esc” 键,在这些行行首插入 <content>
在光标所在行行首,同时按下 “ctrl” 键和 “v” 键再按下再按 “I” 键再按下 “g” 键再按 “g” 键再输入<content> 再按 “esc” 键,在光标所在行以及前面的所有行的行首插入 <content>
在光标所在行行首,同时按下 “ctrl” 键和 “v” 键再按下再按 “I” 键再按下 “G” 键再输入 <content> 再按 “esc” 键,在这光标所在行以及后面的所有行的行首插入 <content>
按下 “R” 键
按下 “J” 键
按下 “ctrl” 键和 “r” 键
或者:
按下 “.“ 键
按下 “u” 键
按下 “Z” 键之后再按下 “Z” 键
1) :w 保存当前内容
2) :w! 强制保存当前内容
3) :w <file> 保存当前内容到另 1 个名为 <file> 文件
4) :w! <file> 强制保存当前内容到另 1 个名为 <file> 文件
5) :q 退出
6) :q! 强制推出
7) :wq 或者 : x 保存当前内容并退出
8) :wq! 强制保存当前内容并退出
9) :wq <file> 或者 :saveas <file> 保存当前内容到另 1 个名为 <file> 文件并退出
10) :wq! <file> 强制保存当前内容到另 1 个名为 <file> 文件并退出
11) :e! 放弃当前所有修改,将内容恢复到上次保存时
12) :! <command> 使用 Linux 命令
13) :r <file> 在当前行插入名为 <file> 文件里的内容
14) :<n>r <file> 在第 n 行插入名为 <file> 文件里的内容
1) :set nu 或者 :set number 开启行号
2) :set nonu 或者 :set nonumber
: /<key word> 之后按 “n” 键或者 “N” 键显示下 1 个匹配的关键字
:?<key word> 之后按 “n” 键或者 “N” 键显示下 1 个匹配的关键字
:<line number> 之后按 “回车” 键
:s/<old keyword>/<new keyword>
:s/<old keyword>/<new keyword>/g
<start number>,<end number>s/<old keyword>/<new keyword>/g
:,+<any number>s/<old keyword>/<new keyword>/g
:<any number>,%s/<old keyword>/<new keyword>/g
:%s/<old keyword>/<new keyword>/g
:按下 “esc” 键
正常键入内容即可
按下 “esc” 键
# histroy
(注意:默认情况下 history 只会记录 1000 条历史命令)
# cat ~/.bash_history
# !23
# !h
# export HISTTIMEFORMAT="%F %T"
# vim /etc/profile
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
或者:
如果是 Rocky Linux & RHEL:
# vim /etc/bashrc
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
如果是 openSUSE & SUSE:
# vim /etc/profile
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
如果是 Rocky Linux & RHEL:
# vim ~/.bash_profile
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
如果是 openSUSE & SUSE:
# vim ~/.profile
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
或者:
# vim ~/.bashrc
添加以下内容:
export HISTTIMEFORMAT='%F %T'
export HISTFILESIZE=4096000000
export HISTSIZE=100000000
(
补充:这里以
1) 在 history 命令显示的历史命令前面添加记录编号和时间
2) history 命令记录的历史命令大小是 4096000000
3) history 命令显示的历史命令条数是 100000000 条
为例
)
# kill --help
# kill -9 <PID number>
或者:
# kill -<kill option> <PID number>
# kill -15 <PID number>
# killall <process name>