Я пытаюсь создать простой скрипт bash, который вызывает sftp.Базовый сценарий bash с sftp
В интерактивном режиме, когда пользователь использует «put» в файле, я хочу выделить некоторые метаданные в этом файле.
Я читаю руководство Bash для начинающих на tldp.org, но мне сразу становится ясно, как написать оператор if, который проверяет, когда пользователь нажимает на команду «put».
Спасибо.
Редактировать: добавлен базовый код и разработка.
#!/bin/bash
sftp 133.43.453.132 # I made up this IP for demonstration purposes
while True
do
if [user uses 'put' to a transfer a file to remote server] # New to bash so I don't know how to express this.
then
echo "Random stuff"
fi
done
Так что, как я могу написать это, если условие?
, пожалуйста, покажите, что у вас есть – hek2mgl
В общем, вы этого не делаете. То есть трудно использовать скрипт bash для управления другой командой, в то же время позволяя пользователю взаимодействовать с ним. Существует инструмент под названием [expect] (https://en.wikipedia.org/wiki/Expect), который может делать такие вещи, но нетривиально делать с ним что-то сложное. – larsks
Спасибо за комментарий. Я хочу сделать это, потому что всякий раз, когда пользователь использует put, чтобы поместить файл на сервер, я хочу, чтобы вывести некоторые метаданные для этого файла. Как именно я должен это делать? Я не знаком с bash, поэтому я не знаю оптимального способа выразить это. – user1413969