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" // 需要注意的是需要注意系统的时间信息,这个是定时任务的核心逻辑实现的。