#!/bin/bashssh user@hostname.tld. printf "$@"
不幸的是,当其中一个参数包含空格时会中断,例如我希望以下命令给出相同的输出:
~$./wrap_printf "%s_%s" "hello world" "1"hello_world1_~$printf "%s_%s" "hello world" "1"hello world_1
当涉及(转义)换行符时,问题变得更加严重.我怎么能在这里正确地逃避我的论点?
解决方法#!/bin/shQUOTE_ARGS=''for ARG in "$@"do QUOTE_ARGS="${QUOTE_ARGS} '${ARG}'"donessh user@hostname.tld. "${QUOTE_ARGS}"
这适用于空间.如果参数具有嵌入的单引号,则它不起作用.
总结以上是内存溢出为你收集整理的linux – 防止ssh破坏shell脚本参数全部内容,希望文章能够帮你解决linux – 防止ssh破坏shell脚本参数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)