2011-12-19 27 views
12

Tôi cần tạo tập lệnh bash sẽ hoạt động trên máy mac. Nó cần tải xuống một tệp ZIP của một trang web và giải nén nó vào một vị trí cụ thể.Làm cách nào để viết tập lệnh BASH để tải xuống và giải nén tệp trên máy Mac?

  1. Tải tập tin ZIP (curl -O)
  2. Giải nén các tập tin đến một địa điểm cụ thể (unzip filename.zip path/to/save)
  3. Xóa các tập tin .zip

tôi cần phải làm cho nó để mọi người có thể đúp nhấp vào tệp văn bản trên máy tính để bàn của họ và nó sẽ tự động chạy trong thiết bị đầu cuối.

Tôi làm cách nào để người dùng có thể nhấp đúp vào biểu tượng trên màn hình và nó sẽ chạy? Tệp cần phần mở rộng nào?

+1

Tệp cần phần mở rộng '.cmd'. –

+0

.command cũng hoạt động tốt. – alecwhardy

+0

'curl -L http://example.org/file.zip | bsdtar -xvf - -C/path/to/save' – davidcondrey

Trả lời

19

OSX sử dụng cùng GNU sh/bash như Linux

#!/bin/sh 

mkdir /tmp/some_tmp_dir       && \ 
cd /tmp/some_tmp_dir       && \ 
curl -sS http://foo.bar/filename.zip > file.zip && \ 
unzip file.zip         && \ 
rm file.zip 

dòng đầu tiên #!/bin/sh được cái gọi là "công việc" dòng và là bắt buộc

+2

Theo mặc định 'wget' chưa được cài đặt trong Mac OS. 'curl' là. –

+0

thay đổi thành curl –

+2

cách chính xác là curl -O – alecwhardy

13

BSD Tar có thể mở một file zip và giải nén thông qua một suối. Vì vậy, những điều sau đây sẽ hoạt động:

curl http://example.org/file.zip | tar -xf - -C path/to/save 
+5

Tệp phải là tệp tar nếu không 'tar: Tệp này không giống như tệp tar" –

Các vấn đề liên quan