带有sftp的基本bash脚本

时间:2013-07-25 22:08:42

标签: bash shell sftp

我正在尝试创建一个调用sftp的简单bash脚本。

当处于交互模式时,每当用户对文件使用“put”时,我想回显一些关于该文件的元数据信息。

我正在阅读tldp.org上的Bash初学者指南,但对于我如何写一个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

所以基本上,如果条件如何写这个?

1 个答案:

答案 0 :(得分:1)

一种天真的方法可能是

#!/bin/bash
sftp 133.43.453.132 | tee /dev/tty |
while read prompt command argument1 rest
do
    case $command in put) echo "Random stuff";;
    esac
done
  • 要考虑命令行编辑或输出排序等问题,至少需要一个比tee /dev/tty更复杂的过滤器。