sftp、nohup、lftp、scp命令
sftp:sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,他的使用方式和ftp类似。但是他使用ssh作为传输协议,所以安全性要比ftp好的多。常用方式格式: sftp通过sftp连接,端口为交替的22,用户为Linux当前登录用户。格式:sftp -oPort =通过sftp连接,指定端口,用户为Linux的当前登录用户。格式:SFTP <用户> ...
sftp:
sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,他的使用方式和ftp类似。但是他使用ssh作为传输协议,所以安全性要比ftp好的多。
常用方式
格式: sftp
通过sftp连接,端口为交替的22,用户为Linux当前登录用户。
格式:sftp -oPort =
通过sftp连接,指定端口,用户为Linux的当前登录用户。
格式:SFTP <用户> @ <主机>
通过SFTP连接<主机>,端口为默认的22,指定用户<用户>。
格式:SFTP -oPort = <端口> <用户> @ <主机>
通过sftp连接<主机>,端口为<端口>,用户为<用户>
。sftp>帮助
可用命令:
cd路径更改远程目录到“路径”
lcd路径更改本地目录到“路径”
chgrp group path将文件“ path”的组更改为“ group”
chmod mode path将文件“ path”的权限更改为”模式”
chown owner path将文件“ path”的属主更改为“ owner”
退出sftp
帮助显示此帮助文本
获取
现有路径中的远程路径下载文件linkpath符号链接远程文件l
[ 菜单] [路径]显示远程目录列表
lls [选项] [路径]显示本地目录列表
mkdir路径创建远程目录
lmkdir路径创建本地目录
mv oldpath newpath移动远程文件
打开[用户@]主机[:端口]连接到远程主机
put本地路径上的文件
pwd显示远程工作目录
lpwd打印本地工作目录
退出退出sftp
rmdir路径可移动远程目录
lrmdir路径可移动本地目录
rm路径删除远程文件
lrm路径删除本地文件
符号链接现有路径linkpath符号链接远程文件
版本显示协议版本
例子:
SFTP -oPort = 33333 admin@192.168.1.1 //带端口登录
例子2:
[root @ localhost〜]#sftp 192.168.1.181
正在连接到192.168.1.181 …
root@192.168.1.181的密码:
sftp> ls -l * .gz
-rw-r–r-- 0 0 0 7770116 2010年5月14日mini.tar.gz
sftp> lls * .gz
cn.tar.gz ct08.min.tar.gz文件.20101216a.tar.gz
sftp>获取mini.tar.get
无法统计远程文件:没有这样的文件或目录
找不到文件“ /root/mini.tar.get”。
sftp> ^ [[A
无效的命令。
sftp>获取mini.tar.gz
将/root/mini.tar.gz提取到mini.tar.gz
/root/mini.tar.gz 100%7588KB 7.4MB / s 00:01
sftp> lls mini.tar.gz -l
-rw-r–r-- 1个根目录7770116 04-03 15:20 mini.tar.gz
sftp>退出
nohup:
用法:nohup 命令 [参数]…
或:nohup 选项
忽略挂起信号运行指定的命令。
--help 显示此帮助信息并退出
--version 显示版本信息并退出
如果标准输入是一个终端,重定向自/dev/null。
如果标准输出是一个终端,尽可能将输出添加到"nohup.out",
否则添加到"$HOME/nohup.out"。
如果标准错误输出是一个终端,重定向它到标准输出。
要保存输出内容到一个文件,使用 “nohup COMMAND > FILE” 形式的命令。
注意:您的shell 内含自己的nohup 程序版本,它会覆盖这里所提及的相应
版本。请查阅您的shell 文档获知它所支持的选项
例子:
[root@localhost test]# nohup crontab_php.sh test & #退出后继续执行sh文件
例子2:
nohup crontab_php.sh >test 2>&1 &
例子说明:
#退出后继续执行sh文件,将标准错误2重定向到标准输出1,然后将标准输出导入文件,结果就是包含了标准输出和标准输入
例子3:
nohup ./program >/dev/null 2>&1 & #后台运行程序,并将所有日志丢弃
lftp:
用法: lftp [OPTS] lftp' 是在 rc 文件执行后 lftp 执行的第一个命令 -f <file> 执行文件中的命令后退出 -c <cmd> 执行命令后退出 --help 显示帮助信息后退出 --version 显示 lftp 版本后退出 其他的选项同
open’ 命令
-e 在选择后执行命令
-u [,] 使用指定的用户名/口令进行验证
-p 连接指定的端口
主机名, URL 或书签的名字
【LFTP内部命令】
就可以看到命令列表
下面我们看一下lftp常用的命令:
ls 显示远端文件列表(!ls 显示本地文件列表)。
cd 切换远端目录(lcd 切换本地目录)。
get 下载远端文件。
mget 下载远端文件(可以用通配符也就是 *)。
pget 使用多个线程来下载远端文件, 预设为五个。
mirror 下载/上传(mirror -R)/同步 整个目录。
put 上传文件。
mput 上传多个文件(支持通配符)。
mv 移动远端文件(远端文件改名)。
rm 删除远端文件。
mrm 删除多个远端文件(支持通配符)。
mkdir 建立远端目录。
rmdir 删除远端目录。
pwd 显示目前远端所在目录(lpwd 显示本地目录)。
du 计算远端目录的大小
! 执行本地 shell的命令(由于lftp 没有 lls, 故可用 !ls 来替代)
lcd 切换本地目录
lpwd 显示本地目录
alias 定义别名
bookmark 设定书签。
exit 退出ftp
例子:
[zhangy@BlackGhost ~]$ lftp zhangying:*******@192.168.1.5:21 #ftp连接
lftp> get test.php 下载文件
lftp> put test.php 上传文件
lftp> mirror -R www 上传目录
lftp> mirror www 下载目录
lftp> mget *.c 将远端工作站中,扩展名为 c 之所有文件,拷贝到本地工作站中
lftp> mput *.txt 将本地工作站中,扩展名为 txt 之所有文件,拷贝到远端工作站中
lftp> prompt 切换交互式指令(使用 mput/mget 时不用每个文件皆询yes/no)
lftp> binary 设定以二进制方式传送文件
lftp> ascii设定以ASCII方式传送文件(缺省值)
lftp> status 显示当前FTP状态
lftp> close关闭远程连接
lftp> quit 结束 ftp 工作
lftp> bye 结束 ftp 工作
scp命令:
SCP 命令语法
scp [-1245BCpqrv] [-c cipher] [F ssh_config] [-I identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:] file1 […] [[suer@]host2:]file2
SCP 命令说明
Scp在主机间复制文件。他使用 ssh(1)作为数据传输。而且用同样认证和安全性。 scp将在认证中请求输入密码所有的文件可能需要服务器和用户的特别描述来指明文件将被复制到/从某台服务器。两个远程登录的服务器间的文件复制是允许的。
SCP 命令选项
-1 强制scp 用协议1
-2 强制scp 用协议2
-4 强制scp用IPV4的网址
-6 强制scp用IPV6的网址
-B 选择批处理模式(防止输入密码)
-C 允许压缩。 标注-C到ssh(1)来允许压缩
-c cipher选择cipher来加密数据传输。这个选项直接传递到ssh(1)
-F ssh_config设定一个可变动的用户配置给ssh.这个选项直接会被传递到ssh(1)
-i identity_file选择被RSA认证读取私有密码的文件。这个选项可以直接被传递到ssh(1)
-l limit限制传输带宽,也就是速度 用KByte/s的速度
-o ssh_option 可以把ssh_config中的配置格式传到ssh中。这种模式对于说明没有独立的scp文件中断符的scp很有帮助。关于选项的如下。而他们的值请参看ssh_config(5)
-P port 指定连接远程连接端口。注意这个选项需要写成大写的模式。因为-p已经早保留了次数和模式
-S program 指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-p 指定修改次数,连接次数,还有对于原文件的模式
-q 把进度参数关掉
-r 递归的复制整个文件夹
-S program 指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
-V 冗余模式。 让 scp 和 ssh(1) 打印他们的排错信息, 这个在排错连接,认证,和配置中非常有用。
例子:
[root@localhost www]# scp -r tank@192.16.1.108:/var/www/blog /home/www/blog #以tank用户登录并将服务器文件夹copy到本地
[root@localhost www]# scp /home/www/blog/index.php 192.16.1.108:/var/www/blog #将本地文件copy到服务器,添填写用户,默认当前用户
例子2:
[root@localhost test]# scp -P 20022 -r …/vhost/ zhuqiang@192.168.0.200:/home/test/
例子3:
使用证书登录,并递归的将远程目录下载到本地,同时指定了所需要的端口号。
sudo scp -r -i /Users/test/wx_Document/private.crt -P 2323 root@10.135.178.6:/data/htdocs/www/logs /Users/local
例子4:
#这就是把192.16.1.108服务器的blog拷贝到当前服务器的当前目录下
scp -r root@192.16.1.108:/var/www/blog .
例子5:
scp icons.png root@192.168.1.1:/root/下载 #本机文件,copy远程服务器
更多推荐
所有评论(0)