我想把一个包含pdf文件的完整目录放在另一个带有smbclientscript的服务器上。我的剧本:

    #Set variable for reports
variable=`ls | grep pdf`

smbclient -U "server\user"%pw //some/direc/tory/bla/bla << Commands
cd to/another/dir
put $variable
exit
Commands

它实际上是有效的,但问题是它只能复制listebeils | grep pdf的第一个文件。
对于其他文件,shell使用file:command not found响应。

最佳答案

在巴什

variable=`ls |grep pdf`

将使用STDOUT获取字符串变量,而不是数组。这不是你想要的。
也许xargs能帮到你。你可以这样做,但我认为不是一个优雅的解决方案。
ls | grep '.pdf$' |xargs -I{} smbclient -U "server\user"%pw //some/direc/tory/bla/bla -D 'to/another/dir' -c "{}"

关于linux - smbclient脚本将多个文件放入变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40783825/

10-10 17:53