如何在 Linux 下使用 cpio 命令?
问:您能解释一下如何在 Linux/UNIX 下使用 cpio 吗?
A. GNU cpio 是一个用于创建和提取档案或将文件从一个地方复制到另一个地方的工具。它处理多种 cpio 格式以及读写 tar 文件。cpio 命令的工作原理与 tar 一样,但更好。
正如我之前所说,cpio 的工作方式与 tar 类似,但它可以读取“find”命令的输入。这是一个很棒的功能。例如,您可以使用 cpio 命令查找所有 *.c 文件并进行备份。您还可以使用 -F 选项指定文件名:其中,# find / -name "*.c" | cpio -o --format=tar > c-file.backup.tar
# find / -iname "*.pl" | cpio -o -H tar > perl-files.tar# find / -iname "*.pl" | cpio -o -H tar -F perl-files.tar
- -o:创建档案
- -F:用于代替标准输入或输出的存档文件名。使用另一台机器上的磁带驱动器作为存档。
- -H 格式:指定要使用的文件格式。
- -i:恢复档案
您可以使用以下命令提取存档:# cpio -i -F perl-files.tar
您可以使用以下命令列出存档内的文件,即列出 cpio 文件的内容:# cpio -it -F perl-files.tar
您可以将 /home 的存档写入磁带(驱动器 /dev/nst0),输入以下命令:# find /home | cpio -o -H tar -F /dev/nst0
使用以下命令恢复备份:# cpio -i -F /dev/nst0
将 /home 目录备份到远程系统磁带驱动器:# find /home | cpio -o -H tar -F user@backup.example.in:/dev/nst0 --rsh-command=/usr/bin/ssh