하나의 파일을 Linux의 여러 파일에 복사하는 한 줄의 명령/스크립트가 있습니까?하나의 파일을 여러 파일에 복사하는 Linux 명령
cp file1 file2 file3
은 첫 번째 두 파일을 세 번째 파일로 복사합니다. 첫 번째 파일을 나머지 파일에 복사하는 방법이 있습니까?
하나의 파일을 Linux의 여러 파일에 복사하는 한 줄의 명령/스크립트가 있습니까?하나의 파일을 여러 파일에 복사하는 Linux 명령
cp file1 file2 file3
은 첫 번째 두 파일을 세 번째 파일로 복사합니다. 첫 번째 파일을 나머지 파일에 복사하는 방법이 있습니까?
는 "한 줄 명령/스크립트"로
cp file1 file2 ; cp file1 file3
수를합니까? 어때요
for file in file2 file3 ; do cp file1 "$file" ; done
? "복사"의 약간 느슨한 감각
또는는 :
이for target in file2 file3 do; cp file1 "$target"; done
더러운 해킹은 다음과 같습니다
tee <file1 file2 file3 >/dev/null
내가 생각할 수있는 가장 간단한/가장 빠른 해결책은 루프입니다 다음과 같다. (나는 강력히 권하고, 배시에서는 어쨌든 작동한다.) :
eval 'cp file1 '{file2,file3}';'
표준 스크립팅 명령 대신에 S :
배쉬 :
for i in file2 file3 ; do cp file1 $i ; done
for FILE in "file2" "file3"; do cp file1 $FILE; done
사용할 수 shift
: 다음과 같은
file=$1
shift
for dest in "[email protected]" ; do
cp -r $file $dest
done
'shift '의 효과는 무엇입니까? –
사용 뭔가. 그것은 zsh에서 작동합니다.
고양이 파일> firstCopy> secondCopy> thirdCopy
또는
고양이 파일> {1..100} - 숫자 파일 이름을.
작은 파일에는 적합합니다.
큰 파일의 경우 앞서 언급 한 cp 스크립트를 사용해야합니다. 단지 재미를 위해
쉘이'zsh' 인 것으로 가정합니다. –
// 이것은 Bash에서는 작동하지 않습니다. –
파일의 크기가 중요한 이유는 무엇입니까? RAM 크기에 의해 제한됩니까? –
, 당신은 파일의 큰 목록을 필요로하는 경우 :
tee <sourcefile.jpg targetfiles{01-50}.jpg >/dev/null
-Kelvin Feb 12 at 19:52
하지만 약간 오타가 있습니다. 해야합니다 권한을 복사하지 않습니다 tee <sourcefile.jpg targetfiles{01..50}.jpg >/dev/null
그리고 위에서 언급 한 바와 같이
.
더하기 하나의 'tee' – knittl
'tee file2 file3' –
jfs
@JFSebastian : 네, OP가 분명히 두 개의 대상 파일 이상에서 작동하기를 원하기 때문에 지원 양식을 강조하는 양식을 사용했습니다. 그. 어쩌면 나는'tee file2 file3 file4'을 작성해야하고 두 파일 병렬 처리가 필요하지 않을까요? –
ruakh