Скрипт терминального цепочки на Mac OS X - PullRequest
1 голос
/ 14 марта 2012

Я пытаюсь связать некоторые команды терминала вместе, чтобы я мог wget файл распаковать его и затем напрямую синхронизировать с amazon s3. Вот то, что у меня пока есть, у меня правильно установлен и работает s3cmd. Это работает для меня.

mkdir extract; wget http://wordpress.org/latest.tar.gz; mv latest.tar.gz extract/; cd extract; tar -xvf latest.tar.gz; cd ..; s3cmd -P sync extract s3://suys.media/

Как мне тогда создать простой скрипт, в котором я могу просто использовать переменные?

1 Ответ

1 голос
/ 16 марта 2012

Возможно, вы захотите посмотреть на bash scripting.Это руководство может помочь вам много;http://bash.cyberciti.biz/guide/Main_Page

По вашему вопросу;

Создайте файл с именем mysync,

#!/bin/bash
mkdir extract && cd extract
wget $1
$PATH = pwd
for f in $PATH
do
   tar -xvf $f
   s3cmd -P sync $PATH $2       
done

$ 1 и $ 2 - это параметры, которые вы вызываете с помощью своего скрипта.Вы можете посмотреть здесь для получения дополнительной информации о том, как использовать параметры командной строки;http://bash.cyberciti.biz/guide/How_to_use_positional_parameters

пс;#!/bin/bash - это necessity.Вы должны предоставить свой скрипт, где хранится Bash.его / bin / bash на большинстве систем Unix, но я не уверен, что он одинаков на Mac OS X, вы можете узнать его, вызвав команду на терминале;

→ which bash
/bin/bash

, которую вам нужно датьваши права на выполнение исполняемого скрипта;

chmod +x mysync

, затем вы можете вызвать его из командной строки;

mysync url_to_download s3_address

ps2;Я не проверял код выше, но идея заключается в следующем.надеюсь это поможет.

...