一.文件操作
1.#cd 切换目录
(1.)相对路径:参照当前所在目录进行查找 如:cd ../usr/local/src/
(2.)绝对路径:从根目录开始指定,一级一级递归查找,在任何目录下,都能进入指定位置 如:cd /etc/
cd ~ | 进入当前用户的家目录 |
cd - | 进入上次目录 |
cd .. | 进入上一级目录 |
cd . | 进入当前目录 |
2.#ls 用于显示指定工作目录下之内容(不加参数则列出当前目录下的内容)。
语法:#ls [选项] [文件或目录]
3.#pwd 显示工作目录所在位置(显示绝对路径)
4.#mkdir 创建目录,-p 递归创建,用于创建多级目录
语法:#mkdir -p [目录名]
5.#cp 复制文件或目录(复制后改名)
语法:(1.) cp [选项] [原文件或目录] [目标目录]
(2.) cp [选项] [原文件或目录] [目标目录] [复制后改名为]
-r | 复制目录,将指定目录下的所有文件与子目录一并处理 |
-f | 强行复制文件或目录,已存在会覆盖 |
-i | 覆盖既有的文件前先询问用户 |
-p | 连带文件属性复制 |
-d | 若源文件是链接文件,则复制链接属性 |
-a | 相当于-pdr |
6.#mv 剪切或改名,如果原文件和目标目录在同一目录下,则为改名,否则为剪切
语法:#mv [原文件或目录] [目标目录]
7.#rm 删除文件或目录
语法: #rm -rf [文件或目录]
选项:-r 删除目录;-f 强制执行
这个命令最好慎重加慎重
8.#rmdir 删除空目录
语法:#rmdir[选项] [目录]
选项:-p删除指定目录树;-v输出诊断学习
9.#find 查找文件
语法:#find [路径][选项][设定]
-name | 文件名 |
-user | 用户名 |
-type | 文件类型 |
-size | 大小 |
-atime | 最后访问日期 |
-mtime | 最后修改日期 |
二.vim编辑
vim的模式:命令模式、输入模式、末行模式
进入vim的命令模式:#vi [文件名]
1.命令模式(任何模式下按esc都可进入)
光标的定位 | g | 跳到文件最后一行,光标在行首 |
0 | 当前行的行首 | |
$ | 当前行的行尾 | |
字符检索 | /str | 向光标之下寻找一个名称为 str 的字符串 |
?word | 向光标之上寻找一个字符串名称为 word 的字符串。 | |
n | 例如 /vbird 后,按下 n 则表示『向下』搜寻 vbird | |
N | 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird | |
文本的复制粘贴和删除 | dd | 删除游标所在的那一整行(常用) |
ndd | n 为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列 (常用) | |
yy | 复制游标所在的那一行(常用) | |
nyy n | 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(常用) | |
x, X | 在一行字当中,x 为向后删除一个字符 (常用) | |
nx | n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符,『10x』。 | |
撤销和重复 | u | 复原前一个动作。(常用) |
. | 重复前一个动作(常用) | |
保存和退出 | ZZ | 存盘退出 |
ZQ | 不保存并退出 |
2.进入到输入模式的命令
编辑行为 | 命令 |
在当前位置插入文本 | i |
在行首插入文本 | I |
在当前位置追加文本 | a |
在行尾追加文本 | A |
在光标所在行上面新建一行等待输入 | O |
在光标所在行下面新建一行等待输入 | o |
3.末行模式(在命令模式下按Shift+“:”)
:/str/ | 光标向后移动到被搜索的字符串str的位置 |
:?str? | 光标向前移动到被搜索的字符串str的位置 |
:/str/ w file | 将包含str的行写入文件file中 |
:/str1/,/str2/w file | 将从str1开始带str2结束的内容写到文件file中 |
:s/str1/str2/g | 将所有str1替换成str2 |
:n | 输入要移动的行号,光标可到达 |
:w | 将编辑的数据写入硬盘档案中(常用) |
:w file | 将当前编辑的内容写到文件file中 |
:n1,n2 w [filename] | 将 n1 到 n2 的内容储存成 filename 这个档案。 |
:d | 删除当前行 |
:nd | 删除当前开始的n行 |
:n1,n2 co n3 | 将从n1到n2的信息复制到n3 |
:n1,n2 m n3 | 将从n1到n2的信息移动到n3 |
:n1,n2 d | 删除n1到n2的内容 |
:.,$d | 删除当前到结尾的内容 |
:/a/,/b/d | 删除a到b的内容 |
:wd | 保存退出 |
:q! | 不保存退出 |
:q | 退出vim |
:set nu | 显示行号 |
:set nonu | 取消行号 |
三.查看文件内容命令
1.more 文件内容或输出查看工具
#more显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比;
2. 查看文件内容 工具:
#less 对文件或其它输出进行分页显示的工具,
b | 向后翻一页 |
d | 向后翻半页 |
h | 显示帮助界面 |
Q | 退出less命令 |
u | 向前滚动半页 |
y | 向前滚动一行 |
空格键 | 滚动一行 |
回车键 | 滚动一页 |
3.#cat 后面跟要查看的文件,文件内容全部输出到屏幕,
语法:#cat [选项] 文件名
选项有:
-n | 显示每行的编号 |
-s | 显示连续空行为一行 |
-b | 显示每行非空白行编号 |
4.#head 工具,显示文件内容的前几行:
语法:#head -n [行数值] [文件名];
比如显示/etc/profile的前10行内容,应该是:head -n 10 /etc/profile
5.#tail 工具,显示文件内容的最后几行:
语法:#tail -n [行数值] [文件名]
比如显示/etc/profile的最后5行内容,应该是:tail -n 5 /etc/profile
tail -f /var/log/messages
参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止!
6.#grep 工具查询字符串
语法:#grep[关键字] [查找范围]
比如在当前目录下的myfile文件中查找字符串this:grep this myfile
四.管道与重定向命令
1.管道符。
管道在Linux中对应管道符号 # |
语法:#cmd1|cmd2|cmd3|…|cmd(n)
查看/etc下的内容:#ls /etc|less
显示/etc下以a开头的文件:#ls /etc|grep a*
2.重定向。
输出重定向 | > | 若存在则覆盖 |
>> | 若存在则追加 | |
输入重定向 | < | 命令的输入不通过键盘而通过其他方式来完成 |
| 2> | 错误重定向 |
&> | 输出重定向与错误重定向同时出现 |
五.系统挂载与卸载
1.系统挂载
第一步:
插入u盘,输入下面的命令查看是否连接了u盘,这个命令是用来查看硬盘信息的。
#sudo fdisk -l
第二步:
输入#mount命令查看文件系统挂载信息
第三步:
输入下面的命令进行u盘挂载。下面的命令是将u盘挂载到usb文件夹下。
#sudo mount /dev/sdb1 usb
2.卸载文件系统
卸载文件系统,就是将文件系统从挂载点移走。输入下面的命令卸载文件系统。
#sudo umount /dev/sdb1
六.扩充系统硬盘空间
1.装载新硬盘后进入系统使用以下命令确认硬盘已被系统识别并且查看硬盘情况
#fdisk -l
2.硬盘进行分区:#fdisk /dev/sdc
Command (m for help):n (输入m会列出可供选择的子命令)
Select(default p):p
Partition number(1-4,default 1):1
First sector(2048-441943039,default 2048):2048
Last sector,+sectors or +size(K,M,G)(48-441943039,default 41943039):+8G
3.重复第2步创建第二个主分区,
分区结束后输入p查看分区情况,输入w保存退出
4.创建文件系统
在第一个分区上创建xfs类型的文件系统:#mkfs -t xfs /dev/sdb1
在第二个分区上创建xfs类型的文件系统:#mkfs -t xfs /dev/sdb2
5.挂载使用
创建挂载点:
#mkdir /sdb1
#mkdir /sdb2
然后挂载文件系统:
#mount /dev/sdb1 /mnt/sdb1
#mount /dev/sdb2 /mnt/sdb2
完成挂载后
#mount查看挂载的文件最后两行
#df查看磁盘空间占用情况
#cd /mnt/sdb1 切换至新硬盘
七.用户与用户组
1.用户管理文件
用户密码配置文件/etc/shadow 仅root用户可读
构成: 用户名:密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
用户组配置文件/etc/group
构成: 组名:组口令:组标识号
用户组密码配置文件/etc/gshadow 仅root用户可读
构成: 组名:组口令:组的管理员账号:组成员
2.管理用户常用命令
命令 | 说明 | 用法 | 常用命令选项 |
groupadd | 在系统中创建用户组 | #groupadd [选项] 用户组名 | -n 修改组名 |
-g 修改组标识号GID | |||
gpasswd | 维护组中成员 | #grpasswd [选项] 用户名 组名 | -a 添加到用户组 |
-d 将用户从组中删除 | |||
-A 设置用户为管理员 | |||
useradd | 在系统中创建用户 | #useradd [选项] 用户名 | -d 指定用户主目录 |
-g 指定用户组 | |||
-m 创建不存在的主目录 | |||
usermod | 修改用户属性 | #useradd [选项] 用户名 | -l 修改用户名 |
-c 修改用户描述信息 | |||
-d修改用户主目录 | |||
-L 锁定该账号 | |||
-U 解锁 | |||
userdel | 删除用户及相关用户 | #userdel -r 用户名 | -r 删除 |
passwd | 为用户设置密码 | #passwd [选项] 用户名 | -l 锁定用户密码 |
-u 解锁 | |||
-S 查询用户密码状态 | |||
-d 删除用户密码 | |||
id | 查看用户的uid,gid及所归属的用户组 | #id [选项] 用户名 | -g显示用户所组群的id |
-G附加群的id | |||
-u显示用户 |
八.文件属性的读取与修改
1.chmod:改变文件的权限
(1)绝对权限方法
语法:#chmod [选项] 绝对权限值 要修改的文件或目录名称
常用选项:-R 可以递归设置指定目录下的全部文件的权限
(2)相对权限方法
#chmod 修改对象 运算符 用户权限 要修改的文件或目录名
比如对文件work 的组用户添加写权限:#chmod g+w work
(-r可读 -w可写 -x可执行)
2.修改文件所有者的chown的命令
语法:#chown [选项] 新所有者、新用户组 要修改的文件或者目录名称
选项:-R 可以递归设置指定目录下的全部文件的所属关系
3.提升用户权限
(1)用su切换用户
语法:#su - root
(2)用sudo提升权限
语法:#sudo useradd [用户名]
九.启动配置与快捷键设置
1.进入字符界面
通过/etc/system/system/default.target配置文件
#systemctl set-default multi-user.target //设置运行级别为3
#reboot //重启
#vim /user/lib/system/system/ctrl-alt-del.target //修改文件内容
#int q //更新设置
2.系统运行级别之间的切换
命令#ll /etc/system/system/default.target 可以查看default.target文件的属性
通过systemctl命令来指定新的运行级别(将级别5设置成级别3)
#rm – rf /etc/system/system/default.target
#ln – s/lib/systemd/system/runlevel3.target /etc/system/system/default.target
将系统默认运行级别修改成5
#systemctl set-default graphical.target
#reboot
3.关闭 Ctrl+Alt+Del组合键的功能
通过/lib/systemd/system/ctrl-alt-del.target配置完成
#vim /lib/systemd/system/ctrl-alt-del.target
将文件中的内容全部注释掉
#:wq
#init q
使用systemctl命令管理NFS服务
1.操作过程:
#systemctl status nfs.server //查询nfs服务状态
#systemctl start nfs.server //启动nfs服务
#systemctl status nfs.server //查询nfs服务状态
#systemctl is-enabled nfs.server //查询nfs服务自启动状态
#systemctl enabled nfs.server //设置nfs服务自启动
2.systemctl命令
(1)服务的启动与停止
语法:#steamctl {[选项]|[选项]}
选项说明 | |
start | 启动服务 |
stop | 停止服务 |
status | 查看服务运行情况 |
restart | 重启服务 |
reload | 重新加载服务 |
(2.)
使用system命令管理NetworkManager服务
#systemctl start NetworkManager //启动NetworkManager服务
#systemctl status NetworkManager //查询NetworkManager服务状态
#systemctl restart NetworkManager //重新启动NetworkManager服务
#systemctl stop NetworkManager //停止NetworkManager服务
3.设置服务的自启动状态
(1.)使用ntsysv命令设置服务的自启动
语法:#ntsysv [--back] [--level]
选项说明:
back:在互动式界面里显示back按钮而非cancel按钮。
level在指定的运行级别中,决定要启动或关闭的的系统服务。
(2.)使用systemctl命令设置服务自启动
#systemctl is-enabled [服务名称] //查看服务的自启动状态
#systemctl
设置主机名
1.立刻生效但是重启会消失
hostname [新主机名]
hostname //查看当前主机名
2.永久生效
hostnamectl set-hostname [新主机名]
查看ip关于ip的相关命令
1.查看所有网卡信息
ifconfig
ifconfig [网卡] //指定网卡信息
ens33以太网卡
lo是loopback 12.0.0.7
2.网卡信息的配置文件位于 /etc/sysconfig/network-scripts/:目录下