Linux基础命令---cpio

cpio

从归档中复制文件,或者复制文件到归档中。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

Cpio命令有三种工作模式:

1)copy-out mode,cpio指令将文件复制到归档。它读取标准输入上的文件名列表(每行一个),将归档包写到标准输出。

2)copy-in mode,cpio指令从归档中复制文件,从标准输入读取归档包。

3)cpio-pass mode,从目录树复制文件到另一个目录,它从标准输入中读取要复制的文件列表。

1、语法

     cpio -o namelist  > archive 

     cpio  -i  <  archive

     cpio  -p  dst-dir < namelist

 

2、选项列表


选项


说明


-? | --help


帮助信息


--version


显示命令版本信息


主操作模式


-i | --extract


从包中提取文件,copy-in模式


-o | --create


创建包,copy-out模式


-p | --pass-through


运行copy-pass模式


-t | --list


打印输入内容列表


-l | --list


对于每一个压缩的文件,列出压缩文件大小、解压大小、压缩比列、压缩前的文件名字


应用在所有模式的选项


-B


设置IO块的大小为5120字节


-c


使用老式跨平台的归档格式


-f


仅拷贝不匹配任意给定模式的文件


-F


用文件名代替标准输入和输出


-n | --numeric-uid-gid


在内容列表的详细信息中显示uid和gid


--quite


不打印以拷贝的块数


-v | --verbose


详细信息


-V | -dot


每处理一个文件就打印一个“.”


应用于copy-in的徐昂想


-b | --swap


-r | --rename


交互式重命名


-E


把指定文件的内容当做匹配字符串


应用于copy-out的选项


-A | --append


追加到文档的结尾


-O


使用包文件名,而不是标准输入输出


应用于copy-pass的选项


-l | --link


在执行时尽可能创建链接,而不是复制文件


应用于copy-in和copy-out


--absolute-filenames


文件名不出去文件系统前缀


--no-absolute-filenames


当前目录创建所有文件


应用于copy-out和copy-pass


-0 | --null


输入文件名以null字符结尾


-a | --reset-access-time


文件读取后,还原文件的访问时间


-I


从文件读入


-R | --owner


设置所有文件的组合用户信息


应用于copy-in和copy-pass


-d


必要时创建目录


-m


创建文件是,保留文件修改时间属性


-u


无条件覆盖

 

3、例子代码


% ls | cpio -ov > directory.cpio

归档当前目录下的内容,并且制定输出文件

% find . -print -depth | cpio -ov > tree.cpio

存档整个目录树,find命令可以将文件列表提供给cpio。这将获取当前目录中的所有文件,以及下面的目录,并将它们放置在归档目录tree.cpio

% cpio -iv < directory.cpio

这将检索存档在文件directory.cpio中的文件,并将它们放在当前目录中

% cpio -idv < tree.cpio

这将获取存档tree.cpio的内容,并将其解压缩到当前目录。

% find . -depth -print0 | cpio --null -pvd new-dir

将当前目录的文件和子目录复制到一个名为new-dir的新目录中

 

4、实例

1)将当前目录归档


[[email protected] weijie]# ls | cpio -o > mybak           //ls的输出定向到cpio,然后归档

[[email protected] weijie]# ls

11.c  1.c  2.c 3.c  4.c  5.c 6.c  mybak

2)从归档中提取文件


[[email protected] weijie]# cpio -i < mybak                   //从归档中提取

cpio: 未创建 11.c:已有更新或同样新的版本存在

cpio: 未创建 5.c:已有更新或同样新的版本存在

cpio: 未创建 6.c:已有更新或同样新的版本存在

cpio: 未创建 mybak:已有更新或同样新的版本存在

[[email protected] weijie]# ls

11.c  1.c  2.c  3.c  4.c  5.c  6.c  mybak

3)拷贝文件


[[email protected] weijie]# cat list.c 

1.c

2.c

3.c

[[email protected] weijie]# cpio -p bak/ < list.c          //list.c中的内容当做文件列表,然后拷贝到bak目录

cpio: 忽略空行

[[email protected] weijie]# ls bak/

1.c  2.c  3.c

原文地址:https://www.cnblogs.com/wj78080458/p/10062098.html

时间: 2024-11-05 12:31:35

Linux基础命令---cpio的相关文章

Linux基础命令(之一)详解

