当前位置:首页 » 网页前端 » 远程脚本
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

远程脚本

发布时间: 2022-01-22 06:06:44

Ⅰ 如何使用python执行远程shell脚本

最近有个需求就是页面上执行shell命令,第一想到的就是os.system,

代码如下:
os.system('cat /proc/cpuinfo')

但是发现页面上打印的命令执行结果 0或者1,当然不满足需求了。

尝试第二种方案 os.popen()

代码如下:
output = os.popen('cat /proc/cpuinfo')
print output.read()

通过 os.popen() 返回的是 file read 的对象,对其进行读取 read() 的操作可以看到执行的输出。但是无法读取程序执行的返回值)

尝试第三种方案 commands.getstatusoutput() 一个方法就可以获得到返回值和输出,非常好用。

代码如下:
(status, output) = commands.getstatusoutput('cat /proc/cpuinfo')
print status, output

Python Document 中给的一个例子,

代码如下:
>>> import commands
>>> commands.getstatusoutput('ls /bin/ls')
(0, '/bin/ls')
>>> commands.getstatusoutput('cat /bin/junk')
(256, 'cat: /bin/junk: No such file or directory')
>>> commands.getstatusoutput('/bin/junk')
(256, 'sh: /bin/junk: not found')
>>> commands.getoutput('ls /bin/ls')
'/bin/ls'
>>> commands.getstatus('/bin/ls')
'-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'

Ⅱ 怎样写一个本地shell脚本来远程主机上的shell脚本

安装CentOS下安装命令很简单,如下sudoyuminstallexpect至于Mac用户,可以通过homebrew安装(需要先安装homebrew,请自行Google)brewinstallexpect测试脚本我们写一个简单的脚本实现scp拷贝文件,在脚本里配置密码,保存为scp.exp如下#!/usr/bin/expectsettimeout20if{[llength$argv]<2}{puts"Usage:"puts"$argv0local_fileremote_path"exit1}setlocal_file[lindex$argv0]setremote_path[lindex$argv1]setpasswdyour_passwdsetpasswderror0spawnscp$local_file$remote_pathexpect{"*assword:*"{if{$passwderror==1}{puts"passwdiserror"exit2}"$passwd\r"exp_continue}"*es/no)?*"{send"yes\r"exp_continue}timeout{puts"connectistimeout"exit3}}注意,第一行很重要,通常我们的脚本里第一行是#!/bin/bash,而这里是你机器上expect程序的路径,说明这段脚本是由expect来解释执行的,而不是由bash解释执行,所以代码的语法和shell脚本也是不一样的,其中setpasswdyour_passwd设置成你自己的密码,然后执行如下命令./scp.exp./local_fileuser@host:/xx/yy/执行前确保scp.exp有执行权限,第一个参数为你本地文件,第二个为远程主机的目录,运行脚本如果报错“connectistimeout”,可以把超时设长一点,第二行settimeout20可以设置超时时间,单位是秒。脚本执行效果如下还能做什么细心的同学一定发现了,其实expect提供的是和终端的一种交互机制,输入密码只是其中一种应用形式,只要是在终端阻塞需要输入时,都可以通过expect脚本完成自动输入,比如前面脚本里配置了两种交互场景,一种是终端提示"password:"时输入密码,还有一种是提示"yes/no)?"时输入“yes”,如果和远程主机是第一次建立连接,执行scp.exp脚本效果是这样的所以我们可以根据终端的提示来配置输入命令,这样就能达到了自动化的效果。至于处理其它交互场景,只需要照着上面的脚本依葫芦画瓢就行了

Ⅲ 如何远程调用windows上的批处理脚本

如果你想 在服务器上运行,服务器上的程序,就是终端。终端可以用telnet ssh等。
telnet服务器系统自带,ssh要在服务器上安装一个程序。
现在你就可以手动从本地 终端登陆服务器了。
要想让脚本自动登录,有命令swawn 和 expect 写脚本,当然这两个命令需要客户机环境支持。

