Linux 常用文件与命令操作入门指南

常见目录

Linux
中一切皆文件

目录 作用
/ 根目录
/boot 启动目录,存放启动相关文件
/dev 设备文件
/etc 配置文件
/home 普通用户的家目录,可供用户操作
/lib 系统库文件存放目录
/mnt 移动设备挂载目录
/media 光盘挂载目录
/misc 磁带机挂载目录
/root 超级用户家目录,可供用户操作
/tmp 临时目录,可供用户操作
/proc 正在运行的内核信息的映射,主要输出进程信息、内存资源信息和磁盘分区信息等
/sys 硬件设备的驱动信息
/var 变量文件存放目录
/bin 普通的基本命令,如 ls、chmod 等,所有用户都可用
/sbin 基本的系统命令,如 shutdown、reboot,用于启动系统,修复系统,只有管理员权限才可以运行
/usr 系统资源 system resource,后期我们安装的软件都安装在这个文件夹下面
/usr/bin 后期安装的一些软件的运行脚本
/usr/sbin 放置一些用户安装的系统管理的必备程序
查看文件
在接触Linux系统时,最常用的命令之一是
ls
,用于查看目录内容。
ls
语法:
ls [选项] [文件或者目录]
ls
有很多选项可用:
-a
显示所有文件,包括隐藏文件(. 开头的文件是隐藏文件)
-l
显示详细信息
-d
查看目录本身的属性而不是子文件
-h
人性化的方式显示文件大小(human)
-i
显示 inode(i 节点,文件的节点),每个节点
文件搜索
locate
在后台数据库中按文件名称搜索,速度比较快
数据保存在
/var/bin/mlocate
后台数据库中,每天更新一次
可以
updatedb
命令立即更新数据库
只能搜索文件名
/etc/updatedb.conf
建立索引的配置文件
PRUNE_BIND_MOUNTS = yes 全部生效,开启搜索限制
PRUNEFS 不搜索文件系统
PRUNENANMES 忽略的文件类型
PRUNEPATHS 忽略的路径
whereis
搜索命令所在的路径以及帮助文档所在的位置
常用选项:
-b
:只查找可执行文件
-m
:只查找帮助文档
which
查看命令的具体路径,尤其是外部安装的命令
无法查看
shell
自带的命令,如
which、cd

环境变量
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
是系统搜索命令的路径
使用
echo $PATH
命令可以看到这个路径,多个路径用
:
隔开
find
文件搜索命令,用法:
find
[查找范围] [搜索范围]

注意:
find
是磁盘搜索,资源消耗大,建议避免大范围搜索

可以使用通配符

  • 匹配任意内容
    ? 匹配任意一个字符
    [] 匹配任意一个中括号内的字符
    参数
    -i
    可以做到区分大小写(Linux 是区分大小写的,Windows 不区分大小写)

根据大小搜索,
k
小写,
M
大写

参数 含义
-8k 小于 8k
8k 等于 8k
+8k 大于 8k
+8M 大于 8M
用法还有很多,这些基本够用了,其他的用到在记录吧

# 普通用法
find /root -name 1.txt
# 通配符用法
find /root -name *.txt
find /root -name [cdef12].txt
# 不区分大小写
find /root -iname a.txt
# 按照大小搜索
find /tmp -size -100k
grep
在当前文件中匹配符合条件的字符串,语法
grep [option] ‘搜寻字符串’ 文件名
可以组合使用一些参数
-i
忽略大小写(ignore)
-v
排除指定字符串,或者说取反操作
与 find 的区别:
find:在系统中搜索符合条件的文件名,如果需要匹配,使用通配符匹配
grep:在文件中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配
grep mlocate install.log
# 还可以使用管道符
cat install.log | grep mlocate
压缩解压缩
zip 格式
压缩文件或者目录,是一种压缩格式

压缩文件
zip 压缩文件名.zip 源文件
压缩目录
zip -r 压缩目录名.zip 源文件
解压
unzip 压缩目录名.zip
# 压缩文件
zip a.txt.zip a.txt
# 压缩文件夹
zip -r book.zip book
# 解压
unzip a.txt.zip
gzip 格式
gzip 为高压,可以把文件压缩的更小,对目录压缩是
压缩目录下的所有文件

命令 示例 含义
gzip 源文件 gzip a.txt 压缩为
.gz
格式的文件,源文件会消失
gzip -c 源文件 > 压缩文件 gzip -c a.txt > a.txt.gz 压缩为
.gz
格式的文件,会保留源文件
gzip -r 目录 gzip -r xx 把目录下的每个子文件都变成压缩包,并且删除源文件,当前目录没有变化
gzip -d 压缩目录名 gzip -d a.txt.gz 解压文件,不保留压缩包
gunzip 压缩文件 gunzip a.txt.gz 解压文件,不保留压缩包

压缩文件

gzip a.txt

压缩文件夹

gzip -r book

解压

gzip -dr book

