Основная причина отделения архитектурно-независимых файлов от архитектурно-зависимых заключается в том, что их не нужно дублировать в разных архитектурах. Это то, что делают мультиархивные дистрибутивы / операционные системы (например, Debian) для уменьшения использования места в своих архивах.
Предполагая, что расширения параметров в test2.sh
правильно указаны как
find "$1" -type f -mmin +"$2" -exec rm -f {} \;
, тогда test3.sh
может вызывать test2.sh
вот так:
test2.sh "some file name" 5
$1
в test2.sh
заменится на строку some file name
, а $2
заменится на 5
.
Предполагается, что test2.sh
находится в каталоге, который указан в переменной PATH
в test3.sh
. Если нет, используйте полный путь (абсолютный или относительный ), например:
./test2.sh "some file name" 5
Также предполагается, что test2.sh
сначала был сделан исполняемым с помощью chmod +x test2.sh
и что он имеет правильную строку #!
-.
После уточнения в комментарии ниже:
Сценарий test3.sh
может выполнять (, предполагая, что это скрипт bash
):
read -p 'Enter directory name: ' dirname
read -p 'Enter number of days: ' days
minutes=$(( days * 60 * 24 ))
./test2.sh "$dirname" "$minutes"
Следующим шагом будет проверка ввода пользователя, чтобы $days
было действительным целым числом и чтобы $dirname
было допустимым именем каталога.
Если не bash
, аsh
:
printf 'Enter directory name: '
read -r dirname
(etc.)
Большинство реализаций find
также имеют-delete
:
find "$1" -type f -mmin +"$2" -delete