在Linux系统中,远程文件传输是一个很重要的功能。无论你是需要将文件从本地传输至远程服务器,还是需要将文件从远程服务器传输回本地,都需要借助一些工具来实现这些功能。对于Linux系统管理员来说,需要经常进行文件传输的操作,因此学会如何远程传输文件是非常有必要的。在本文中,我们将为大家介绍一些简单实用的远程文件传送教程,让你轻松掌握Linux远程文件传输技巧。
1.使用SCP命令传送文件
SCP命令是一种使用ssh协议进行远程文件传输的工具。使用SCP命令传输文件非常简单,只需要在终端输入以下命令即可:
“`
scp [options] [source] [destination]
“`
其中,[options]表示传输过程中的一些选项,[source]表示本地文件的路径,[destination]表示远程主机的路径。例如,将本地文件/home/user/example.txt发送到远程服务器192.168.1.100的/home/user目录下:
“`
scp /home/user/example.txt user@192.168.1.100:/home/user/
“`
在输入以上命令后,系统会提示你输入密码(如果有密码)才能进行文件传输。传输文件的速度取决于网络的速度和带宽,一般情况下,传输速度比较快。
2.使用SFTP命令传输文件
SFTP是OpenSSH提供的一种基于SSH协议传输文件的方式。和SCP命令一样,SFTP命令也可以用于在本地和远程主机之间传输文件。SFTP命令使用起来也非常简单,在终端输入以下命令:
“`
sftp [user@]host
“`
在输入以上命令后,系统会提示要求你输入密码(如果有密码)来进行连接。成功连接之后,你就可以使用类似于FTP客户端的命令来传输文件了,例如:
– pwd:查看当前远程主机的工作目录;
– lpwd:查看当前本地主机的工作目录;
– cd:改变远程主机的工作目录;
– lcd:改变本地主机的工作目录;
– put:将本地文件上传到远程主机;
– get:将远程主机的文件下载到本地主机。
例如,将本地文件/home/user/example.txt上传到远程服务器192.168.1.100的/home/user目录下:
“`
sftp user@192.168.1.100
cd /home/user #进入要存储到的目录
put /home/user/example.txt #上传文件
“`
3.使用rsync命令传输文件
rsync命令是一种常用的远程文件同步工具,支持文件的增量备份、文件的压缩传输等操作。与SCP和SFTP不同的是,rsync命令可以实现两个目录之间的同步功能,也可以在本地和远程主机之间进行文件传输。
使用rsync命令传输文件相对来说比较复杂。你需要先安装rsync工具,可以通过以下命令进行安装:
“`
sudo apt-get install rsync
“`
安装完成后,可以在终端输入以下命令进行简单的文件传输:
“`
rsync -avz [source] [destination]
“`
其中,[source]表示本地文件的路径,[destination]表示远程主机的路径。例如,将本地文件夹/usr/example目录下的所有文件和子目录同步到远程服务器192.168.1.100的/home/user目录下:
“`
rsync -avz /usr/example user@192.168.1.100:/home/user/
“`
以上命令中,-a表示以归档模式进行同步,-v表示以详细模式执行,-z表示开启压缩。如果你需要指定SSH连接的端口号,可以使用-P选项进行设置。
以上就是三种简单实用的linux远程文件传送教程。SCP、SFTP和rsync都是Linux系统中非常常用的文件传输工具,对于系统管理员、开发者、运维人员来说,都是必须要熟悉的技能。希望通过本文的介绍,你可以快速掌握这些远程文件传送技巧,提高你的工作效率。
成都网站建设公司-创新互联为您提供网站建设、网站制作、网页设计及定制高端网站建设服务!
操作顺序:1、打开本地终端,输入telnet命令:>> telnet 服务器ip输入用户名 密码 登陆成功2、转到oracle用户下,输入: >> su – oracle>> exp根据Oracle的exp命令提供的到处向导,导出用户需要的数据到dmp文件中 myxxxoutxxx.dmp3、接下来是讲这个dmp文件传到本地两种方式 1、如果服务器端开启了ftpd 或者 sshd ,可以从本地连接过去,把dmp文件下载到本地重新打开一神哪个本地终端>> ftp 服务器ip输入用户名 密码 登陆成功>> cd dmp文件目录的相对路径>> get myxxxoutxxx.dmp2、如果本地服务器开启了相关服务 可以从服务器端上传dmp文件到本地>> cd dmp文件目录的路径>> ftp 服务器ip输入用户名 密码 登陆成功>> put myxxxoutxxx.dmp最后就是本地库穗瞎毁的导入了在终端中输入 imp 根据向导一步一步设置导入或者用开发猜备工具帮助导入
Linux服务器上一般都开放ssh服务方便远程登录,所以可以利用基于ssh的scp协议来上传文件,用这种方法Linux服务器不需要额外设置稿烂,也不需要额外安装软件,只需要保证ssh能够正常登录即可。接下来,然后是Windows客户端,需要在Windows上安装一个WinSCP软件,选择scp协议并且输入ssh登录用户名和密码就可以上传文件了;而如果客户端是Linux系统,则只需要利用Linux上面的scp命令就可以上好唯传了友敬培,scp的上传文件格式是这样的:
scp 本地文件路径 用户名@远程主机IP:远程主机保存上传文件的目录
示例:scp /home/user/putfile root@IP
Linux服务器上一般都开放ssh服务方便远程登录,所以可以利用基于ssh的scp协议来上传文件,用这种方法Linux服务器不需要额外设置稿烂,也不需要额外安装软件,只需要保证ssh能够正常登录即可。接下来,然后是Windows客户端,需要在Windows上安装一个WinSCP软件,选择scp协议并且输入ssh登录用户名和密码就可以上传文件了;而如果客户端是Linux系统,则只需要利用Linux上面的scp命令就可以上好唯传了友敬培,scp的上传文件格式是这样的:
scp 本地文件路径 用户名@远程主机IP:远程主机保存上传文件的目录
示例:scp /home/user/putfile root@IP
put命令 一般的还是ftp 或者winscp
Linux 文件命令精通指南
作者:Sheryl Calish
为刚接触 Linux 文件命令的初学者提供的速成教程
虽然 GUI 桌面(如 KDE 和 GNOME)能够帮助用户利用 Linux 特性,而无需关于命令行接口的功能知识,但还是经常会需要悉租更多的功能和灵活性。而且,基本熟悉这些命令对于在 shell 脚本中正确地使某些功能自动化仍然是必需的。
这篇文章是关于 Linux 文件命令的一个“速成教程”,它是为那些刚接触这个操作系统或者只是需要补充这方面知识的用户提供的。它包含了对一嫌陆余些更有用的命令的一个简明的概述以及关于它们的最强大的应用的指导。芹滚下面包含的信息 — 结合一些实验 — 将使您能够容易地掌握这些基本的命令。(注意:当涉及到一个与 Oracle 集群文件系统 (OCFS) 结合的内核时,这些命令中的某些命令的行为可能会稍微有所不同。在此情况下,Oracle 提供了一个 OCFS 工具集,该工具集可以为文件命令应用提供一个更好的选择。)
注意,这里包含的所有示例都在 SUSE Linux 8.0 Professional 上进行了测试。虽然没有理由相信它们在其它的系统上将不能工作,但如果出现问题,您应当查看您的文档,以了解可能的变化。
背景概念
在深入研究规范之前,让我们回顾一些基础知识。
文件和命令
在 Linux/UNIX 操作系统中,所有事物都被当作文件来处理:硬件设备(包括键盘和终端)、目录、命令本身,当然还有文件。这个奇怪的惯例实际上是 Linux/UNIX 的能力和灵活性的基础。
大多数(几乎是全部)的命令形式如下:
command
获取帮助
最有用的命令之一是那些提供帮助的命令(特别是对那些学习 Linux 的人而言)。Linux 中的两个重要的信息来源是联机参考手册,或 man 页面和 whatis 工具。您可以用 whatis 命令来访问一个不熟悉的命令的 man 页面。
$ whatis echo
要了解关于这个命令的更多信息,可以使用:
$ man echo
如果您不知道某个特殊任务所需的命令,您可以用 man -k (也称为 apropos)和一个主题来生成可能的命令。例如:
$ man -k files
一个很有用但常常被忽视的命令可以提供关于使用 man 本身的信息:
$ man man
您可以用 SPACEBAR 来浏览任意的 man 页面;UP ARROW 将向上翻滚文件。.要退出,则输入 q,!,或 CTRL-Z。
用户类别
记得那句名言“所有动物一例平等但有些动物比其他动物更加平等”吗?在 Linux 世界中,根用户掌管一切。
根用户可以以另一个用户名 su (源自 “superuser”)登录。要执行诸如添加一个新用户、打印机或文件系统之类的任务,必须作为根用户登录或者用 su 命令和根用户密码切换到超级用户。系统文件(包括控制初始化过程的系统文件)归根用户所有。虽然可能允许普通用户对它们进行读操作,但出于系统安全性的原因,编辑的权利将留给根用户。
BASH shell
虽然提供了其它的 shell,但 BASH (Bourne Again Shell) 是 Linux 的默认 shell。它结合了与它同名的 Bourne shell 的特性和 Korn、C 和 TCSH shell 的特性。
BASH 内置的命令 history 默认记录最后输入的 500 条命令。可以通过在命令提示符下输入 history 来查看它们。要检索某个特定的命令,可以在命令提示符下按 UP ARROW 或 DOWN ARROW,或在历史列表中输入它的编号,并在编号前面加上 “!”,例如:
$ !49
您还可以通过一条命令在历史列表中离位置最靠前的项目的距离来执行该命令:如果在历史列表中有 53 个事件,$ !-3 将执行事件号 51。
像 UNIX/Linux 世界的其它 shell 一样,BASH 使用了特殊的环境变量来方便系统管理。例如:
HOME,用户主目录
PATH,Linux 用来搜索您输入的命令的可执行镜像的搜索路径
HISTSIZE,系统保存的历史事件的数量
除了这些保留的关键字之外,您还可以定义您自己的环境变量。例如,Oracle 使用 ORACLE_HOME (还有其它一些变量),要使 Oracle 安装成功完成,必须在您的环境中设置这些变量。
可以在提示符下临时设置变量:
$HISTSIZE=100
或者,在 /etc/profile (需要根用户权限)中进行系统范围的永久设置,或在 .profile 中进行局部永久设置。
可以通过 echo 命令,并用一个 $ 符号来访问一个环境变量的值,进而查看该值。
$ echo $HOME
/home/bluher
可以用 env 命令来查看当前所有的环境变量。
正则表达式和通配符
许多 Linux 命令使用通配符 * 和 ? 来匹配任意数量的字符或分别匹配任意的单个字符;正则模式匹配表达式利用一个句点 (.) 来匹配除“换行符”之外的任意单个字符。这两种情况下都使用方括号 () 来匹配除“*”号之外的字符组。不过,* 号在各种情况下有类似但不同的意义:虽然它在 shell 中将匹配一个或更多的字符,但在正则表达式中,它匹配上述字符的零个或更多的实例。一些命令(如 egrep 和 awk)使用了一组更广泛的特殊字符来进行模式匹配。
文件处理命令
剖析一个文件列表
ls 命令用来查看用户有执行权限的任意目录中的文件列表,该命令有许多有趣的选项。例如:
$ ls -liah *
rw-r–rbluher usersDec 28 18:43 .profile
rw-r–rscalish usersJan 3 20:00 test2.out
925 -rwxr-xr-x 1 scalish usersSeptest.sh
上面的列表显示 8 列:
第 1 列指示文件的 inode,因为我们使用了 -i 选项。剩下的列通过 -l 选项来进行正常显示。
第 2 列显示文件类型和文件访问权限。
第3 列显示链接数,包括目录。
第 4 和第 5 列显示文件的所有者和组所有者。这里,所有者 “bluher” 属于组 “users”。
第 6 列显示文件大小(单位为所显示的单位,而不是默认的字节数,因为我们使用了 -h 选项。
第 7 列显示日期(它看起来像是三列),包括月、日和年,以及当天的时间。
第 8 列显示文件名。在选项列表中使用 -a 将使列表中包含隐藏文件(如 .profile)的列表。
处理文件
可以移动 (mv)、复制 (cp) 或删除 (rm) 文件和目录。明智地使用 -i 选项,以获得确认通常是个不错的主意。
$ cp -i ls.out ls2.out
cpverwrite `ls2.out’?
mv 命令允许使用 -b 选项,这将在移动文件之前作一个备份拷贝。rm 和 cp 接受功能强大但却危险的 -r 选项,它将在一个目录和它的文件上递归执行。
$ rm -ir Test
rm:descend into directory `Test’? y
可以用 mkdir 来创建目录,用 rmdir 来删除目录。不过,因为不能用 rmdir 来删除包含文件的目录,所以使用 rm 加 -r 选项通常要更方便些。
出于安全的原因,所有的文件都有所有权和保护。文件访问权限(或文件模式)包含之前提到的相同的 10 个字符:
之一个字符指示文件类型。最常见的是 – 代表文件,d 代表目录,而 l 代表链接。
接下来的 9 个字符是三种用户类别的访问权限:文件所有者(字符 2-4),用户组 (5-7) 和其它 (8-10),其中 r 表示读权限,w 表示写权限,x 指示一个文件上的执行权限。破折号 – 如果出现在这九个位置的任意一个,则指示这个操作对该类别的用户禁止。
可以使用 chmod 命令通过字符符号或二进制掩码来设置访问权限。要使用二进制掩码,必须将三个权限组的字符表示转换成二进制格式,然后转换成八进制格式:
用户类别: 所有者 用户组 其它
字符表示: rwx r-x r–
二进制表示:
八进制表示:
将写权限赋予用户组,您可以使用:
chmod g+w test.sh or chmod 774 test.sh
用 umask 命令,在 /etc/init.dev 文件中进行系统范围内的、或在 .profile 文件中进行的本地的文件权限默认设置。这个命令指示用 777 减去这个数字来获取默认的权限:
$ umask 022
这将为用户创建的所有新文件生成一个默认的文件权限 755。
可以用 chown 来修改文件的所有权:
$ chown bluher ls.out
这里,bluher 是新的文件所有者。类似地,组成员资格将按以下方式修改:
$ chgrp devgrp ls.out
这里,devgrp 是新的用户组。
ls 不提供哪些文件是文本的,哪些文件是二进制的的信息。要了解这个信息,您可以使用 file * 命令。
重命名文件
赋予一个文件多个名字的两种流行的方法是利用链接和 alias 命令。Alias 可以用来为一个更长的命令重新起一个更方便的名字:
$ alias ll=’ls -l’
$ ll
注意单引号的使用,这使得 BASH 将该项目传递给别名,而不是自己估计它。别名还可用作较长的路径名的缩写:
$ alias jdev9i=/jdev9i/jdev/bin/jdev
关于 alias 和它的反命令 unalias 的更多信息,请查看 BASH 的 man 页面的 “SHELL BUILTIN COMMANDS” 子部分。在最后一个例子中,定义了一个环境变量来实现相同的结果。
$ export JDEV_HOME=/jdev9i/jdev/bin/jdev
$ echo $JDEV_HOME
/jdev9i/jdev/bin/jdev
$ $JDEV_HOME
链接允许几个文件名引用单个源文件,格式如下:
ln fileyouwanttolinkto newname
单独的 ln 命令创建到文件的一个硬链接,而使用 -s 选项来创建一个符号链接。简而言之,一个硬链接几乎不能和原始的文件区分开(除了这两个文件的 inode 将相同之外)。符号链接较容易区分,因为它们出现在一个长的文件列表中,并用 ->; 来指示源文件,l 指示文件类型。
查看和查找文件
文件过滤器
用来读取文件内容和在文件内容上执行操作的命令有时被称为 ¹&滤器。sed 和 awk 命令是两个滤波器的例子,因为在以前的 OTN 文章中有它们详细的讨论,在这里将略过。
诸如 cat、 more 和 less 之类的命令让您能够从命令行查看一个文本文件的内容,而无需调用编辑器。Cat 是 “concatenate” 的缩写,它将默认地在标准输出(显示屏)上显示文件内容。和 cat 一起提供的最有趣的选项之一是 -n 选项,它用编号的输出行来显示文件内容。
$ cat -n test.out
1 This is a test.
因为 cat 一次性输出文件中的所有行,所以您可能更喜欢用 more 和 less,因为它们都一次输出一屏的文件内容。Less 是 more 的一个增强的版本,它允许用来自 vi 文本编辑器的关键命令来增强文件查看。例如,d 向前翻滚、b 向后翻滚 N 行(如果 N 是在 d 或 b 之前指定的)。为 N 输入的值成为随后的 d 命令的默认值。man 页面实用工具使用 less 来显示使用说明的内容。
重定向和管道
重定向允许将命令输出重定向到文件中,而不是标准输出,或者类似地,也可重定向输入。重定向的标准符号 >; 创建一个新的文件。>;>; 符号将输出添加到一个现有的文件中:
$ more test2.out
Another test.
$ cat test.out >;>; test2.out
$ cat test2.out
Another test.
This is a test.
到文件的标准输入可以用 ; 和 2>;>; 来重定向和添加,格式如下:
$ command 2>; name_of_error_file
要避免无意地覆盖一个现有的文件,使用 BASH 内置的命令集:
$ set -o noclobber
可以在命令和输出文件之间用 >;! 符号来重载这个特性。要关闭这个特性,用 +o 代替 -o。
重定向在一个命令和文件之间、或文件和文件之间工作。重定向语句的一项必须是一个文件。
管道使用 |符号,并且在命令之间工作。例如,您可以用以下方式将一个命令的输出直接发送到打印机上:
$ ls -l * | lpr
可以用以下方式快速地找到历史列表中的一个命令:
$ history | grep cat
更多的滤波器
Grep、fgrep 和 egrep 都显示匹配一种模式的行。所有这三个命令都在文件中搜索指定的模式,如果您想不起来一个所需文件的名称,这将非常有用。基本格式是:
grep PATTERN
$ grep -r ‘Subject’ nail
CTRL-Z 将终止上述或其它任何命令。
grep 的最有用的选项可能是 -s。如果您以除根用户之外的任何身份搜索系统文件,那么对于每一个您没有访问权限的文件,都将产生错误消息。这个命令禁止那些消息。
Fgrep(也以 grep -F 调用)只查找固定的字符串,而不是 grep 接收的正则表达式。而 egrep 接收包含更大范围的特殊字符(如 “|”,它指示条件 OR 运算符)的模式。
$ egrep ‘Subject|mailto’ *
查找文件
find 命令的 GNU 版本非常强大、灵活并且比 UNIX 系统上存在的经典版本更具包容性。它对于涉及到目录结构的任务非常有用,包括在文件上查找和执行命令。find 命令的基本格式是:
$ find startdirectory options matchcriteria
如果您知道文件的名称、或者甚至名称的一部分,但不知道它所处的目录,您可以这么做:
$ find .-name ‘test*’
./test
./jdevhome/mywork/EmpWS/EmpBC4J/test
与经典的 UNIX 系统不同,在 Linux 中不需要在末尾添加 -print 操作,因为如果没有指定其它的操作选项,就将假定执行这个操作。在目录起始位置上的一个点 ( . ) 将使 find 在您的工作目录中开始搜索。两个点, ..,在父目录中开始搜索。您可以在任意目录下开始搜索。
注意,您可以使用通配符作为搜索准则的一部分(只要用单引号将整个项目括起来)。
$ find .-name ‘test*’ -print
./test.out
./test2.out
显示拥有 .out 扩展名的一系列文件:
$ find /home -name ‘*.out’
不过记住,除非您是作为超级用户运行这个命令,否则您将可能得到许多的 “ermission denied” 错误消息。
最强大的搜索工具之一是和 grep 一起使用的 -exec 操作:
$ find .-name ‘*.html’ -exec grep ‘mailto:’ {} \;
.,查找一个 html 文件,*.html,并在当前文件上执行 (-exec) grep 命令,{}。当使用 -exec 操作时,需要一个分号 ;,这是用来在使用 find 命令时执行其它一些操作。需要反斜线 \ 和引号来确保这些项目通过 BASH,以使它们由命令而不是 shell 来进行解释。
如果你的远程终端是win可以使用WinSCP工具完成。WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客凳弊亮户端。同时支持SCP协议。它的主要功能就是在本地与远程计算枣宽机间安全的复制文件。
具体步骤可以参考下面图示:
1、配置登录选项
2、建立连接
linux远程文件传送的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux远程文件传送,「简单实用!」Linux远程文件传送教程,我telnet到linux远程主机,请问如何上传文件,如何往linux服务器上传文件,求:linux远程服务器与本地终端文件传输命令的信息别忘了在本站进行查找喔。
四川成都云服务器租用托管【创新互联】提供各地服务器租用,电信服务器托管、移动服务器托管、联通服务器托管,云服务器虚拟主机租用。成都机房托管咨询:13518219792
创新互联(www.cdcxhl.com)拥有10多年的服务器租用、服务器托管、云服务器、虚拟主机、网站系统开发经验、开启建站+互联网销售服务,与企业客户共同成长,共创价值。
本文题目:「简单实用!」Linux远程文件传送教程(linux远程文件传送)
URL标题:http://www.shufengxianlan.com/qtweb/news40/469990.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联