一.终端介绍
所谓终端,即图形界面下的一种命令行窗口,用来实现操作系统与用户的交互,和windows一样
接下来我将介绍Ubuntu的一些指令
1.打开终端
默认快捷键为: Ctrl+Alt+T
2.关闭终端
1.在终端命令行输入 exit 然后按Enter
2.或者选定该终端 然后按住Ctrl+D 即可关闭
二.认识shell
1.shell的概述:
用户使用操作系统几乎都在桌面环境下,通过鼠标单击操作基本可以完成大部分的工作,图形界面对用户十分友好,交互方便,然而,linux操作系统的许多功能使用shell命令来完成要比图形界面更快,且直接
2.命令行提示符:
如图所示 jj代表username @ubuntu代表主机名 ~/桌面代表当前路径 $代表普通用户
username: 用户名,即当前登录用户的用户名
hostname:主机名,即系统的主机名
direction:目录名,即当前用户所在的路径~代表在用户主目录下 /表示在根目录
$:shell提示符,表示当前用户为普通用户,如果当前用户为超级用户(管理员)则提示符号#
3.shell命令格式:
一般情况下,命令的3要素为:命令名称,附加选项,参数
$command [options] Argument Arugment...
command:命令名称
options:附加选项
Argument:参数
需要注意的是,输入命令时候需要将上述3要素用空格隔开,如果多个命令需要同时输入操作系统;隔开,如果一条命令不能在一行输入完,则本行末尾初使用分隔符\表示本行没输入完整
三.Linux操作系统命令
1.用户与系统相关命令
1.切换用户命令su
Linux操作系统是一个多用户操作系统,因此有时会涉及用户切换与用户管理等操作
Linux操作系统命令su用来实现对当前系统操作用户进行切换,通常被用来完成普通用户和超级用户切换,由于权限问题,常需当前的普通
用法: su [option] [user]
选项 | 功能 |
- -l --login | user重新登入,大部分环境变量与工作目录 都将以这个用户为主如果命令不知道user 则默认登入root |
-m -p | 切换用户时候不改变环境变量 |
-c command --command =command | 切换用户为user并执行指令command后切换原用户 |
2.系统相关命令
命令 | 功能 | 格式 |
shutdown | 关闭或重启 | shutdown[选项][时间] |
reboot | 重启系统 | reboot[时间] |
clear | 清除屏幕信息 | clear |
exit | 关闭当前终端 | exit |
uptime | 显示系统运行时间 | uptime |
ps | 显示进程 | ps[选项] |
top | 动态显示系统进程 | top |
kill | 向进程发送信号 | kill[选项][进程号] |
shutdown -r 重启 -h 关机
ps常见附加选项 -ef aux axj -w
kill附加选项 -l 列出所有可用信号 -s 指定信号的编号或者名称,并发送信号给该进程
3.磁盘相关命令
命令 | 命令相关含义 | 格式 |
free | 查看当前系统内存的使用情况 | free[选项] |
df | 查看文件系统磁盘的使用情况 | df[选项] |
du | 统计目录(或者文件)所战磁盘大小 | du[选项] |
fdisk | 查看磁盘分区情况以及磁盘分区管理 | fdisk[选项] |
4.文件相关命令
创建目录的命令 mkdir [路径名] -m创建目录时指定存取权限 -p可以创建层级目录
目录切换命令 cd [需要切换的路径名]
查看用户当前工作的目录的绝对路径 pwd
5.文件显示查询
列出目录全部文件 ls [选项] [文件]
选项 | 功能 |
-l l | 表示一行输出一个文件 |
-a all | 列出目录中所有文件,包括以"."开头的隐藏文件 |
-i | 列出文件所对应的inode号 |
-l | 显示文件类型等存取权限,硬链接数,所属用户,等 |
6.文件的赋值,剪切,删除
文件复制/文件移动 cp/mv [选项] 源文件或者目录 目标文件或者目录
文件删除rm [选项] 文件或者目录 / rm 文件或目录 [选项]
cp附加选项
选项 | 功能 |
-d | 复制时保留链接 |
-f | 删除已经存在的目标文件,不提示 |
-i | 在覆盖目标文件将给出提示,要求用户确定 |
-p | 复制文件时候,其修改时间和存取权限也将复制到新文件 |
-r | 如果复制的源文件是一个目录文件,则复制到该目录下所有文件与目录 |
-a | -d -p -r选项组合 |
mv附加选项
选项 | 功能 |
-i | 如果mv操作将导致对已经存在的文件的覆盖,则向系统询问是否覆盖 |
-f | 与命令cp类似,操作将导致覆盖已存在文件,系统不做任何提示 |
rm附加选项
选项 | 功能 |
-i | 与命令,mv情况类似,即交互式操作,系统询问操作是否执行 |
-f | 忽略不存在的文件不做提示 |
-r | 递归操作,与mv情况类似,如果文件为目录则递归删除下所有的文件 |
7.文件搜索
搜索指定特定内容,并将这些内容输出到终端 grep [选项] 格式 [文件及路径]
grep附加选项
选项 | 功能 |
-r | 表示递归,遍历这个目录中所有文件 |
-i | 不区分大小写 |
-h | 查询多文件时候不显示文件名 |
-l | 查询多文件只输出包含匹配字符的文件名 |
-n | 显示匹配及行号 |
-s | 不显示不存在或者无匹配文本的错误信息 |
-v | 显示不包含匹配文本的所有行 |
在指定的目录中搜索文件 find [路径] [选项] [描述]
find附加选项
选项 | 功能 |
-depth | 使用深度级别的查找方式,在指定的目录中优先查找文件内容 |
-mount | 不在其他文件系统的目录和文件中查找 |
-name | 按照名字查找,支持 * 和 ? |
-user | 按照文件所属用户查找 |
输出搜索结果,并且打印 |
2.用户与用户组
1.与用户相关的配置文件
/etc/passwd: #用户的配置文件, 保存用户账户的基本信息
文件每一行保存一个拥护资料
username:password:uid:gid:userinfo:home:shell
以下是对这行的解释
username | password | uid | gid | userinfo | home | shell |
登入名 | 密码 | 用户id | 用户组id | 用户信息 | 分配给用户的主目录 | 用户登录后将执行的shell(若为空格则默认为“/bin/sh”) |
2.新增用户和其参数
useradd [参数] 用户名
-c comment :新账户的password的说明栏
-u:指定 UID 标记号。这个值是唯一的,除非用-o选项。数字不可为负值
-d:指定宿主目录,缺省为 /home/用户名-e:指定帐号失效时间
-f:账户过期几天后永久停权。
-g:指定所属的基本组(组名或GID)-G:指定所属的附加组(组名或GID)
-m:在用户主目录下创建
-M:不为用户建立并初始化宿主目录。优先于/etc/login.defs文件的设定。
-n:默认情况下,用户的用户组和用户的名称会相同,如果命令加了-n参数,就不会生成和用户同名的用户组
-r:用来建立系统账户。系统账户的UID会比定义在/etc/login.defs的UID_MIN来的小。
-s:指定用户的登录Shell
3.删除用户及其参数
userdal [参数] 用户名
-r:连同主目录一起删除
删除用户时候会发出进程号 此时还需根据进程号进行进一步操作
sudo kill -SIGKILL 进程号
4.用户与组
一对一 用户与组一对一某一用户某一个的唯一成员
多对一 多个用户是唯一成员成语不归属其他组
一对多 某个用户可以是多个用户组成员
5.用户组的添加
用户组信息(用户组所有信息都存放在etc/group文件夹中)
groupadd [参数] 用户组
-f, --force 如果组已经存在则成功退出并且如果 GID 已经存在则取消 -g
-g, --gid GID 为新组使用 GID
-h, --help 显示此帮助信息并推出
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-o, --non-unique 允许创建有重复 GID 的组
-p, --password PASSWORD 为新组使用此加密过的密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
6.用户组成员添加与删除
gpasswd [选项] 用户名 组名
-a 把用户添加到组
-d 把用户从组中删除
7.查看用户的属性
tail [参数] [文件]
tail /etc/passwd查看用户基本属性
wjk:x:1007:999::/home/wjk:/bin/sh
登录名:加密口令:uid:gid:个人信息:主目录:登入shell