文件压缩,解压,归档,邮件,定时任务

1.dd:复制和转换文件

常见使用用法:

dd [OPERAND]...

dd OPTION

常用的选项信息如下:

--version:显示版本信息

--help:显示帮助信息

常见的操作符信息如下:

bs=bytes:一次性读和写bytes字节

cbs=bytes:一次性转换bytes字节

conv=CONVS:根据指定的转换标志转换文件,常见的转换标志包括ascii,ebcdic.....

count=N:仅复制N个输入快,执行的次数

ibs=bytes:一次性读取bytes字节

if=file:  从文件读取内容

iflag=flags:根据指定的分隔符列表读取文件

obs=bytes:一次性写出多少字节

of=file:写入到文件

oflag=flsgs:根据分隔符列表写入文件

seek=N :跳过N个字节开始写出

ship=N:跳过N个字节开始读取

下面是使用示例信息:

[root@mrzhang tmp]# dd ibs=50 obs=1000 if=/etc/fstab iflag=sync of=good.text oflag=append

[root@mrzhang tmp]# dd if=/dev/zero of=good.text bs=10M count=1  // 一次性复制内容,每次读写10M

备注:bb命令主要的目的是直接执行文件复制操作和格式转换的,但是dd使用的复制更加的接近底层的,复制效率更高的。

2.文件解压缩操作

gzip:解压缩文件,使用用法如下:

gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ... ]

-d:解压文件

-f:强制压缩和解压文件

-l:列出压缩文件的相关的信息,这些信息包括压缩后的大小,压缩前的大小,压缩比例,压缩前的名称

-n:默认压缩的时候不保存原始文件个时间戳信息,默认选项,指的是使用源文件的名称和时间戳信息

-N:保存原始文件和时间戳信息,指的是使用源文件的名称信息等,可以实现改变名称信息等。

-r:拷贝目录并将目录下面的文件进行压缩

-S:使用指定的压缩文件的后缀,不使用默认的gz等

-t:检测压缩文件的完整性,格式如果不是gz的话会报错的

-v:显示压缩过程信息

下面是使用示例信息

[root@mrzhang tmp]# gzip -N -v good    

good: 99.9% -- replaced with good.gz

[root@mrzhang tmp]# gzip good    // 压缩文件

[root@mrzhang tmp]# gzip -d good.gz    // 解压文件

[root@mrzhang tmp]# gzip -v fstab mtab

fstab: 43.8% -- replaced with fstab.gz

mtab: 73.6% -- replaced with mtab.gz

gzip压缩多个文件的时候,会对于每一个文件都会进行文件的压缩的。形成单独的压缩文件的。

gunzip:解压,测试列举zip压缩文件,使用用法信息如下:

gunzip [ -acfhlLnNrtvV ] [-S suffix] [ name ... ]

-l:列举文件

-t:测试

-v:展示解压信息

-d:解压文件

[root@mrzhang tmp]# gunzip -l fstab.gz mtab.gz

      compressed        uncompressed  ratio uncompressed_name

                290                473  43.8% fstab

                609                2217  73.6% mtab

                899                2690  67.4% (totals)

[root@mrzhang tmp]# gunzip -d fstab.gz mtab.gz     // -d选项,解压文件

bzip2:压缩文件,使用用法信息如下:

bzip2 [ -cdfkqstvzVL123456789 ] [ filenames ... ]

-d:解压文件

-s:较小文件使用空间

[root@mrzhang tmp]# bzip2 fstab good mtab    // 会位每一个文件创建单独的压缩文件格式信息的

bunzip2:解压文件,常见的使用用法如下:

bunzip2 [ -fkvsVL ] [ filenames ... ]

-d:解压文件

-t:测试而不执行真正的操作

-v:显示过程信息

-s:减小内存使用比例信息

[root@mrzhang tmp]# bunzip2 -s fstab.bz2 good.bz2 mtab.bz2

xz:压缩或者解压xz以及lzma格式的文件,使用方式如下:

xz [option...] [file...]

-z:压缩文件

-d:解压文件

-l:列举压缩文件

-t:测试操作,不会真正的执行操作

-v:显示过程信息

[root@mrzhang tmp]# xz -z fstab mtab good    // 压缩文件会形成多个文件的,每一个文件对应着一个压缩文件的。

4 -rw-r--r--. 1 root root 344 Dec 26 22:25 fstab.xz

4 -rw-r--r--. 1 root root 1660 Dec 26 20:41 good.xz

4 -r--r--r--. 1 root root  692 Dec 26 22:25 mtab.xz

unxz:解压文件,解压xz或者是lzma格式文件

[root@mrzhang tmp]# unxz -l fstab.xz good.xz mtab.xz

Strms  Blocks  Compressed Uncompressed  Ratio  Check  Filename

    1      1        344 B        473 B  0.727  CRC64  fstab.xz

    1      1      1,660 B    10.0 MiB  0.000  CRC64  good.xz

    1      1        692 B      2,217 B  0.312  CRC64  mtab.xz

-------------------------------------------------------------------------------

    3      3      2,696 B    10.0 MiB  0.000  CRC64  3 files

[root@mrzhang tmp]# unxz -d fstab.xz good.xz mtab.xz   // 解压文件信息

