如何检查文件是否存在于远程服务器上
在有些情况下,你要测试文件是否存在于远程Linux服务器的某个目录下(例如:/var/run/test_daemonpid),而无需登录到远程服务器进行交互。例如,你可能希望你的脚本根据特定文件是否存在的远程服务器上而由不同的行为。
在本教程中,我将向您展示如何使用不同的脚本语言(如:Bash shell,Perl,Python)查看远程文件是否存在。
这里描述的方法将使用ssh访问远程主机。您首先需要启用无密码的ssh登录到远程主机,这样您的脚本可以在非交互式的批处理模式访问远程主机。您还需要确保ssh登录文件有读权限检查。假设你已经完成了这两个步骤,您可以编写脚本就像下面的例子
使用bash判断文件是否存在于远程服务器上
#!/bin/bash
ssh_host="xmodulo@remote_server"
file="/var/run/testpid"
if ssh $ssh_host test -e $file;
then echo $file exists
else echo $file does not exist
fi
使用perl判断文件是否存在于远程服务器上
#!/usr/bin/perl
my $ssh_host = "xmodulo@remote_server";
my $file = "/var/run/testpid";
system "ssh", $ssh_host, "test", "-e", $file;
my $rc = $ >> 8;
if ($rc) {
print "$file doesn't exist\n";
} else {
print "$file exists\n";
}
使用python判断文件是否存在于远程服务器上
#!/usr/bin/python
import subprocess
import pipes
ssh_host = 'xmodulo@remote_server'
file = '/var/run/testpid'
resp = subprocesscall(
['ssh', ssh_host, 'test -e ' + pipesquote(file)])
if resp == 0:
print ('%s exists' % file)
else:
print ('%s does not exist' % file)
FTP(FileTransferProtocol)是文件传输协议的简称。FTP的作用正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。FTP工作原理拿下传文件为例,当你启动FTP从远程计算机拷贝文件时,你事实上启动了两个程序:一个本地机上的FTP客户程序:它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁方便的多。简单地说,支持FTP协议的服务器就是FTP服务器,下面介绍一下什么是FTP协议(文件传输协议)一般来说,用户联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。Internet上早期实现传输文件,并不是一件容易的事,我们知道Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,据统计连接在Internet上的计算机已有上千万台,而这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建立一个统一的文件传输协议,这就是所谓的FTP。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其它的用户环境中获得文件。与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上载"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上载"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上载(下载)文件。使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可上载或下载文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。系统管理员建立了一个特殊的用户ID,名为anonymous,Internet上的任何人在任何地方都可使用该用户ID。通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上载文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上载文件,用户也只能将文件上载至某一指定上载目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上载有问题的文件,如带病毒的文件。作为一个Internet用户,可通过FTP在任何两台Internet主机之间拷贝文件。但是,实际上大多数人只有一个Internet帐户,FTP主要用于下载公共文件,例如共享软件、各公司技术支持文件等。Internet上有成千上万台匿名FTP主机,这些主机上存放着数不清的文件,供用户免费拷贝。实际上,几乎所有类型的信息,所有类型的计算机程序都可以在Internet上找到。这是Internet吸引我们的重要原因之一。匿名FTP使用户有机会存取到世界上最大的信息库,这个信息库是日积月累起来的,并且还在不断增长,永不关闭,涉及到几乎所有主题。而且,这一切是免费的。匿名FTP是Internet网上发布软件的常用方法。Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。像这样的程序,有许多就是通过匿名FTP发布的,任何人都可以存取它们。Internet中的有数目巨大的匿名FTP主机以及的文件,那么到底怎样才能知道某一特定文件位于哪个匿名FTP主机上的那个目录中呢?这正是Archie服务器所要完成的工作。Archie将自动在FTP主机中进行搜索,构造一个包含全部文件目录信息的数据库,使你可以直接找到所需文件的位置信息。FTP是一种上传和下载用的软件。定义如下:FTP(FileTransferProtocal),是用于Internet上的控制文件的双向传输的协议。同时,它也是一个应用程序。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。传输文件的一般步骤如下:1在本地电脑上登陆到国际互联网,2搜索有文件共享主机或者个人电脑(一般有专门的FTP服务器网站上公布的,上面有进入该主机或个人电脑的名称,口令和路径)3当与远程主机或者对方的个人电脑建立连接后,用对方提供的用户名和口令登陆到该主机或对方的个人电脑4在远程主机或对方的个人电脑登陆成功后,就可以上传你想跟别人分享的东东或者下载别人授权共享的东东(这里的东东是指能放到电脑里去又能在显示屏上看到的东东)5完成工作后关闭FTP下载软件,切断连接为了实现文件传输,用户还要运行专门的文件传输程序,比如网际快车就有这方面的功能,其它还有很多专门的FTP传输软件,各有各的特色FTP协议:文件传输协议FTP服务器:可以下载和上传文件的服务器。但是你必须拥有一定的权限才可以上传或者下载,这种服务器一般用于公司内部使用
远程服务器是指远程访问服务器,就是把在互联网中的计算机和在局域网中的远程访问服务器相连接。
远程访问服务允许客户机通过拨号连接或虚拟专用连接登录网络。远程客户机一旦得到RAS服务器的确认,就可以访问网络服务,就好像客户机直接连接在局域网上一样。
比如在外地工作的公司人员需要公司的重要文件,为防泄密不希望用邮件或其他方式传输,这时候工作人员(RAC)就可以连接上RAS,通过RAS和RAC之间的虚拟专用网络来访问处于RAS的局域网(公司局域网)下载文件。
要建立一个RAS,操作系统必须为服务器版本,且具有双网卡,用以链接局域网和互联网。
扩展资料:
建立远程服务器的优势:
远程接入服务器是成套硬件中的一种特别硬件,是用Novell或微软的软件构建起来的东西,是拥有多个调制解调器的PC基座。在任何情况下都将是调制解调器和远程连接处理能力的集中。RAS直接与拨号模拟电话线或ISDN电话线相连。
同使用用户的数量决定了远程接入服务器硬件的类型。建一个单线服务器,只需简单地在服务器串口上装一台调制解调器或一个ISDN终端适配器。安装RAS软件,配置安全特性就行了。但若想支持多个拨号用户,就需要一些附加硬件了。
-远程访问服务器
0条评论