or,压缩或者解压目录都需要加上 -r 参数

gunzip -r book
bz2 格式
bzip2 是一个压缩能力更强的压缩程序,不过出来的比较晚,所以用的没有
gzip

zip
多,但也不少

注意:
bzip2 不能压缩目录

命令 示例 含义
bzip2 源文件 bzip2 a.txt 压缩为
.bz2
结尾的文件,不保留源文件
bzip2 -k 源文件 bzip2 -k a.txt 压缩为
.bz2
结尾的文件,保留源文件
bzip2 -d 压缩文件名 bzip2 -d a.txt.bz2 解压文件,不保留压缩包
bunzip2 压缩文件名 bunzip2 1.txt.bz2 解压文件,保留压缩包
tar
打包命令,只打包不压缩

  1. 打包
    用法:
    tar -cvf 打包文件名 源文件
    -c 打包
    -v 显示过程
    -f 指定打包后的文件名
    tar -cvf book.tar book
  2. 解打包
    -c
    是打包,
    -x
    是解包,只需要把参数换一下即可

tar -xvf book.tar
tar.gz 压缩格式
zip
可以压缩目录但压缩率不高,
gzip

bzip2
压缩效率高但不支持目录压缩

所有可以先打包为
.tar
格式,在压缩为
.gz
格式

-z
压缩为
.tar.gz
格式
-x
解压缩
.tar.gz
格式

命令 示例 含义
tar -zcvf 压缩包名.tar.gz 源文件 tar -zcvf book.tar.gz book 先打包为
.tar
格式,在压缩为
.gz
格式
tar -zxvf 压缩包名.tar.gz tar -zxvf book.tar.gz 解压
.tar.gz
压缩包
tar -jcvf 压缩包名.tar.bz2 源文件 tar -jcvf book.tar.bz2 book 先打包为
.tar
格式,在压缩为
.bz2
格式
tar -jxvf 压缩包名.tar.bz2 tar -jxvf book.tar.bz2 解压
.tar.bz2
压缩包
关机和重启
shutdown
关机命令,参数后面需要加一个时间
-c
取消前一个关机命令
-h
关机
-r
重启
# 设置一个重启时间
shutdown -r 6:00
# 取消上一个关机命令
shutdown -c
init
切换工作模式

关机
init 0
重启
init 6
logout
logout
退出登录

查看登录用户信息
w
查看登录用户信息

USER:登录用户名
TTY:录的终端
tty1
本地
pts/0
远程终端
FROM:登录的 IP
LOGIN:登录时间
IDLE:用户闲置时间
JCPU:该终端所有进程占用的时间
PCPU:当前进程所占用的时间
WHAT:正在执行的命令
[root@localhost ~]# w
09:51:40 up 7 min, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 – 09:45 6:17 0.01s 0.01s -bash
root pts/0 192.168.1.105 09:45 0.00s 0.02s 0.00s w
who
查看登录用户信息,比
w
显示的少,意思差不多

USER 登录的用户名
TTY 登录的终端
tty1
本地
pts/0
远程终端
LOGIN 登录时间(登录 IP)
[root@localhost ~]# who
root tty1 2020-01-29 09:45
root pts/0 2020-01-29 09:45 (192.168.1.105)
last
last
查看当前登录和过去登录的用户信息

显示字段分别为:用户名、登录终端、登录 IP、登录时间、退出时间(在线时间)
lastlog
查看所有用户的最后一次登录时间

显示字段分别为:用户名、登录终端、登录 IP、最后一次登录时间
磁盘管理
df
查看磁盘分区使用情况

参数 描述
-i 仅显示本地磁盘 inode 信息(默认)
-a 显示所有文件系统的使用情况
-h 以 1024 进制计算最合适的单位显示
-H 以 1000 进制计算最合适的单位显示
-T 显示磁盘类型
-t 显示指定类型文件系统的磁盘分区
-x 不显示指定类型文件系统的磁盘分区
du
统计磁盘上的文件大小

参数 描述
-b 以 byte 为单位统计文件
-k 以 KB 为单位统计文件
-m 以 MB 为单位统计文件
-h 以 1024 为单位统计文件
-H 以 1000 为单位统计文件
-s 统计单个文件
-s 统计单个文件
-c 统计文件总和
-a 显示所有文件
-T 显示磁盘类型
-t 显示指定类型文件系统
-x 不显示指定类型文件系统
进程管理
ps
查看进程信息。
常用选项:
-A 显示所有进程
-a 显示所有终端相关进程
-u 显示用户相关进程
-x 显示后台进程

查看所有进程

ps -A

查看某个用户的进程

ps -u root
top
动态显示进程信息
常用选项:
q 退出
k 终止进程
r 重新设定优先级
h 查看帮助
kill
终止进程
常用选项:
-9 强制终止
-15 正常终止
网络管理
ifconfig
用于显示或配置网络接口

查看网络接口信息

ifconfig

启用网络接口