zip:压缩,解压文件以及归档文件,使用用法如下:

zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [--longoption ...] [-b path] [-n suffixes] [-t date] [-tt date] [zipfile [file ...]] [-xi list]

常见的使用方式如下:

zip -r foo.zip foo   // 其中foo可以是目录,foo.zip对应的是压缩后的文档的格式信息

其他的就不再赘述了,zip使用的很少的。

上面的操作都是简单的压缩单个文件的,实际过程中的使用都是结合压缩和归档共同操作的,需要重点关注和理解实现。

3.tar:归档和解压缩操作,使用用法如下:

tar [OPTION...] [FILE]...

常见的使用用法如下:

tar -cf archive.tar foo bar    // 将foo以及bar文档归档到archive

tar -tvf archive.tar   // 列出归档文件archive.tar中的详情信息

tar -xf archive.tar  // 展开archive.tar归档文件中的所有的文件

[root@mrzhang tmp]# tar -tvf hi.tar

-rw-r--r-- root/root      473 2018-12-26 22:25 fstab

-rw-r--r-- root/root  10485760 2018-12-26 20:41 good

-r--r--r-- root/root      2217 2018-12-26 22:25 mtab

1)归档的时候可以指定压缩选项的,使得在归档的时候可以执行压缩操作的

-j:指定压缩格式位bzip2

-J:指定压缩格式为xz

--lzip:指定压缩格式为zip

--lzma:指定压缩格式为lzma

-z:指定压缩格式为gzip,

-Z:压缩和解压操作

2)对应的还有对应的重写选项,进行归档文件的重写的操作管理

下面是使用示例

[root@mrzhang tmp]# tar -cf fstab.bz2 good.bz2 meninfo.xz mtab.zip

[root@mrzhang tmp]# tar -tvf test.tar

-rw-r--r-- root/root    10240 2018-12-27 01:47 fstab.bz2

-rw-r--r-- root/root        49 2018-12-26 20:41 good.bz2

-r--r--r-- root/root      528 2018-12-27 01:26 meninfo.xz

-rw-r--r-- root/root      744 2018-12-27 01:46 mtab.zip

下面显示的归档和压缩结合在一起的操作:

[root@mrzhang tmp]# tar -cf test.tar fstab mtab readme     // 首先进行归档操作

[root@mrzhang tmp]# gzip test.tar   // 对归档文件进行压缩,节省存储空间信息

[root@mrzhang tmp]# tar -xJf test.tar.xz    // 文件解压操作

[root@mrzhang tmp]# tar -cjf test.tar.gz fstab mtab   // 一次性的压缩和归档操作

4 -rw-r--r--. 1 root root 1037 Dec 27 02:32 test.tar.gz   // 显示的结果

4.定时任务:at, batch, atq, atrm

at,batch对应的是一次性的定时任务

atq:列出等待执行的任务列表信息

atrm:根据任务的id号删除任务

batch:系统决定执行时间的

at常见的使用方式如下:

at [-V] [-q queue] [-f file] [-mMlv] timespec...

 at [-V] [-q queue] [-f file] [-mMkv] [-t time]

 at -c job [job...]

-q:使用指定的任务队列,Linux的定时任务对应的是存在不同的队列信息的

-m:发送邮件给用户

-M:从不发送邮件给用户

-f:从文件中读取信息而不是从标准输入读取数据

-t:指定运行任务的时间,对应的格式信息[[CC]YY]MMDDhhmm[.ss]

下面是使用示例信息:

1)控制台输入终止信息提示操作:ctrl+D

at常见的使用情景时在指定的时间执行一次定时任务的,下面主要围绕着时刻的展示进行操作管理实现

示例如下:

[root@mrzhang tmp]# at 16:34 2018-12-27   

[root@mrzhang tmp]# at -f a.txt 16:40   // 使用文件进行定时任务操作的。

推荐使用文件进行操作,Linux的哲学思想就是尽量避免和用户交互的。

需要注意的时使用定时任务执行操作的话,需要注意的时需要确定系统的时间时对的,否则的话可能存在问题的。

batch的操作和at相似,但是batch的具体的执行官需要系统进行判断的。

crontab:定时任务,针对的可以往复执行操作的。

使用用法如下:

crontab [-u user] file

crontab [-u user] [-l | -r | -e] [-i] [-s]

crontab -n [ hostname ]

crontab -c

常见的选项的如下:

-r:移除当前的定时任务

-e:编辑当前的定时任务

-i:交互式确认是否修改定时任务

-u:指定谁的定时任务被修改

-l:列出当前的定时任务列表

-u:针对指定用户执行定时任务

定时任务推荐使用文件进行操作的,具体的定时任务的配置文件: /etc/crontab,只需要将需要执行的定时任务加入到配置文件中即可实现的。

定时任务的核心时时间的定义和操作,需要进行关注的

直接使用 crontab -e 及逆行编辑,根据。/etc/crontab文件的相关的说明增加定时任务的。

11 17 * * * /bin/echo "howdy"     // 需要注意的是需要注意系统的时间信息,这个是定时任务的核心逻辑实现的。

你可能感兴趣的:(文件压缩,解压,归档,邮件,定时任务)