Linux——Ubuntu的基础操作

压缩与解压缩

gzip压缩工具

创建文件 a.c和b.c

touch a.c touch b.c

压缩文件a.c和b.c

gzip a.c gzip b.c

解压缩a.c.gz和b.c.gz

gzip -d a.c.gz

对文件夹进行压缩

gzip -r

对文件夹进行解压缩

gzip -rd

注意:这只是对文件夹里所有文件进行压缩,并不进行打包服务

bzip压缩工具

压缩文件

bzip -z a.c 对文件a.c进行压缩

tar打包工具

tar工具参数

-f:使用归档文件

-c:创建新归档(压缩)

-x:从归档中解出文件(解压缩)

-j:用bzip2格式压缩

-z:用gzip格式压缩

-v:打印出命令执行过程

用bzip格式压缩打包文件,操作如下:

解压缩bzip格式的文件,操作如下(-f需要放在最后,因为-f 后面跟着档案名):

用gzip格式压缩打包文件,操作如下:

解压缩gzip格式的文件,操作如下(-f需要放在最后,因为-f 后面跟着档案名):

其他压缩格式:

rar格式

压缩:rar a test.rar test

解压缩:rar x test.rar

zip格式

压缩:zip -rv test.zip test(-rv用递归压缩目录下各文件,v表示显示过程)

解压缩:unzip

用户与用户组

用户操作

添加用户:sudo adduser 用户名

用户查询:finger 用户名

修改用户密码:sudo passwd 用户名

删除用户:sudo deluser 用户名

用户组操作

创建用户组:sudo addgroup 用户组名

显示组内用户名:groups 用户组名

删除用户组:sudo delgroup 用户组名

Ubuntu/Linux文件权限修改

修改文件权限命令

r 4

w 2

x 1

chmod命令

修改文件所属用户

chown命令:sudo chown 所属用户.所属用户组 文件名

Linux连接文件

Linux有两种连接文件:符号连接(软连接)和硬连接,符号链接类似windows下的快捷方式。硬链接 通过文件系统的inode连接来产生新文件名,而不是产生新文件。

inode:记录文件属性,一个文件一个inode。inode相当于文件ID,查找文件的时候要先找到inode,然后才能读出文件的内容。

ln命令

ln命令用于创建连接文件

ln 选项 源文件 目标文件

选项:-s 创建符号链接(软连接)

-f 强制创建连接文件,如果目标存在,那么先删除目标文件,然后再建立连接文件。

硬连接

硬链接是多个文件都指向同一个inode,硬链接知识点:

(1)具有相同inode的多个文件互为硬链接文件,创建硬链接相当于文件实体多了入口。

(2)对于硬链接文件,只有删除了源文件以及对应的所有硬链接文件,文件实体才会被删除。

(3)根据硬链接文件的特点,我们可以通过文件创建硬链接的方式来防止文件被误删除。

(4)不论修改源文件还是连接文件,另一个文件的数据都会被改变。

(5)硬连接不能跨文件系统。

(6)硬连接不能连接到目录。

符号连接(软连接)

符号连接类似windows下的快捷方式,符号连接也叫软连接,软连接用的多,符号连接相当于创建了一个独立的文件,这个文件会让数据读取指向它连接的哪个文件的文件名。软连接的特点:

(1)可以连接到目录。

(2)可以跨文件系统。

(3)删除源文件以后,软连接文件也就打不开了。

(4)符号连接文件通过->来指示具体的连接文件。

创建硬连接文件

ll -i(ll表示ls -l,-i表示显示每个文件的索引编号(inode号))

创建软连接文件

如果没有使用绝对路径创建软连接,就是下面的情况,hello2不可执行。

cp拷贝命令如果你要保持软件连接就要在cp后面加-d,否则就是将源文件进行拷贝。

我们将源文件删除后,所有软连接文件就无效了,这是跟硬连接的区别之一。

vim编辑器

进入编辑器后,默认为命令模式:

a(从所在光标的后面插入)

i(从所在光标的前面插入)

只有点击i进入命令模式才能进行下面操作:

进入命令模式后,点击shift+英文的':',进入底行模式。

然后输入下面命令进行操作

x 保存当前文档并且退出。

q 退出。

w 保存文档。

q! 不保存退出。

命令模式下:

1、dd,删除光标所在行,ndd,删除光标所在行及其下n行。

2、u,撤销,恢复上一步。

3、.,重复前一个操作。

4、yy,重复光标所在行,nyy,复制光标所在向下n行。

5、p和P,p是粘贴到光标下一行,P是粘贴到光标上一行。

相关推荐
The Chosen One98512 分钟前
OS第二章随手记(2.1)
linux·运维·服务器·笔记
别动我齐刘海1 小时前
ROS2 Jazzy + C++ 实战路线——基础学习1
c++·vscode·python·ubuntu·机器学习·自动驾驶·github
xx~t1 小时前
嵌入式——ARM——汇编1
linux·汇编·arm开发·嵌入式硬件·arm
ly76891 小时前
磁盘 I/O 延迟突增:用 iostat、blktrace 与火焰图定位到具体调用栈
java·linux·前端·数据库·iostat·磁盘 i/o·blktrace
程序员-Benothing1 小时前
Linux查找文件命令:find、locate、which、whereis实战
linux·运维·服务器
j7~1 小时前
【Linux网络加餐】(篇七)网络版计算器(中):协议落地、报文分隔与完整链路
linux·c++·网络编程·tcp·报文分割·网络计算器·协议落地
团子股股东峥哥2 小时前
day39-RHEL-访问网络附加存储
linux·运维·服务器
不会写代码的小可爱&&2 小时前
深入 Linux 内核内存管理:slab/slub 分配器原理剖析
linux·硬件架构
浪淘沙jkp2 小时前
全程无人值守完成ubuntu22.04到xubuntu 24.04.5的升级
ubuntu
sean9082 小时前
Ubuntu 26.04 终端显示冗余信息
ubuntu·终端·异常