Linux基础命令(之一)详解 学习linux的朋友都知道,系统大多数操作都是命令行的操作方式,当然如今也有图形化界面的操作方式,但是多数情况下仍然使用命令的操作模式,所以命令的作用与用法是成为学好.学会Linux系统的必备前提,也是重点之一,所以今天来聊一聊一些基础命令的用法与其作用. 1.系统关机或重启命令(小白也必须要会的) shutdown (win 系统也有) 常用参数:shutdown -h (halt) 直接关机(关闭电源) shutdown -h  now[+10]    现在关

linux基础命令——tree

Linux基础命令--tree 编辑文章 -d :只显示目录,不显示其目录下的子文件 -L level:显示第几级 图片描述 显示以rc开头的 备份: 创建多级目录: -v:可以看过程

第九天:Linux基础命令(二)与 C编译过程

一:Linux基础命令:   1.find 命令 查找文件 如 find / -name hello    查找根目录下已hello命名的文件.   2.grep命令 字符串匹配 如 grep "lucy" * -R 递归查找文件中含有“lucy”字符串的文件   3.du命令 查看文件所占容量   4 . >   重定向 如 ls > savels     重定向ls的标准输出从屏幕到savels文件 5 . >>    附加 如 ls >> sa

菜鸟的成长记录--linux基础命令

以下是我学习时接触的命令,后续会慢慢添加 1.tty:查看终端类型 虚拟终端:/dev/tty# 伪终端:/dev/pts/# 控制台:/dev/console 串行终端:/dev/ttyS# 2.startx:启动图形界面 3.ifconfig:查看网卡信息 4.cd:进入用户主目录 cd ~:进入用户主目录 cd ~USERNAME:进入其他用户主目录 cd -:在前一个目录和当前目录来回切换 cd .:当前目录 cd ..:上一级目录 cd ../..:返回上两级目录 cd !$:把上一个

运维基础--Linux基础命令

 Linux基础命令 刚接触Linux,往往会有一个印象就是Linux操作起来比我们熟悉的windows难,其实不然,只要了解熟知了Linux的CLI界面诸多的命令的用法就能使很多在GUI界面下的操作变的无比简单:以下是Linux使用中的几个基础命令: 1.cd: cd [-L|-P] [dir]  改变shell 的工作目录,默认是用户的家目录: cd DIR:切换到DIR目录: cd:   切换至当前用户的家目录: cd - :将工作目录切换至上一次的工作目录:两个目录之间的来回切换! 原理

常用Linux基础命令

1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行.2. ls 查看目录或者文件的属*,列举出任一目录下面的文件 eg: ls /usr/man ls -l a.d表示目录(directory),如果是一个”-”表示是文件,如果是l则表示是一个连接文件(link) b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x). 3. cp 拷贝文件 eg:

linux基础命令--笔记

linux基础命令--笔记 一.   1  . --help 命令简单帮助 2. man 查看命令复杂帮助  (非内置命令) 3  . help (bash的内置命令)如 :help cd  .help pwd   help  内置命令可用man cd  等查看. 4  . ls==list 查看目录列表 5 .  mkdir   == make directory  创建目录.例如:mkdir /date -p 递归创建目录 :mk 6  .  cd      ==change directo

LINUX基础命令的使用以及vim的简单命令

一 命令提示符说明 [登录用户@主机名 工作目录]# 二 Linux命令格式 命令字  [选项]  [参数1] [参数2] [ ] 表示里面内容可有可无 选项:如果是单个字符,用-               如:# ls -l 如果是一个单词,用--              如:# ls --color 多个单个字符的选项可以合并一个-   如:# ls -l -h = # ls –lh 三 基本命令及其说明 1. 基本命令 # uname -r//查询内核 # cat /etc/redha

linux基础命令学习(六)DHCP服务器配置

工作原理:        1.客户机寻找服务器:广播发送discover包,寻找dhcp服务器        2.服务器响应请求:单播发送offer包,对客户机做出响应.提供客户端网络相关的租约以供选择        其中服务器在收到客户端的请求后,会针对客户端的mac地址与本身的设定数据进行一下工作:            a.到服务器的登录文件中寻找该用户之前曾经使用过的ip,若有且该ip目前没有人使用,这提供此ip为客户机            b.若配置文件中有针对该mac提供额外的固定