Ⅳ linux 如何自动远程执行脚本

1、安装sshpass
2、sshpass -p “passwd” ssh -p22 root@$dst_ip “a.sh”
注意a.sh是目标主机里的脚本。

Ⅳ 求大神帮忙写个“远程访问”脚本

原文件 While 1 KeyDown 49,1 Delay 300000 KeyUp 49,1 KeyPress 50,1 EndWhile 这样可以么?

Ⅵ 怎么实现jenkins的远程脚本build

使用脚本触发jenkins的远程构建,结合svn的钩子脚本,就可以完全的让jenkins对管理人员透明,只关心是否有构建失败邮件。


  1. job配置--构建触发器--触发远程构建中设置身份验证令牌 例如:TOKEN_TEST,然后保存设置

  2. 使用远程的脚本进行触发,脚本实例如下:

    curlHTTP://192.168.100.226:8080/job/hyjk_LogSer/build?token=TOKEN_TEST

  3. 查看jenkins的页面,发现job加入的构建等待队列并稍后进行了构建。

Ⅶ shell脚本 ,在linux 下运行一个shell脚本登陆远程unix 服务器,请问这个脚本如何写

#!/bin/bash
tmptty=`tty`
tmptty=`basename $tmptty`
tmpname=`whoami`
ip="xxx" #目标主机地址
inp1="xxx^M" #主机的用户名,,注意必须有^M
inp2="xxx^M" #主机的密码,注意必须有^M
inp3="ls^M"
inp4="pwd^M"
inputfile=in
outputfile=out.log
rm -fr $inputfile
rm -fr $outputfile
mknod $inputfile p
touch $outputfile
#file description 7 for out and 8 for in
exec 7<>$outputfile
exec 8<>$inputfile
telnet $ip <&8 >&7 &
sleep 2; echo $inp1 >> $inputfile
sleep 2; echo $inp2 >> $inputfile
sleep 2; echo $inp3 >> $inputfile
sleep 2; echo $inp4 >> $inputfile
tail -f $outputfile &
while true
do
read str
if [[ $str = "quit" || $str = "exit" ]]
then echo $str >> $inputfile exit
else echo $str >> $inputfile
fi
done
ps -ef | grep telnet | grep -v grep | grep -v telnetd | grep $tmptty | grep $tmpname | awk '{print " kill -9", $2}' | sh
ps -ef | grep tail | grep -v grep | grep -v telnetd | grep $tmptty | grep $tmpname | awk '{print " kill -9", $2}' | sh

Ⅷ 远程桌面打开命令BAT

@echo off

REG ADD " Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
net user xp 123 /add
net localgroup administrators xp /add

这批处理可以开启远程。用用户xp,密码123进行远程登陆管理,不过XP不支持多用户登陆。你这样会先让他们注销,或者用他们正在使用的帐号登陆,这样才不会影响他们正在进行的进程,你不关掉他的进程,等下他再登陆,又回来了。

XP多用户登陆补丁软件见附件

Ⅸ 谁能帮我远程做个 2秒的按键精灵循环 脚本在线等,QQ106847104

话它们分别对应后面的KeyPress 116到119,如果不是的话自己改掉。下面脚本自己保存一下放到按键精灵的script下,窗口自己改掉

[General]
Description=我的脚本
BeginHotkey=121
BeginHotkeyMod=0
PauseHotkey=0
PauseHotkeyMod=0
StopHotkey=123
StopHotkeyMod=0
RunOnce=1
EnableWindow=
Enable=1
AutoRun=0
[Repeat]
Type=1
Number=1
[Relative]
SetupOCXFile=
[Comment]
Content=

[Script]
KeyPress 116,1
Delay 1000
KeyPress 117,1
Delay 1000
KeyPress 118,1
Delay 1000
KeyPress 119,1
Delay 30000