Cách thêm tiện ích mở rộng cho tất cả các tệp qua thiết bị đầu cuối


14

Tôi muốn thêm phần mở rộng .zip vào tất cả các tệp. Tôi đã thử điều này, tuy nhiên nó không hoạt động:

ls | awk '{print $1 " " $1".zip"}' | xargs mv -f

Câu trả lời:


5

Tìm kiếm - một vài liên kết:

  1. Thêm đệ quy phần mở rộng tệp cho tất cả các tệp - Stack Overflow
  2. Thêm phần mở rộng tệp vào tệp bằng bash - Stack Overflow

người đàn ông đổi tên:

NAME
       rename - renames multiple files

SYNOPSIS
       rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]

DESCRIPTION
       "rename" renames the filenames supplied according to the rule specified as 
       the first argument.  The perlexpr argument is a Perl expression which is 
       expected to modify the $_ string in Perl for at least some of the filenames 
       specified. If a given filename is not modified by the expression, it will not 
       be renamed.  If no filenames are given on the command line, filenames will be 
       read via standard input...

người đàn ông wiki: http://en.wikipedia.org/wiki/Man_page


1
Thx, dựa vào đó tôi đã có thể làm điều đó như thế này - ls | xargs -I% mv %% .zip
UAd CHƯƠNG


15
rename 's/$/\.zip/' *

Đừng sử dụng xargscho điều đó!


Tại sao không sử dụng xargs?
UAd CHƯƠNG

2
Chà - không có lý do!
Adobe

4

Một cách rất đơn giản để làm điều đó là:

nếu bạn muốn giữ phần mở rộng hiện tại:

for i in *; do mv $i ${i}.zip; done     

nếu bạn muốn thay thế tiện ích mở rộng hiện tại:

for i in *; do mv $i ${i%.*}.zip; done

0

Cái này cần phải dùng mẹo:

mmv "./*" "./#1.zip"

(Mặc dù tôi không biết tại sao bạn lại muốn làm điều này ...)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.