English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Linux cpio 명령어

Linux 명령어大全

Linux cpio 명령어는 파일을 백업하는 데 사용됩니다.

cpio는 백업 파일을 생성하고 복구하는 도구 프로그램으로, cpio 또는 tar 백업 파일 내의 파일을 추가하고 풀 수 있습니다.

문법

cpio [-0aABckLovV][-C <입력/출력 크기>][-F <백업 파일>][-H <백업 형식>][-O <백업 파일>][--block-size=<블록 크기>][--force-local][--help][--quiet][--version] 또는 cpio [-bBcdfikmnrsStuvV][-C <입력/출력 크기>][-E <模范 파일>][-F <백업 파일>][-H <백업 형식>][-I <백업 파일>][-M <전송 정보>][-R <소유자><:/.><소속 그룹>][--block-size=<블록 크기>][--force-local][--help][--no-absolute-filenames][--no-preserve-owner][--only-verify-crc][--quiet][--sparse][--version][模范 스타일...] 또는 cpio [-0adkiLmpuvV][-R <소유자><:/.><소속 그룹>][--help][--no-preserve-owner][--quiet][--sparse][--version][목적목]

파라미터

  • -0 또는--null  추가 열 제어 문자를 받아들이며, 일반적으로 find 명령어와 함께 사용됩니다"-print0"파라미터 사용.
  • -a 또는--reset-access-time  파일의 접근 시간을 재설정합니다.
  • -A 또는--append  기존 백업档에 추가하여, 이 백업档은 디스크에 저장되어 있어야 하며, 테이프 메카닉에 저장할 수 없습니다.
  • -b 또는--swap  이 매개변수의 효과는 동시에"-sS" 매개변수와 같습니다.
  • -B  입력/출력의 블록 크기를 변경하여5210 Bytes.
  • -c  오래된 ASCII 백업 형식을 사용합니다.
  • -C<블록 크기> 또는--io-size=<블록 크기>  입력을 설정합니다/출력의 블록 크기, 단위는 Byte입니다.
  • -d 또는--make-directories  필요할 때 cpio가 자동으로 디렉토리를 만듭니다.
  • -E<템플릿 파일> 또는--pattern-file=<템플릿 파일>  템플릿 파일을 지정하여, 그 안에 하나 이상의 템플릿 스타일이 포함되어 있어 cpio가 템플릿 조건에 맞는 파일을 푼다, 각 행에 하나의 템플릿 스타일 포맷.
  • -f 또는--nonmatching  cpio는 모든 템플릿 조건에 맞지 않는 파일을 모두 푼다.
  • -F<백업档> 또는--file=<백업档>  백업档의 이름을 지정하여 표준 입력이나 출력을 대체하고, 이를 통해 네트워크를 통해 다른主机의 저장 장치에서 백업档을 읽거나 쓸 수 있습니다.
  • -H<백업 형식>  백업할 때 사용하고자 하는 파일 형식을 지정합니다.
  • -i 또는--extract  copy 실행-in 모드, 백업档을 복원합니다.
  • -l<백업档>  백업档의 이름을 지정하여 표준 입력을 대체하고, 이를 통해 네트워크를 통해 다른主机의 저장 장치에서 백업档을 읽을 수 있습니다.
  • -k  이 매개변수는 무시되고, cpio 다른 버전 간의 호환성 문제를 해결하는 데 책임을 진다.
  • -l 또는--link  파일을 복사하는 대신 하드 연결로 대체할 수 있으며, copy-pass 모드에서 사용
  • -L 또는--dereference  시ンボ리ック 연결을 만들지 않고, 그 연결이 가리키는 원본 파일을 직접 복사합니다.
  • -m 또는 preserve-modification-time  파일의 변경 시간을 변경하지 않습니다.
  • -M<전송 정보> 또는--message=<전송 정보>  저장 매체 변경 정보를 설정합니다.
  • -n 또는--numeric-uid-gid  "를 사용-tv" 매개변수로 백업档의 내용을 나열할 때, 추가로 매개변수"-n"이면, 사용자 식별码와 그룹 식별码로 파일 목록을 나열합니다.
  • -o 또는--create  copy 실행-out 모드, 백업档을 생성합니다.
  • -O<백업档>  백업档의 이름을 지정하여 표준 출력을 대체하고, 이를 통해 네트워크를 통해 다른主机의 저장 장치에 백업档을 저장할 수 있습니다.
  • -p 또는--pass-through  copy 실행-pass 모드, 백업 단계를 건너뛰고 파일을 목적 디렉토리에 복사합니다.
  • -r 또는--rename  파일 이름이 변경되어야 할 때, 상호작용 모드를 사용합니다.
  • -R<소유자><:)/.><소속 그룹> 또는
  • ----owner<소유자><:)/.><소속 그룹>  copy-in 모드에서 백업档을 복구하거나 copy-pass 모드에서 파일을 복사할 때, 이러한 백업을 지정할 수 있습니다. 복사된 파일의 소유자와 그룹을 지정할 수 있습니다。
  • -s 또는--swap-bytes  각 쌍 바이트의 내용을 교환합니다。
  • -S 또는--swap-halfwords  각 반바이트의 내용을 교환합니다。
  • -t 또는--list  입력 내용을 표시합니다。
  • -u 또는--unconditional  모든 파일을 대체합니다. 날짜와 시간에 관계없이 질문하지 않고 직접 덮어씁니다。
  • -v 또는--verbose  명령의 실행 과정을 상세히 표시합니다。
  • -V 또는--dot  명령을 실행할 때, 각 파일의 실행 프로그램 앞에 "." 번호를 추가합니다
  • --block-size=<블록 크기>  입력을 설정합니다/출력된 블록 크기는, 값이 설정된 경우5,그러면 블록 크기는2500, 그렇게 설정된 경우10,그러면 블록 크기는5120, 그리고 계속 이어집니다.
  • --force-local  백업档을 로컬 호스트에 강제로 저장합니다。
  • --help  온라인 도움말。
  • --no-absolute-filenames  상대 경로를 사용하여 파일 이름을 만듭니다。
  • --no-preserve-owner  파일 소유자를 유지하지 않습니다. 백업档을 열면, 이 파일은 누구에게나 소유됩니다.
  • -only-verify-crc  백업档이 CRC 백업 형식을 사용할 때, 이 参数를 사용하여 백업档 내의 각 파일이 올바르게 되었는지 확인할 수 있습니다。
  • --사일런트  복사된 블록의 수를 표시하지 않습니다。
  • --스파레스  한 파일에 많은 연속적인 0 바이트가 포함되어 있으면, 이 파일을 희소 파일로 저장합니다。
  • --버전  버전 정보를 표시합니다。

