2.1 group
添加组
groupadd [options] GROUP
创建一个新的组groupbdc,并添加组 ID:325。
# groupadd -g 325 groupbdc
-g:指定新建用户组的ID
-r:创建系统账户(系统账户GID小于500)
删除组
groupdel [options] GROUP
删除组groupbdc。
# groupdel groupbdc
修改组
groupmod [options] GROUP
删除组groupbdc为groupbdc 。倘若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。
# groupmod -n newgroupbdc groupbdc
-n:指定某组的新组名
查看组
查看组账户信息
cat /etc/group
查看安全组账户信息
# cat /etc/gshadow
查看密码套件配置。
cat /etc/login.defs Shadow
2.2 user
添加用户
useradd [options] LOGIN
添加用户userbdc。
# useradd userbdc
为添加用户指定用户组。
# useradd -g groupbdc userbdc
创建一个系统用户。
# useradd -r userbdc
删除用户
userdel [options] LOGIN
删除userbdc用户以及与此用户相关的所有文件。
# userdel -r userbdc
-r 删除用户的同时,删除与用户相关的所有文件。
判断用户是否存在
id [OPTION]... [USER]
判断用户userbdc是否存在
id userbdc
设置用户密码
passwd [options] [LOGIN]
为userbdc用户设置密码。
# passwd userbdc
修改用户
usermod [options] LOGIN
修改userbdc用户为root用户组
# usermod –g root userbdc
切换用户
su [options] [LOGIN]
切换用户,只能获得用户的执行权限,不能获得环境变量
su userbdc
切换到用户并获得该用户的环境变量及执行权限
su - userbdc
查看登录用户信息
查看创建了哪些组
cat /etc/passwd
显示自身用户名称
whoami
显示登录用户的用户名
who am i
显示有哪些用户登录到了本台机器上
who
sudo
修改配置文件/etc/sudoers
## Allow root to run any commands anywhere
文件目录类
root ALL=(ALL) ALL
userbdc ALL=(ALL) ALL或 NOPASSWD:ALL(不需要输入密码)
3.1 pwd
基本语法
pwd显示您目前所在的工作目录的绝对路径
pwd [-LP]
-L 如果指定当前工作目录,则打印$PWD的值。ehco $PWD 默认就是 -L
-P 打印物理目录,不包含任何符号链接
常用实例
# pwd
/home/wang
3.2 ls
基本语法
显示指定工作目录下的内
ls [-alrtAFR] [目录or文件]
|文件类型以及权限|链接数|文件属主|文件属组|文件大小(单位:Byte)|
最后一次操作的时间|文件名称
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件按照建立时间之先后次序列出
-A 不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 递归显示层级目录
-a 显示所有文件及目录,包括以"."开头的隐藏档
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
实例
3.3 mkdir
基本语法
创建一个新的目录
mkdir [-p] dirName
-p 递归创建多层目录
dirName 目录名称(可以是多个)
实例
mkdir -p a/b/c
3.4 rmdir
基本语法
删除一个空的目录
rmdir [-p] dirName
-p 递归创建多层目录
dirName 目录名称(可以是多个)
实例
rmdir -p a/b/c
3.5 touch
基本语法
创建新的空白文件
touch fileName
实例
touch new.txt
3.6 cd
基本语法
切换目录
cd [dirName]
dirName 相对路径或绝对路径都支持
实例
cd ~或者cd # 回到自己的家目录
cd - # 回到自己上一次所在目录
cd .. # 回到当前目录的上一级目录
cd -P # 跳转到实际物理路径,而非快捷方式路径
3.7 cp
基本用法
复制文件或目录
cp [options] source dest 或 cp [options] source... directory
实例
使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newDir"下
cp –r test/ newDir
3.8 rm
基本语法
删除文件或目录
rm [options] fileName或dirName...
-i 删除前逐一询问确认。
-r 递归删除目录中所有内容
-f 强制执行删除操作,而不提示用于进行确认。
-v 显示指令的详细执行过程
常用案例
递归删目录中所有内容
rm -rf dirName
删除当前目录下的所有文件及目录
rm -r *
需要注意
文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令。
3.9 mv
基本语法
移动文件、目录或重命名
mv [options] source dest #重命名
mv [options] source... directory #移动
常用案例
将文件oldFileName.txt重命名为newFileName.txt
mv oldFileName.txt newFileName.txt
将文件fileName移动到目录dir
mv fileName.txt dir
需要注意
如果目录存在,则该命令执行移动操作。
如果目录不存在,则该命令执行修改操作。
3.10 cat
基本语法
查看文件内容,正序
cat [options] fileName
-n 或 -number : 对输出的内容进行编号
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
常用案例
root@DESKTOP-KV8R5US:/# cat -number a.txt
3.11 tac
基本用法
查看文件内容,倒序
tac [options] fileName
常用实例
root@DESKTOP-KV8R5US:/# tac a.txt
3.12 more
基本用法
more [options] fileName
空白键 (space):代表向下翻一页;
Enter:代表向下翻『一行』;
q:代表立刻离开 more ,不再显示该文件内容。
Ctrl F 向下滚动一屏
Ctrl B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
常用实例
root@DESKTOP-KV8R5US:/# more a.txt
3.13 less
基本用法
less 的作用与 more 十分相似,都可以用来浏览文字档案的内容,不同的是 less 允许使用[pageup] [pagedown]往回滚动。
less [options] fileName
空白键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字串 :向下搜寻『字串』的功能;n:向下查找;N:向上查找;
?字串 :向上搜寻『字串』的功能;n:向上查找;N:向下查找;
q :离开 less 这个程序;
常用实例
root@DESKTOP-KV8R5US:/# less a.txt
3.14 head
基本用法
head [options] fileName
-n x 查看文件头x行内容
常用实例
root@DESKTOP-KV8R5US:/# head -n 1 a.txt
total 580
3.15 tail
基本用法
tail [options] fileName
-f 实时追踪该文档的所有更新
-n x 查看文件末尾x行内容
常用实例
root@DESKTOP-KV8R5US:/# tail -n 1 a.txt
drwxr-xr-x 1 root root 512 Mar 5 00:02 var
3.16 echo
基本用法
显示一行文本,用于字符串的输出。
echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION
常用案例
显示普通字符串
root@DESKTOP-KV8R5US:/# echo "hello bdc "
hello bdc
显示转义字符
root@DESKTOP-KV8R5US:/# echo "\"It is echo\""
"It is echo"
显示变量
root@DESKTOP-KV8R5US:/# echo $PWD
/
显示换行
root@DESKTOP-KV8R5US:/# echo -e "OK! \n"
OK!
输出结构到文件
root@DESKTOP-KV8R5US:/# echo "It is echo" > myfile
root@DESKTOP-KV8R5US:/# cat myfile
It is echo
显示命令内容
root@DESKTOP-KV8R5US:/# echo `date`
Tue Jun 23 10:44:48 CST 2020
3.17 >>
基本语法
重定向
> 列表的内容写入文件中(覆盖写)
>> 列表的内容追加到文件末尾
常用案例
root@DESKTOP-KV8R5US:/# ls -l > a.txt
root@DESKTOP-KV8R5US:/# ls -l >> a.txt
3.18 ln
基本用法
Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。
不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。
软链接,以路径的形式存在。类似于windows操作系统中的快捷方式
软链接可以 跨文件系统 ,硬链接不可以
软链接可以对一个不存在的文件名进行链接
软链接可以对目录进行链接
硬链接,以文件副本的形式存在。但不占用实际空间。
不允许给目录创建硬链接
硬链接只有在同一个文件系统中才能创建
ln [options] [source/dir] [dest/dir]
-s 软链接(符号链接)
-b 删除,覆盖以前建立的链接
-d 允许超级用户制作目录的硬链接
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-n 把符号链接视为一般目录
-v 显示详细的处理过程
常用实例
给hadoop目录创建软链接/ln/hadoop,如果hadoop丢失,/ln/hadoop将失效:
ln -s hadoop /ln/hadoop
cd不加参数进入是软链接的地址
cd hadoop
cd加参数进入是实际的物理地址
cd -P hadoop
3.19 history
基本用法
显示所操作历史记录列表。
history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]
常用案例
history
文件权限类
4.1 文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组。
文件类型 | 属主权限 | 属组权限 | 其他用户权限 |
---|---|---|---|
0 | 1 2 3 | 4 5 6 | 7 8 9 |
d | R w x | R - x | R - x |
目录文件 | 读 写 执行 | 读 写 执行 | 读 写 执行 |
0首位表示类型
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
- 代表文件
d 代表目录
c 字符流,装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)
s socket
p 管道
l 链接文档(link file);
b 设备文件,装置文件里面的可供储存的接口设备(可随机存取装置)
第1-3位确定属主(该文件的所有者)拥有该文件的权限。---User
第4-6位确定属组(所有者的同组用户)拥有该文件的权限,---Group
第7-9位确定其他用户拥有该文件的权限 ---Other
rxw作用文件和目录的不同解释
作用到文件:
[ r ]代表可读(read): 可以读取,查看
[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件.
[ x ]代表可执行(execute):可以被系统执行
作用到目录:
[ r ]代表可读(read): 可以读取,ls查看目录内容
[ w ]代表可写(write): 可以修改,目录内创建 删除 重命名目录
[ x ]代表可执行(execute):可以进入该目录
4.2 chmod改变权限
基本用法
文件类型 | 属主权限 u | 属组权限 g | 其他用户权限 o |
---|---|---|---|
0 | 1 2 3 | 4 5 6 | 7 8 9 |
d | R w x | R - x | R - x |
目录文件 | 读 写 执行 | 读 写 执行 | 读 写 执行 |
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
chmod [{ugoa}{ -=}{rwx}] [文件或目录] [mode=421 ] [文件或目录]
chmod [mode=421 ] [文件或目录]
功能描述
改变文件或者目录权限
文件: r-查看;w-修改;x-执行文件
目录: r-列出目录内容;w-在目录中创建和删除;x-进入目录
删除一个文件的前提条件:该文件所在的目录有写权限,你才能删除该文件。
4.3 chown改变所有者
基本语法
chown [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有者)
-R 递归操作
4.4 chgrp改变所属组
基本语法
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
时间日期类
5.1 date显示当前时间
data 显示当前时间
Tue Jun 16 20:03:43 CST 2020
date %Y 显示当前年份 (Y是4位的年/y是2位的年)
2020
date %m 显示当前月份
06
date %Y%m%d date %Y-%m-%d date %Y/%m/%d 显示当前年月日各种格式
20200616 2020-06-16 2020/06/16
date " %Y-%m-%d %H:%M:%S" 显示年月日时分秒
2020-06-16 20:10:08
5.2 date 显示非当前时间
date -d yesterday %Y%m%d 或 date -d '1 days ago' 显示昨天当下时间
20200615 或 Tue Jun 15 20:12:55 CST 2020
date -d next-day %Y%m%d 或 date -d 'next monday' 显示明天当下时间
20200617 或 Tue Jun 17 20:15:15 CST 2020
5.3 date 设置系统时间
date -s 字符串时间
date -s "xxxx-xx-xx xx:xx:xx"
在设置完时间之后我们可以将其写入到BIOS,避免重启失效
hwclock -w 强制把系统时间写入CMOS
在计算机领域,CMOS常指保存计算机基本启动信息(如日期、时间、启动设置等)的芯片。有时人们会把CMOS和BIOS混称,其实CMOS是主板上的一块可读写的并行或串行FLASH芯片,是用来保存BIOS的硬件配置和用户对某些参数的设定。
5.4 cal 查看日历
cal 显示本月日历
June 2020
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
cal 2000 显示某年(2000)日历
2000
January February March
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 1 2 3 4 5 1 2 3 4
2 3 4 5 6 7 8 6 7 8 9 10 11 12 5 6 7 8 9 10 11
9 10 11 12 13 14 15 13 14 15 16 17 18 19 12 13 14 15 16 17 18
16 17 18 19 20 21 22 20 21 22 23 24 25 26 19 20 21 22 23 24 25
23 24 25 26 27 28 29 27 28 29 26 27 28 29 30 31
30 31
April May June
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 1 2 3 4 5 6 1 2 3
2 3 4 5 6 7 8 7 8 9 10 11 12 13 4 5 6 7 8 9 10
9 10 11 12 13 14 15 14 15 16 17 18 19 20 11 12 13 14 15 16 17
16 17 18 19 20 21 22 21 22 23 24 25 26 27 18 19 20 21 22 23 24
23 24 25 26 27 28 29 28 29 30 31 25 26 27 28 29 30
30
July August September
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 1 2 3 4 5 1 2
2 3 4 5 6 7 8 6 7 8 9 10 11 12 3 4 5 6 7 8 9
9 10 11 12 13 14 15 13 14 15 16 17 18 19 10 11 12 13 14 15 16
16 17 18 19 20 21 22 20 21 22 23 24 25 26 17 18 19 20 21 22 23
23 24 25 26 27 28 29 27 28 29 30 31 24 25 26 27 28 29 30
30 31
October November December
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7 1 2 3 4 1 2
8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
31
cal -3 显示系统前一个月,当前月,下一个月的日历
May 2020 June 2020 July 2020
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 1 2 3 4 5 6 1 2 3 4
3 4 5 6 7 8 9 7 8 9 10 11 12 13 5 6 7 8 9 10 11
10 11 12 13 14 15 16 14 15 16 17 18 19 20 12 13 14 15 16 17 18
17 18 19 20 21 22 23 21 22 23 24 25 26 27 19 20 21 22 23 24 25
24 25 26 27 28 29 30 28 29 30 26 27 28 29 30 31
31