en en ko ko ko ja en en zh en pt ko en ko ko it ko ko it ko ko fr ko ko nl ko en ko ko uk en ko nl ko en ko it ko en nl ko fr ko nl ko ko ko ko ko zh en en en en pt fr en en kn en sv fr en en en en en es fr en en en fr ja en en en en en en en en en fi en hu pt hbs_lat ru en en en en pl ko ko ko ko ko ko ko zh en en pt en en en uz en en fr eo sv en en en es en en en en en en ja en it hu ja eo en de en ko ko en en
command-line Archives - How IT
하위 폴더가없는 여러 파일로 zip을 만드는 방법은 무엇입니까? 및 d4를 포함하는 zip을 만들고 싶습니다. . ├── d0 ├──
. ├── d0 ├── f0 ├── f1 │   └── d1 └── f2 └── f3 ├── d2 ├── d3 └── d4
다음 구조를 가져야하는 d0, d1 및 d4를 포함하는 zip을 만들고 싶습니다.
. ├── d0 ├── d1 └── d4
내가 이미 시도한 것 :
나는 그것을 시도했다 zip myfiles d0 f1/d1 f2/f3/d4. 그러나 이것은 원래 폴더 구조를 유지합니다. 원하는 것은 아닙니다.
. ├── d0 ├── f1 │   └── d1 └── f2    └── f3    └── d4
하위 폴더없이 여러 파일로 zip을 만드는 방법은 무엇입니까?
수동으로 zip 파일을 작성하고 업데이트 할 수 있습니다.
zip myfiles d0 (cd f1; zip -u ../myfiles.zip d1) (cd f2/f3; zip -u ../../myfiles.zip d4)
괄호는 서브 쉘을 작성하고 서브 쉘에서 cd마지막 것의 영향 만으로 cd원래 디렉토리 로 돌아갈 필요가 없습니다 .
경우 d1, d2등 실제로 파일이 아닌 디렉토리 자체가, 다음 사용 -j옵션 :
저장된 파일의 이름 만 저장하고 (경로를 정크) 디렉토리 이름은 저장하지 마십시오. 기본적으로 zip은 현재 디렉토리에 상대적인 전체 경로를 저장합니다.
당신이 사용할 수있는 find파일 목록을 얻을하고 실행 zip -j myfiles경로를 무시하고 그들을 팩 :
find . -name "d[014]" -exec zip -j myfiles {} +
$ tree . ├── d0 ├── f0 ├── f1 │   └── d1 └── f2 └── f3 ├── d2 ├── d3 └── d4 $ find . -name "d[014]" -exec zip -j myfiles {} + adding: d1 (stored 0%) adding: d4 (stored 0%) adding: d0 (stored 0%) $ unzip -l myfiles.zip Archive: myfiles.zip Length Date Time Name --------- ---------- ----- ---- 0 2017-10-09 10:47 d1 0 2017-10-09 10:48 d4 0 2017-10-09 10:47 d0 --------- ------- 0 3 files
그러나 이것은 파일에서만 작동하며 디렉토리는 무시됩니다 zip -j. 너무 디렉토리에 대해이 작업을 얻으려면, 우리는 포장하고 싶은 말은 d0, d1전체 f3위의 예에서 디렉토리는 find라인이 좀 더 복잡해진다 :
$ find . \( -name "d[01]" -o -name "f3" \) -exec sh -c 'p=$(pwd); for i in $0 $@; do cd ${i%/*}; zip -ur "$p"/myfiles ${i##*/}; cd "$p"; done' {} + zip warning: /home/dessert/myfiles.zip not found or empty adding: d1 (stored 0%) adding: f3/ (stored 0%) adding: f3/d3 (stored 0%) adding: f3/d2 (stored 0%) adding: f3/d4 (stored 0%) adding: d0 (stored 0%) $ unzip -l myfiles.zip Archive: myfiles.zip Length Date Time Name --------- ---------- ----- ---- 0 2017-10-11 10:18 d1 0 2017-10-11 10:19 f3/ 0 2017-10-11 10:19 f3/d3 0 2017-10-11 10:19 f3/d2 0 2017-10-11 10:19 f3/d4 0 2017-10-11 10:17 d0 --------- ------- 0 6 files
-j 옵션을 사용하면 파일에서 경로가 제거됩니다.
zip -j myfiles d0 f1/d1 f2/f3/d4
이 글은 ubuntu 카테고리에 분류되었고 command-line, zip 태그가 있으며 소장 마님에 의해 2022-09-30에 작성되었습니다.
두 IC간에 발진기 공유 클럭을 둘 수
Linux-특정 날짜 이후에 수정 된 모든 파일을 새 하드 드라이브로 전송 나에게 실패하기 시작했고 새로운 드라이브를 고스트 할
비싼 소프트웨어없이 Flash 게임을 개발하려면 어떻게해야합니까? [닫은] 사용하고있었습니다. FlashDevelop에 대해 알고 있지만
OGR / GDAL을 사용하여 래스터 배치를 리샘플링하는 방법은 무엇입니까? 찾고 있습니다. TIF 파일로 가득
Proudly powered by WordPress