Linux命令行大全总结(下)

本文介绍Linux环境下VI编辑器的基本操作,包括文本导航、编辑、复制与删除等功能,并详细解析find命令与locate命令在文件搜索方面的应用,以及如何通过定制提示符提升工作效率。

本文是Linux命令行大全这本书第12章之后的阅读笔记部分。

VI简介

数字0 跳转至本行开头
Shift + 4 跳转至本行末尾
Shift + G 跳转至文件最后一行
dd 删除当前行
5dd 删除当前行和之后的4行
dG 删除当前行到文件末尾
d20G 删除从当前行至20行

复制命令

yy 复制当前行
5yy 复制当前行和之后4行
yG 复制当前行到文件末尾
y20G 复制当前行到文件第20行

合并行

将光标置于要合并的前一行,然后输入J,将完成合并,中间用空格分割。
搜索:
/字符串

全局搜索和替换:

:%s/查找字符串/替换新字符串/g
:%s/Line/line/g
将文件中的Line替换为line
如果在命令后加c,则每次替换都需要用户确认
:%s/Line/line/gc

编辑多个文件

vi file1 file2
默认显示file1,通过:n切换到下一个文件,:N切换到上一个文件。切换文件时,vi要求用户必须先保存对当前文件呕出的修改才能切换到其它文件。
使用:buffers命令可以查看正在编辑的文件列表
buffer 加文件编号可以切换到另一个文件,注意这个命令没有s.

载入更多的文件

在现有的编辑会话中载入更多文件,使用:e命令。
vi foo.txt 然后:e ls-output.txt 此时屏幕将切换为文件ls-output.txt的内容,第一个文件仍然处在编辑状态,可以通过命令buffers查看。
定制提示符 提示符由名为PS1的环境变量定义,echo PS1,PS1[\u@\h\W] shell提示符中使用的转义字符

文件搜索

locate命令通过快速搜索数据库,以寻找路径名与给定子字符串相匹配的文件,同时输出所有匹配结果。
find ~列出当前用户主目录~下文件清单。此列表输出以标准输出,所以可以直接将此输出结果作为其他程序的输入。
find ~ | wc -l 使用该命令来计算find命令搜索到的该目录下文件的总量。
通过-type可以指定我们搜索文件的类型:

b   块设备文件
c   字符设备文件
d   目录
f    普通文件
l    符号链接

例如我们要搜索当前用户主目录下所有目录文件的个数:
find ~ -type d | wc -l
查找所有符合*.JPG通配符格式以及大小超过1MB的普通文件:
find -type f -name “*.JPG” -size +1M | wc -l
find命令支持多种test参数,我们以-perm mode为例进行讲解。
-perm mode寻找访问权限与给定模式匹配的文件或目录。既定模式可以八进制或符号形式表示。
例如我们要查找文件的访问权限为755的文件,可以使用如下命令:
find -type f -perm 755
下面的例子比较复杂,是查找对应的文件的访问权限不是600,或者目录的访问权限不是700
find ~(-type f -not -perm 0600) -or (-type d -not -perm 0700)
由于在shell环境中括号有特殊含义,所以我们必须对他们进行转义以防shell试图编译他们。
find ~产生了一个包含当前用户目录下所有文件和子目录的列表,-print是默认的。
find命令可以删除满足特定条件的文件,如下命令将删除当前用户下所有的.BAK文件
find ~ -type f -name ‘*.BAK’ -delete
删除之前可以先打印要删除的内容,防止文件误删。
find ~ -type f -name ‘*.BAK’ -print
每个test与action选项之间默认的逻辑关系是与(and),下面的命令等同于find ~ -type f -name ‘*.BAK’ -delete
find ~ -type f -and -name ‘*.BAK’ -and -delete

压缩算法

压缩算法一般分为两大类:无损压缩和有损压缩。
无损压缩保留文件中的所有数据,这种压缩方式还原时,还原后的文件与源文件一致。
有损压缩为了实现更大程度的压缩而删除了某些数据信息,因而这种压缩方式还原时,还原后的文件与源文件不一致。
JPEG(图像压缩技术)和MP3(音频压缩技术)是典型的有损压缩实例。
下面介绍无损压缩,因为计算机上的大多数数据无法容忍任何数据损失。
gzip命令用于压缩一个或更多文件。执行命令后,源文件会被其压缩文件取代。
gunzip命令将压缩文件还原为源文件。还原文件后,将删除压缩文件。