ifconfig eth0 up

禁用网络接口

ifconfig eth0 down

配置 IP 地址

ifconfig eth0 192.168.1.100
ping
用于测试网络连接

ping IP 地址

ping 192.168.1.1

ping 域名

ping chengyuming.cn
netstat
netstat
用于显示网络连接、路由、协议、接口信息
常用选项:
-a 显示所有连接
-t 显示 TCP 连接
-u 显示 UDP 连接
-n 显示数字地址
nslookup
用于查找域名的 IP 地址

nslookup chengyuming.cn
文件查看和管理
cat
cat
用于连接文件并打印到标准输出设备上
用法:
cat 文件名
,也可以加参数
-n
对输出行进行编号
more
more
类似于
cat
,但可以进行翻页处理,
空格
往后翻页,
b
往前翻页

head
head
用来显示前几行的文字区块

显示 a.txt 中前十行的内容

head -10 a.txt
tail
head
显示前几行,
tail
显示最后几行

tail
有一个常用的参数
-f
用于可以查阅正在改变的文件,经常被用作来查看系统日志
-f
循环读取
-n
行号,显示文件尾部
n
行的内容

查看安装日志

tail -f install.log
vi 编译器
vi
编译器是
Linux
中的编译器,类似于
Windows
中的记事本,
Vim

vi
编译器的升级版,不需要鼠标只用键盘就可以

操作模式
三种操作模式:

刚开始打开的时候不能输入东西,写东西写不进去,此时属于命令模式,命令模式是不能直接编辑的;
进入编辑模式有四种方式,输入
a

i

o

s
即可进入输入模式(append、insert),
ESC
键退出编辑模式
在命令模式下,按下
:
键进入底行模式,在底行模式下,按两次
ESC
键退出底行模式
模式名 含义
命令模式 等待输入的模式
输入模式 编辑模式,用于输入文本
底行模式 可以输入指令、搜索、保存
Linux操作模式
打开文件
输入
vi 文件名
即可打开文件,默认定位到第一行,也可以输入
vi +n 文件名
打开文件定位到第
n

底行模式
命令 含义
:w 把文件写入保存到硬盘中
:q 退出当前 vi 编译器打开的文件
:! 强制保存
:n 下一个
: N 上一个
: 数字 快速定位到当前文件第几行
/xxx 从光标位置开始搜索 xxx 字符串
?xxx 从光标位置开始向前搜索
命令可以组合使用,比如
:q!
就是强制退出 vi 编译器

命令模式

  1. 翻页
    命令 含义
    ctrl + f 向下翻页
    ctrl + b 向上翻页
    ctrl + d 向下翻半页
    ctrl + u 向上翻半页
  2. 插入
    命令 含义
    i 在当前位置插入(insert)
    a 在当前光标右边插入(append)
    A 在当前光标所在行的行末尾插入
    o 在光标所在行下面插入新的一行
    O 在光标所在行上面插入新的一行
    s 删除当前光标位置的内容并插入
  3. 删除
    字符删除

命令 含义
x 删除当前字符
dw 删除一个单词(delete word),包括空格
de 删除一个单词,不包括空格
d$ 从当前位置删到行尾
行删除

命令 含义
dd 删除光标所在行
2dd 删除光标两行

  1. 撤销
    命令 含义
    u 撤销最后一次执行的命令(undo)
    U 恢复该行的原始状态
    ctrl + r 恢复重做命令
  2. 剪切
    命令 含义
    dd 删除光标所在行
    yy 复制所在行
    p 在光标所在行下方粘贴一行
    P 在光标所在行上方粘贴一行
  3. 替换
    命令 含义
    r 替换当前位置字符(replace)
    cw 修改单词(change word)
    c$ 修改当前位置到行尾
  4. 跳转指定行
    命令 含义
    ctrl + g 显示当前编辑文件中当前光标所在的位置信息
    shift + g 跳到最后一行
    数字 + shift + g 跳转到数字对应的行数
  5. 搜索
    命令 含义
    / 输入 / + 字符串 可以在文件中查找包含该字符串的
    n 查找上一个
    shift + n 查找上一个
    ? 逆向查找字符串
    shift + % 可以将光标移动到匹配的括号上
    shift + $ 可以将光标移动到行尾
  6. 修正错误
    命令 含义
    :s/老字符/新字符 把光标所在行的老字符替换成新字符
    :s/老字符/新字符/g 把所在行的所有老字符替换成新字符
    结束语
    希望本文对您了解和使用 Linux 系统有所帮助。文章难免有不足之处,欢迎您指正和补充。在学习和使用 Linux 的过程中,不断实践和探索是关键。感谢您的阅读,祝您在 Linux 的世界中取得进步!

声明:来自ENJOY前端,仅代表创作者观点。链接:https://eyangzhen.com/5911.html

ENJOY前端的头像ENJOY前端

相关推荐

添加微信
添加微信
Ai学习群
返回顶部