온라인 예제

백업 파일을 만듭니다

[[email protected] var]# ll //현재 디렉토리에 있는 파일을 표시합니다
총 사용량 164
drwxr-xr-x  2 루트 루트  4096 2008-03-30 계정
drwxr-xr-x  9 루트 루트  4096 2008-03-30 캐시
drwxr-xr-x  3 netdump netdump 4096 2008-03-30 크래시
drwxr-xr-x  3 루트 루트  4096 2008-03-30 데이터베이스
drwxr-xr-x  3 루트 루트  4096 2008-03-30 비어
drwxr-xr-x  3 루트 루트  4096 2008-03-30 ftp
drwxrwx--T  2 루트 gdm   4096 4월 9 20:17 gdm
drwxr-xr-x 25 루트 루트  4096 2008-03-30 라이브러리
drwxr-xr-x  2 루트 루트  4096 2004-08-13 local
drwxrwxr-x  6 루트 락  4096 5월 8 15:25 lock
drwxr-xr-x 14 루트 루트  4096 5월 8 15:14 log
lrwxrwxrwx  1 루트 루트   10 2008-03-30 메일 -> 스푸어/mail
drwxr-xr-x  2 루트 루트  4096 2004-08-13 nis
drwxr-xr-x  2 루트 루트  4096 2004-08-13 opt
drwxr-xr-x  2 루트 루트  4096 2004-08-13 preserve
drwxr-xr-x 16 루트 루트  4096 5월 8 15:14 run
drwxr-xr-x 16 루트 루트  4096 2008-03-30 스푸어
drwxrwxrwt  3 루트 루트  4096 1월 13 18:53 tmp
drwx------  2 루트 루트  4096 2004-07-08 tux
drwxr-xr-x  8 루트 루트  4096 1월 19 19:39 www
drwxr-xr-x  3 루트 루트  4096 2008-03-30 yp
[[email protected] var]# ls | cpio -o >123.cpio //백업 파일을 만듭니다
25 블록
[[email protected] var]# ll //현재 디렉토리에 있는 파일을 표시합니다
총 사용량 172
-rw-r--r--  1 루트 루트  1024 5월 24 13:06 123.cpio
drwxr-xr-x  2 루트 루트  4096 2008-03-30 계정
drwxr-xr-x  9 루트 루트  4096 2008-03-30 캐시
drwxr-xr-x  3 netdump netdump 4096 2008-03-30 크래시
drwxr-xr-x  3 루트 루트  4096 2008-03-30 데이터베이스
drwxr-xr-x  3 루트 루트  4096 2008-03-30 비어
drwxr-xr-x  3 루트 루트  4096 2008-03-30 ftp
drwxrwx--T  2 루트 gdm   4096 4월 9 20:17 gdm
drwxr-xr-x 25 루트 루트  4096 2008-03-30 라이브러리
drwxr-xr-x  2 루트 루트  4096 2004-08-13 local
drwxrwxr-x  6 루트 락  4096 5월 8 15:25 lock
drwxr-xr-x 14 루트 루트  4096 5월 8 15:14 log
lrwxrwxrwx  1 루트 루트   10 2008-03-30 메일 -> 스푸어/mail
drwxr-xr-x  2 루트 루트  4096 2004-08-13 nis
drwxr-xr-x  2 루트 루트  4096 2004-08-13 opt
drwxr-xr-x  2 루트 루트  4096 2004-08-13 preserve
drwxr-xr-x 16 루트 루트  4096 5월 8 15:14 run
drwxr-xr-x 16 루트 루트  4096 2008-03-30 스푸어
drwxrwxrwt  3 루트 루트  4096 1월 13 18:53 tmp
drwx------  2 루트 루트  4096 2004-07-08 tux
drwxr-xr-x  8 루트 루트  4096 1월 19 19:39 www
drwxr-xr-x  3 루트 루트  4096 2008-03-30 yp
[[email protected] var]# 

