GaRy-Liang的linux成长日记5-基本命令
一、前言
今天又是新的一天,收拾一下困意,开启充实的一天,今天又是学习命令,人不能一口吃撑胖子,饭要一口一口吃,知识要一点一点学,go~!
二、学习内容
1、bash的基础操作
tab键: 一下或者两下tab键可以补全命令或路径(如果命令敲错了,tab键不会有任何提示出来)
历史命令的调用:
上下方向盘的箭头,可以调用之前用过的命令
history命令能够看到之前的命令
[root@liangGaRy ~]# history
!加数字使用之前的命令
[root@liangGaRy ~]# !149
!!调用上一次的命令
[root@liangGaRy ~]# !!
清屏:ctrl+l clear命令
光标移到行头、行尾:ctrl+a ctrl+e
删除光标之前的:ctrl+u
2、查找命令所在路劲
(1)which +命令 能够显示别名
[root@liangGaRy ~]# which ls
alias ls=‘ls --color=auto’
/bin/ls
(2)whereis 查看命令所在路径
[root@liangGaRy ~]# whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz
2、帮助命令
(1)man 查看帮助文档
[root@liangGaRy ~]# man ls
注意:
我经常看的是synopsis 语法格式,和DESCRIPTION描述参数。虽然也是看不懂一大串一大串英文。
快捷功能:
:/file 快速查找关键词
方向键上下移动查看内容
n键下一行
q键退出
(2)info 帮助命令
[root@liangGaRy ~]# info ls
基本上没用过。
(3)help帮助命令
[root@liangGaRy ~]# ls –help
可以查看少一点的内容
3、Vim文档编辑
linux中一切皆是文件,vi和vim命令基本上都会使用到其中一个的
vim有三种模式:普通、插入
普通模式:
a 插入光标后面
i 光标所在处插入
o 换行插入
进入到插入模式后想要退出:esc键
快捷键功能:非常好用!!!
普通模式:
gg 光标移至文件首行
G 光标移至文件尾行
nG 光标移至第几行
x 删除光标所在的字符
dd 删除光标所在行
ndd 删除n行
u 撤销上一个步骤
yy 复制当前行
P/pp 粘贴
r字母 光标所在的字符替换成字母
普通模式下输入冒号
:s/root/admin/ 出现第一个root替换成admin
:s/root/admin/g 所有root替换成admin
:3,5/root/admin/g 第三行至第五航的root替换成admin
:set number 设置行号
:set ignorecase 忽略大小写
:q ! 强制退出
:wq! 强制保存并退出
ZZ 快捷保存退出
:!{命令} 在编辑的时候查看命令
4、账户与账户组的概念
linux系统是通过ID号来管理账号和组
UID: UID为0的代表是超级用户
0~499 系统预留来用的
500以上是给普通用户
GID:组ID
(1)useradd 添加新的用户
示例:
[root@liangGaRy ~]# useradd gary
选项
-c 设置描述信息
-d 设置用户家目录
-e 设置时效日期
-g 设置基本组
-G 设置附加组,多个附加组用“,”隔开
-M 不创建账户家目录,一般与-s使用
-s 指定登陆的shell
-u 指定UID
(2)groupadd 创建用户组
示例:
[root@liangGaRy ~]# groupadd family
选项
-g 指定GID
(3)id 查看用户信息
[root@liangGaRy ~]# id root
uid=0(root) gid=0(root) groups=0(root)
(4)passwd 修改密码
示例:
[root@liangGaRy ~]# passwd gary
Changing password for user gary.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
参数:
-l 锁定用户
-u 解锁用户
-d 快速清空用户密码
–stdin 从管道或者文件获取密码
标准常用格式
[root@liangGaRy ~]# echo “123456” | passwd --stdin gary
(5)usermod 修改账户信息
示例:
[root@liangGaRy ~]# usermod -G family gary
[root@liangGaRy ~]# id gary
uid=500(gary) gid=500(gary) groups=500(gary),501(family)
选项
-d 修改家目录
-e 修改时效日期
-g 修改基本组
-G 修改附加组
-s 修改登陆的shell
-u 修改账户UID
(6)userdel 删除用户组及相关文件
示例:
[root@liangGaRy ~]# userdel -r jerry
选项:
-r 删除相关文件及账户
(7)groupdel 删除组用户
示例:
[root@liangGaRy ~]# groupdel jerry
5、账户信息文件解析:
(1)/etc/passwd文件 账户信息保存的位置
[root@liangGaRy ~]# cat /etc/passwd
root❌0:0:root:/root:/bin/bash
bin❌1:1:bin:/bin:/sbin/nologin
…
root❌0:0:root:/root:/bin/bash
账户名称:密码位:UID:GID:账户附加基本信息:描述信息:家目录位置:登陆的shell
(2)/etc/shadow 密码保存文件
示例:
[root@liangGaRy ~]# cat /etc/shadow
root:
6
6
6m/rMp/uCc0hAUvj9$repW5h/QjcUsvNFeO9u5NpUDOGXj5.Qovp869GqiMjgsATc52eOlpV2LVX0H7MMiN5rkT6cH98EJfLPv.rSKO1:18354:0:99999:7:::
第一列:账户名:root
第二列:密码:一大串加密,!!双感叹号代表还没设定明码
第三列:上次修改密码的时间
第四列:密码最短有效天数
第五烈:密码最长有效时间
第六列:过期前的预警时间
第七列:密码过期后的宽限时间
第八列:账户时效日期
第九列:保留没使用
(3)/etc/group 组账户信息文件
示例:
[root@liangGaRy ~]# cat /etc/group
root::0:
bin❌1:bin,daemon
第一列:组账户名称
第二列:密码位
第三列:GID
第四列:组成员信息,指的是附加组成员
(4)/etc/gshadow 组账户密码文件
[root@liangGaRy ~]# cat /etc/gshadow
root:::
bin:::bin,daemon
(5)gpasswd 修改组密码
示例:
[root@liangGaRy ~]# gpasswd -A gary family gary是family组的管理员
三、LAST
两个小时的学习一下子就过去了。keep moving!
那就这样的吧。技术路不好走,最后给自己灌点鸡汤让自己坚持去做一件事情,让架构师这个名字早点挂载到我的身上。
1、 不想输,就别懒!
2、趁着年轻就多点折腾,老了再折腾也折腾不动了。
3、投资自己大脑,就不会像行尸走肉一般的活着!