Много-много раз в день мне хочется скопировать один или два файла из ~/src/some/path/or/other
и ~/src/some/different/path
на моем локальном компьютере в /srv/www/some/path/or/other
и /srv/www/some/different/path
соответственно на хосте тестирования. Эти два пути идентичны после ~/src и /srv /www соответственно - хотя, очевидно, я обычно опускаю имя файла во втором аргументе scp, который я сейчас использую.
Проблема в том, что я нередко просто целиком обращаюсь к вызову scp и копирую файл в неправильный каталог, или перезаписываю другой файл, потому что tab complete сумел меня перехитрить. Я мог бы rsync всего моего локального дерева на сервер через ssh, но я иногда даже не хочу загружать все это - только конкретный файл.
Я предполагаю, что мне нужен простой инструмент CLI, который позволит мне сделать (возможно, с небольшим количеством настроек) моральный эквивалент:
jkg5150@dev-laptop:~/src/myproject$ funkytool path/to/file another/path/another-file mydevhost.mycompany.com
... и скопировал file
на mydevhost.mycompany.com:/srv/www/myproject/path/to/
, а another-file
скопировал на mydevhost.mycompany.com:/srv/www/myproject/another/path/
.
Конечно, есть трюк, который я пропускаю - или я должен просто написать один?