你好这里是什么,我试图做如何在BASH中保留FTP命令中的变量间距?
string='quote site LRECL=4096 - quote site RECFM=VB'
echo $string | sed s/-/\\n/g
输出是:
quote site LRECL=4096
quote site RECFM=VB
但是当我尝试做FTP为:
ftp_f=`ftp -vni $ADDRESS <<EOF > log_fil
user $USER $PASS
$string | sed s/-/\\n/g
bye
EOF`
它不会在这里创建新行等等它只执行一个quote site
命令,当我需要执行与字符串变量中一样多的命令时。我尝试将echo $string | sed s/-/\\n/g
存储在一个新的变量中,在FTP中用引号将其称为"$string2"
,但FTP无法识别它。 请告诉我该怎么办?
'string = $'引用网站LRECL = 4096 \ n引用网站RECFM = VB',然后在heredoc工作中使用'$ string'? –
问:是在远程** ftp **服务器上运行** sed **,还是** sed **在** bash **本地运行? – agc
@agc我想在远程ftp上运行它。因为如果我在本地运行它,并且我不知道它需要那个站点命令多少次,所以声明很多变量是不可能的。 – msj003