
나는 다음과 같은 디렉토리에 세 가지 종류의 파일을 가지고 있습니다..txt,.csv그리고 확장자가 없는 파일.
예
test
nest
prod
test.csv
prod.txt
nest.csv
확장자 없이 파일을 압축하고 해당 압축 파일을 다른 디렉터리로 옮기고 싶습니다. 이 문제를 해결하도록 도와주세요.
답변1
사용타르공익사업:
tar -cvf noext.zip --exclude=*.* * && mv noext.zip path/to/dest_dir
-c
- 새 아카이브 만들기--exclude=*.*
- 다음을 기준으로 파일 제외무늬mv noext.zip path/to/dest_dir
- 생성된 아카이브를 다음으로 이동합니다.목적지예배 규칙서
답변2
아래와 같이 점 문자가 포함된 이름과 일치하는 glob 패턴이 있는 필드 find
에서 반전 조건과 함께 사용할 수 있습니다.-name
find . -type f ! -name "*.*" -exec zip filename.zip "{}" +
[ -f filename.zip ] && mv filename.zip /to_whatever_path_needed/
표현식은 모든 파일을 가져옵니다.~ 아니다이름에 문자를 포함 .
하고 이를 한 번에 zip으로 전달하여 .zip
아카이브를 생성합니다.
파일을 찾으려는 것처럼 find
깊이 옵션을 추가해야 할 수도 있습니다.-mindepth 1 -maxdepth 1
오직현재 디렉토리 내에서.
답변3
ksh에서:
zip /another/directory/files_without_extension.zip !(*.*)
Bash에서 shopt -s extglob
위의 명령을 실행하세요. zsh에서 setopt ksh_glob
위 명령을 실행하거나 다른 방법으로 실행하십시오.
setopt extended_glob
zip /another/directory/files_without_extension.zip ^*.*