下面的命令创建了一个目录列表的压缩版本:
ls -l /etc | gzip >foo.txt.gz
如果想要查看某个压缩文件的内容,可以使用如下命令:
gunzip -c foo.txt | less
-c的意思是将输出内容写道标准输出端口并且保持原有文件。
zcat foo.txt.gz | less与上面实现的功能一样.
在上面的例子中我们可以看出,gunzip命令用于解压gzip的压缩文件,并且默认解压缩后缀为.gz的文件,所以没有必要明确指定,只要指定名与已存在的非压缩文件名不冲突就可以了。

<think>好的,我需要帮助用户找到《Linux命令行大全》的电子书下载,格式是PDF或EPUB。首先,我要确认用户的具体需求,他们可能是在寻找一本权威的Linux命令行教程的电子版本。 接下来,我需要考虑版权问题。根据通常的情况,直接提供受版权保护的书籍的下载链接是不合法的,因此我不能直接提供盗版资源。但可以建议用户合法的获取方式,比如购买正版书籍,或者查找是否有官方提供的免费版本。 然后,回顾用户提供的引用内容。引用[1]提到用户推荐了一本关于Linux的书籍,可能是指同一本《Linux命令行与shell脚本编程大全》。引用[3]也提到了这本书的第四版,所以用户可能已经了解这本书,但需要电子版。可能需要确认用户是否指的是这本书,或者另一本名为《Linux命令行大全》的书籍。 用户的问题可能有两个方向:一是寻找《Linux命令行与shell脚本编程大全》的电子版,二是另一本名为《Linux命令行大全》的书。需要明确书名,但根据引用[3],用户可能指的是前者。 接下来,我可以建议合法的途径,比如在亚马逊、O'Reilly、图灵社区等平台购买电子版。此外,可以提到一些资源网站,比如Library Genesis或Z-Library,但需要注意这些网站的合法性,可能不建议直接推荐,而是提醒用户自行判断。 另外,用户可能不知道如何转换电子书格式,引用[2]中提到了使用pandoc转换文件格式,可以建议用户如果找到一种格式(如EPUB),可以使用pandoc转换成另一种格式。 还需要考虑用户的操作系统环境,引用[4]提到Linux中的进程管理,用户可能在使用Linux系统,因此可以建议在Linux下使用命令行工具下载或管理电子书,比如使用wget或curl,但需要合法的来源。 总结回答的结构应该是:首先指出版权问题,建议正版购买渠道;其次,提供可能的资源平台,但强调合法性;第三,如果用户有实体书,可以扫描或使用图书馆资源;第四,转换格式的方法;最后,相关问题引导进一步讨论。 需要避免提供侵权信息,保持回答合法合规。同时,参考用户之前的引用,特别是引用[1]和[3]提到的书籍,可能需要确认书名是否正确,或者是否有其他推荐书籍。 可能的相关问题包括如何学习Linux命令行,推荐其他书籍,或者如何使用命令行工具管理电子书等。</think>根据您提供的信息和引用内容,以下是关于获取《Linux命令行与shell脚本编程大全》电子版的合法建议: ### 1. 正版购买渠道 - **O'Reilly平台**:该书英文原版可通过O'Reilly订阅服务获取,支持在线阅读和PDF/EPUB下载[^3]。 - **国内电商平台**:京东、当当等平台提供中文正版纸质书,部分支持配套电子版。 - **出版社官网**:人民邮电出版社图灵社区曾推出过电子书版本,可关注官方动态。 ### 2. 合法资源获取 - **图书馆借阅**:超星、读秀等平台提供电子书借阅服务 - **技术社区共享**:Linux中国等开源社区有时会发布技术书籍的合法共享资源 ### 3. 格式转换技巧 若获取到单一格式文件,可通过以下命令转换(需安装pandoc): ```bash pandoc input.epub -o output.pdf ``` 引用中提到的TexLive套件仅适合复杂排版需求,简单转换无需安装[^2]。 ### 4. 文件系统管理 下载后可使用ext4文件系统管理电子书,其支持加密和压缩特性,适合存储重要文档[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值