Я хочу выполнить команду tftp
, не входя в «tftp
командную строку».
Я пробовал следующие команды:
tftp xx.xx.xx.xx -c put file1 file2
tftp xx.xx.xx.xx -m binary -c file1 file2
Но я получил:
usage:tftp host-name [port]
tftp>
После сообщения «use:» он входит в командную строку tftp
.
Я пробовал это с включенной опцией verbose.
Я просто хочу знать, сработала ли команда, которую я дал. Сообщение «использование:» создает впечатление, что это неправильное использование команды tftp
.
Эта команда должна вызываться из файла Bash, который будет вызываться из приложения CLI, над которым я работаю.
Я следовал советам по этой ссылке: https://superuser.com/questions/581812/put-file-with-tftp-client-in-linux
Можно использовать heredoc (<<
) ввести команды для выполнения один за другим:
tftp host <<'EOF'
Enter
Commands
Here
EOF
Пример:
$ tftp localhost <<'EOF'
> ascii
> status
> quit
> EOF
tftp> tftp> Connected to localhost.
Mode: netascii Verbose: off Tracing: off
Rexmt-interval: 5 seconds, Max-timeout: 25 seconds
tftp>
$
Если Вы требовали tftp
команда
get file1 /home/foobar/test.txt
можно сделать:
$ tftp host <<'EOF'
> get file1 /home/foobar/test.txt
> quit
> EOF