Linux命令入门教程(三):文件基础篇
3.1 文件基础介绍
Linux系统的一个重要思想:一切皆文件。
在Linux中,一个普通文件如.txt文本是一个文件,一个压缩包是一个文件,一个设备也是一个文件。
Linux中文件的后缀名并不重要,你可以创建一个无后缀名的文件,或给它一个不相符的后缀名,但是并不影响其正常工作。
3.2 文件操作命令
3.2.1 创建空文件touch
touch - change file timestamps,修改文件的时间戳,当文件不存在时,系统为创建此文件,为了方便,通常也用来创建一个文件。
语法:
$ touch [OPTION] FILE
常用用法:
命令 |
说明 |
touch test_file.txt |
创建test_file.txt文件 |
touch 1.txt 2.txt |
创建2个文件 |
3.2.2 文件查看cat/less/more/tail
cat/less/more/head/tail等命令都是用来查看文件内容的。
命令 |
说明 |
cat aaa.txt |
显示aaa.txt文件内容 |
less aaa.txt |
动态浏览文件,可向前向后随意翻阅。 |
more aaa.txt |
动态浏览文件,显示当前位置百分比,只能向后滚动 |
head aaa.txt |
显示文件开头若干行,默认10行,可通过参数指定要显示的行数,例如显示20行:head -n 20 aaa.txt |
tail aaa.txt |
显示文件末尾若干行,默认10行,可通过参数指定要显示的行数,例如显示20行:tail -n 20 aaa.txt |
3.3 复制/移动/删除
复制/移动/删除是几个较常用的命令,操作对象为目录或文件。
3.3.1 复制cp
cp - copy files and directories,复制文件或目录。
语法:
$ cp [OPTION] SOURCE DEST
SOURCE: 源文件或目录;
DEST: 目标文件或目录;
[OPTION]: 常用选项有-arf
-r: 在复制目录时,将复制该目录下所有的子目录和文件;
-f: 强行复制,直接覆盖已存在的同名文件,不给出提示;
-i: 与-f相反,覆盖同名文件时给出提示,回复y/n确认是否覆盖;
-a: 通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。
常用用法:
命令 |
说明 |
cp aaa.txt test_dir/ |
将文件aaa.txt复制到test_dir目录下 |
cp -r dir0/ test_dir/ |
将目录dir0复制到test_dir目录下,复制目录要用-r选项 |
cp -rf dir0/* test_dir/ |
将dir0下的所有文件复制到test_dir目录下,强制覆盖 |
cp -ri dir0/ test_dir/ |
将目录dir0复制到test_dir目录下,覆盖前提示。 |
cp aaa.txt new.txt |
将文件aaa.txt复制为一个新文件new.txt(不存在,新创建) |
cp dir0/ new_dir -r |
将目录dir0复制为一个新目录new_dir(不存在,新创建) |
注:若目标目录不存在,相当于将源目录复制一份并命名为目标目录;若目标目录存在,相当于将源目录复制到目标目录下。
3.3.2 移动mv
mv - move (rename) files,将文件/目录移动到某位置,或将文件/目录重命名。
语法:
$ mv [OPTION] SOURCE DEST
SOURCE: 源文件或目录;
DEST: 目标文件或目录;
[OPTION]: 该命令选项不常用,多直接不带选项使用。
常用用法:
命令 |
说明 |
mv aaa.txt dir0/ |
将文件aaa.txt移动到dir0目录下 |
mv aaa.txt new_aaa.txt |
将文件aaa.txt重命名为new_aaa.txt |
mv dir0/ test_dir/ |
将目录dir0移动test_dir目录下 |
mv dir0/ new_dir |
将目录dir0重命名为new_dir(目录不存在) |
注:若目标目录不存在,相当于将源目录重命名为目标目录;若目标目录存在,相当于将源目录移到目标目录下。
3.3.3 删除rm
rm - remove files or directories,删除文件或目录。
语法:
$ rm [OPTION] [FILE]
FILE: 要删除的文件或目录
OPTION: 常用的选项有:-rf
-f: 强制删除,不询问;
-r: 用于删除目录,递归删除子目录及文件。
常用用法:
命令 |
说明 |
rm aaa.txt |
删除文件aaa.txt |
rm -r dir0/ |
删除目录dir0 |
rm -rf dir0/* |
强制目录dir0下的所有文件,dir0将变为一个空目录 |
注:rm -rf 删除系统相关文件是个危险操作,请在确保安全的情况下使用
温馨提示:文件编辑请看vi/vim编辑器章节(鉴于命令的复杂度,故将此章节延后)。
3.4 文件压缩与归档
首先,要弄清两个概念:打包(归档)和压缩。
打包是指将一大堆文件或目录什么的变成一个总的文件,
压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
3.4.1 gzip压缩
gzip是压缩命令。
gzip - compress or expand files,压缩和解压文件,文件经压缩后会变成后缀为”.gz”的文件。
语法:
$ gzip [OPTION] FILE
FILE: 要压缩的文件;
OPTION: 常用的选项有:-dvl
-d: 解压;
-v: 显示指令执行过程
-l: 列出压缩文件的相关信息
常用用法:
命令 |
说明 |
gzip aaa.txt |
压缩aaa.txt文件,压缩后为aaa.txt.gz |
gzip -dv aaa.txt.gz |
解压aaa.txt.gz,解压出来恢复为aaa.txt |
gzip -l aaa.txt.gz |
列出aaa.txt.gz压缩文件的压缩信息 |
注:gzip是linux中的一种压缩方式,主要压缩方式有以下:
gzip:压缩速度快,应用广泛的压缩方式;
bzip: 压缩形成的文件小,但是可用性不如gzip;
xz: 是新的压缩方式,可以自动提供较佳的压缩率;
3.4.2 tar归档压缩
tar - an archiving utility,一个归档/备份工具。
tar本身是打包/备份/归档的命令,但它可以调用压缩命令,可以实现将一堆文件打包后再进行压缩。tar可以调用gzip方法。
语法:
归档备份:
$ tar [OPTION] ARCHIVE FILE
还原:
$ tar [OPTION] ARCHIVE [OPTION] PATH
ARCHIVE: 归档文件
FILE: 要归档的文件
PATH: 指定还原的路径
OPTION: 常用的选项有:-cvfzxC
-c: 创建新的备份文件;
-x: 从备份文件中还原文件,解压;
-v: 显示命令执行过程;
-f: 指定备份文件;
-C: 指定目标文件;
-z: 通过gzip指令处理备份文件;
-j: 通过bzip2指令处理备份文件;
tar归档备份文件(.tar格式文件):
命令 |
说明 |
tar -cvf dir0.tar ./dir0 |
将dir0目录归档备份为新的文件dir0.tar |
tar -xvf dir0.tar |
将dir0.tar解包还原到当前目录 |
tar -xvf dir0.tar -C test_dir/ |
将dir0.tar解包还原到指定目录test_dir中 |
与gzip结合先打包归档再压缩(.tar.gz格式文件):
命令 |
说明 |
tar -zcvf dir0.tar.gz dir0/ |
将dir0目录归档并压缩为新的文件dir0.tar.gz |
tar -zxvf dir0.tar.gz |
将dir0.tar.gz解压解包还原到当前目录 |
tar -zxvf dir0.tar.gz -C /home/zengzr/ |
将dir0.tar.gz解压解包还原到/home/zengzr/ |
与bzip2先打包归档再压缩(.tar.bz2格式文件):
命令 |
说明 |
tar -jcvf dir0.tar.bz2 dir0/ |
将dir0目录归档并压缩为新的文件dir0.tar.bz2 |
tar -jxvf dir0.tar.bz2 |
将dir0.tar.gz解压解包还原到当前目录 |
tar -jxvf dir0.tar.bz2 -C test_dir/ |
将dir0.tar解压解包还原到目录test_dir中 |
注:
当tar命令不加选项-z或-j时,归档备份是不会压缩的,因此产生的备份文件较大;
当加上选项-z或-j时,会先归档再压缩成gzip或bzip格式,因此产生的备份文件较小。
Linux命令入门教程(三):文件基础篇相关推荐
- Linux命令入门教程(一):命令简介与初识
本文档将对Linux的基础知识.常用的操作命令进行介绍,希望能帮忙你入门Linux. 推荐以下教程参考: Linux教程:Linux 教程 | 菜鸟教程 Linux命令大全:Linux 命令大全 | ...
- Linux命令入门教程(二):目录基础篇
2.1 目录及路径基础介绍 在linux中,目录(directory)通常也可表述为路径,一般不叫文件夹. 文件系统中,目录树的起点为根目录,任何路径都能以根目录来寻址. 以"/" ...
- Qt入门教程【文件操作篇】QFile文件处理对象
QFile描述 QFile 是一种用于读写文本和二进制文件和资源的 I/O 设备. QFile 可以单独使用,或者更方便地与 QTextStream 或 QDataStream 一起使用. 文件名通常 ...
- Linux Capabilities 入门教程--基础实战篇
该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 Linux Capabilities 入门教程:进阶实战篇 ...
- Linux Capabilities 入门教程--进阶实战篇
该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 Linux Capabilities 入门教程:进阶实战篇 ...
- Linux Capabilities 入门教程--概念篇
该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 Linux Capabilities 入门教程:进阶实战篇 ...
- Linux pwn入门教程——CTF比赛
Linux pwn入门教程(1)--栈溢出基础 from:https://zhuanlan.zhihu.com/p/38985585 0x00 函数的进入与返回 要想理解栈溢出,首先必须理解在汇编层面 ...
- 【MATLAB Image Processing Toolbox 入门教程三】快速入门之“在多光谱图像中寻找植被”
[MATLAB Image Processing Toolbox 入门教程三] 本篇摘要 一.从多光谱图像文件导入彩色红外通道 二.构建近红外光谱散射图 三.计算植被系数并显示其定位 四.综合实例部分 ...
- linux间服务器间文件传输,Linux命令scp服务器间文件传输教程
scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 .那么你知道Linux命令scp服务器间文件传输教程么?接下来是 ...
最新文章
- 变量 常量 Python变量内存管理 赋值方式 注释
- CSS-滤镜 -webkit-filter
- hdoj--5621--KK's Point(简单数学)
- docker 配置桥接网络
- excel不显示0_Excel2007:Excel表格中完整输入身份证号码的几种方法
- 0xbc指令 st75256_HGO2401603初始化代码ST75256驱动程序
- [2022年大学生创新创业训练计划项目立项申报]
- 怎么把vivo强行刷入鸿蒙系统,vivo手机如何强制刷机
- 2008年9月23号,星期二,晴。博观而约取,厚积而薄发。(苏轼)
- wincc远程服务器配置,WINCC-OPC服务器配置
- 微信聊天记录生成词云图
- java 日期加7天_java – 如何检查日期是否超过七天
- 用JAVA实现魔法优惠券
- 德国精品软件 小红伞杀毒软件 AntiVir
- 农用地转为建设用地审批(农转用审批)
- 创建springboot多模块项目(下)
- 俄罗斯立法机关将于下周开始审核加密货币法律草案
- VS2010完美卸载
- 作业要求20190919-2 功能测试
- 使用HttpClient进行HTTP BASIC验证