linux 如何使用脚本将倒数第二个文件从SSH复制到本地

iqxoj9l9  于 2022-11-22  发布在  Linux
关注(0)|答案(1)|浏览(221)

我是bash脚本的新手,我正在尝试创建一个脚本,它可以从一个文件夹中复制倒数第二个文件,从机器B(ssh)复制到机器A(local)。
提前感谢!

输入:

#!/bin/bash

userName=`whoami`
myLocation=`pwd`  #machineA or local

ssh $userName@machineB << 'ENDSSH'
pathFile="/somefolder/folder_1/businessfolder/"
cd $pathFile
ls -ltrh
zipFile=`ls -Art | tail -n 2 | head -1`
echo $zipFile
ENDSSH
scp $userName@machineB:$pathFile$zipFile $myLocation

输出(仅错误):

scp: .: not a regular file
mw3dktmi

mw3dktmi1#

如果您可以touch ~/.hushlogin on machineB for userName,则以下应该有效(对我有效):

#!/bin/bash
userName=$(whoami)
myLocation=$(pwd)
pathFile="/somefolder/folder_1/businessfolder/"

zipFile=$(ssh -T -q $userName@machineB <<ENDSSH
cd $pathFile
ls -Art | tail -n 2 | head -1
ENDSSH
)
scp "$userName"@machineB:"$pathFile$zipFile" "$myLocation"

相关问题