CENTOS - Bash скрипт для инициации передачи файла из каталога - PullRequest
2 голосов
/ 05 августа 2020

Я пытаюсь создать сценарий bash, чтобы инициировать передачу файла на другой компьютер через приложение tftp. в настоящее время я бы сделал это вручную, выполнив команду ./tftp "filename" tftp://ipaddress/filename.

. Я бы хотел создать сценарий bash, который просматривает папку, например (перенос файлов) для любых файлов и запускает ту же команду. может кто-нибудь помочь? поскольку я новичок в bash сценарии

до сих пор я пробовал ниже

при запуске это говорит, что имя файла плохое

#!/bin/bash
for filename in ./*
do
  ./tftp "$filename" tftp://ipaddress/"$filename"
done

также пробовал этот

при запуске этого ниже он передает все в каталог ниже.

#!/bin/bash
cd /path/to/the/directory/*
for i in *
do
  ./tftp "$i" tftp://ipaddress/"$i"
done

1 Ответ

0 голосов
/ 05 августа 2020

В опубликованном вами коде filename, соответственно i, также может принимать имя подкаталога, поскольку вы просматриваете все записи в каталоге. Если вы хотите ограничить передачу простых файлов, выполните команду

[[ -f $filename ]] && ./tftp "$filename" tftp://ipaddress/"$filename"
...