2015-09-19 3 views
1

Я создаю Loop, который позволит мне rsync файлы из каталога переменных на один уровень выше, а затем bzip эти файлы на каждом уровне, бесконечно, пока я не нажму CTRL + C. До сих пор это то, что у меня есть для сценария оболочки:Как запросить ввод пользователя и изменить сценарий оболочки?

while : 

do 

     rsync -av ../gene/ . 
     bzip2 -kv */*/*/*/*/*/*/* 
     bzip2 -kv */*/*/*/*/*/* 
     bzip2 -kv */*/*/*/*/* 
     bzip2 -kv */*/*/*/* 
     bzip2 -kv */*/*/* 
     bzip2 -kv */*/* 
     bzip2 -kv */* 
     echo "Press [CTRL+C] to stop.." 
     sleep 1 
done 

То, что я хотел бы, чтобы произошло это попросить каталог, он должен RSync из. Каталог не всегда является геном и является переменным, поэтому пользовательский ввод является обязательным. Любая помощь в этом и, возможно, очистка скрипта очень ценится.

ответ

1

Вы можете сделать это:

#!/bin/bash 

myFolder=$1; 

echo "Working on "$myFolder; 

while : 

do 

     rsync -av $myFolder . 
     bzip2 -kv */*/*/*/*/*/*/* 
     bzip2 -kv */*/*/*/*/*/* 
     bzip2 -kv */*/*/*/*/* 
     bzip2 -kv */*/*/*/* 
     bzip2 -kv */*/*/* 
     bzip2 -kv */*/* 
     bzip2 -kv */* 
     echo "Press [CTRL+C] to stop.." 
     sleep 1 
done 

сохранить с именем someprogram.sh и преобразования приложений (если есть)

bash ./someprogram.sh someFolder 
+0

Именно то, что я искал. Спасибо! – JJcarter

+0

Если я запустил это из папки, я хочу получить информацию rsync, она ищет/currentFolder/someFolder. Есть ли способ получить его для rsync с одного уровня выше на someFolder? – JJcarter

+0

Приносим извинения за задержку, я рад, что вы можете это решить –

Смежные вопросы