백업 파일 압축해제

[[email protected] var]# ls | cpio -i -l 123.cpio

백업 파일을 압축해제하고 상세 정보를 나열합니다

[[email protected] var]# cpio -t -I 123.cpio  
123.cpio
a.c
b.c
c.c
…… 일부 결과를 제외한 내용

강제 압축해제

[[email protected] var]# cpio -i -u -I 123.cpio 

압축해제할 때 역순 매칭하여 압축해제하지 않는 파일을 지정합니다

[[email protected] var]# cpio -i -I 123.cpio -f *.c 
//.c 확장자 파일을 압축해제하지 않습니다

지정된 .cpio 파일에 파일 추가

[[email protected] var]# ls
123.cpio crash ftp local mail preserve tmp yp
account  db    gdm lock  nis  run       tux
cache     empty lib log  opt  spool   www
[[email protected] var]# cpio -o -O 123.cpio -A
db  //사용자 입력, Ctrl을 누르세요+D 입력 종료
1 block
[[email protected] var]# 

표준 입력에서 파일 백업

[[email protected] test]# ls              
a. a.c b.c c.c d.c    f.c
[[email protected] test]# cpio -o >123.cpio
a.c  //사용자 입력
b.c
c.c  //Ctrl을 누르세요+D 입력 완료
3 block
[[email protected] test]# 

파일 복사

[[email protected] test]# cpio -p /root
a.c  //사용자 입력
b.c
c.c  //Ctrl을 누르세요+D 입력 완료
3 block

Linux 명령어大全