stdout = session.exec_command('''find {} -name "{}*" -type f -exec stat -c "%n %y" {}<--**This is bash, not variable of format** + | awk "{ print $1" "$2 }" | grep -v word'''
.format(VARIABLE1, VARIABLE2))
我正在Django 1.9.13上使用paramiko 2.4编写此代码,不知道如何处理,错误是:
/ get_xml / index /中的KeyError'打印$ 1“” $ 2'
已更新:
它现在不会崩溃,但是不会返回任何东西,但是如果我使用bash进行操作,它就可以正常工作,以为那里缺少某些东西...
command = find {} -name '{}*.xml' -type f -exec stat -c '%n %y' {{}} + | awk '{{print $1, $2, $3}}' | grep -v 'word'
stdout = session.exec_command(command)
答案
ssh.connect(hostname=VARIABLE1, username=VARIABLE2)
command = "find {} -name '{}*.xml' -type f -exec stat -c '%n %y' {{}} + | awk '{{print $1, $2, $3}}' | grep -v WHATIDONTWANTTO".format(VARIABLE3, WHATIWANTTOSEARCH)
_, stdout, _ = ssh.exec_command(command)
for item in stdout:
#do whatever with items
pass
终于可以了,最后一种方法是session = ssh.get_transport()。open_session(),但是它总是检索'Nonetype'
答案 0 :(得分:2)
根据documentation on .format
,如果您需要在文字文本中包含大括号字符,可以通过将{{和}}加倍来进行转义。
因此,如果我正确理解了您的评论,则此if(loginStatus == true){
bottomNavigationView.menu.menu.findItem(R.id.authorizationFragment).isVisible = true
bottomNavigationView.menu.findItem(R.id.meFragment).isVisible = false
}else{
bottomNavigationView.menu.menu.findItem(R.id.authorizationFragment).isVisible = false
bottomNavigationView.menu.findItem(R.id.meFragment).isVisible = true
}
应该为-exec stat -c "%n %y" {}
,依此类推。