1,预备ftp环境
下载最新的ftp客户端:https://filezilla-project.org/ftp/001.png,选择linux下面的版本,如002.png所示:
在window10下面下载,利用wgethttps://sourceforge.net/projects/filezilla/files/FileZilla_Client/3.26.1/FileZilla_3.26.1_i586-linux-gnu.tar.bz2在linux下令行内里下载。
解压缩,tar-xvfFileZilla_3.26.1_i586-linux-gnu.tar.bz2
安装ftp:yuminstallvsftpd-y
启动:servicevsftpdstart
实行ftp下令,报错
[root@hch_test_dbm1_121_62bin]#ftp
-bash:ftp:commandnotfound
[root@hch_test_dbm1_121_62bin]#
直接下载ftp安装包wgethttps://mirror.centos.org/centos/6/os/x86_64/Packages/ftp-0.17-54.el6.x86_64.rpm
然后安装
[root@hch_test_dbm1_121_62soft]#rpm-ivhftp-0.17-54.el6.x86_64.rpm
Preparing...###########################################[100%]
1:ftp###########################################[100%]
[root@hch_test_dbm1_121_62soft]#
安装报错libc.so.6isneededbyftp-0.17-35.el5.i386
去安装rpm–Uvhhttps://mirror.centos.org/centos/6/os/x86_64/Packages/glibc-2.12-1.132.el6.x86_64.rpm
实行ftp操纵
[root@hch_test_dbm1_121_62soft]#ftp
ftp
2,主动登录下载
#!/bin/bash
ftp-n!
open120.132.27.9110000
userdowndataRakudespuH3bAk+ruy
binary
cdup
lcd/home/mysql/binlogs
prompt
mgetmysql-bin*
close
bye
!
3,主动登录上传
#本地的/home/databackuptoftp服务器上的/home/data####
#!/bin/bash
ftp-n!
open192.168.1.171
userguest123456
binary
hash
cd/home/data
lcd/home/databackup
prompt
mput*
close
bye
!
4,涉及的本领
#!/bin/bash
#提取文件名,删除后缀。
file_name="text.gif"
name=${file_name%.*}
echofilenameis:$name
输出结果:
filenameis:test
从右边到左边的匹配操纵:%和%%操纵符的示例
[root@hch_test_dbm1_121_62load_binlog]#filename=mysql-bin.000110.zip
[root@hch_test_dbm1_121_62load_binlog]#name=${filename%.*}
[root@hch_test_dbm1_121_62load_binlog]#echo$name
mysql-bin.000110
[root@hch_test_dbm1_121_62load_binlog]#
看到输出结果是没有.zip的文件名mysql-bin.000110
------------------------------------------------
有些脚本要根据文件名举行各种处理惩罚,偶然间必要保存文件名扬弃文件后缀,也偶然间必要文件后缀不要文件名,这类提取文件部分的操纵利用shell的内建功能就能实现。必要用到的几个操纵符有:%、%%、#、##。
从右向左匹配:%和%%操纵符的示例
#!/bin/bash
#提取文件名,删除后缀。
file_name="text.gif"
name=${file_name%.*}
echofilenameis:$name
输出结果:
filenameis:test
#${VAR%.*}寄义:从$VAR中删除位于%右侧的通配符左右匹配的字符串,通配符从右向左举行匹配。如今给变量name赋值,name=text.gif,那么通配符从右向左就会匹配到.gif,全部从$VAR中删除匹配结果。
#%属于非贪婪操纵符,他是从左右向左匹配最短结果;%%属于贪婪操纵符,会从右向左匹配符合条件的最长字符串。
file_name="text.gif.bak.2012"
name=${file_name%.*}
name2=${file_name%%.*}
echofilenameis:$name
echofilenameis:$name2
输出结果:
filenameis:test.gif.bak//利用%
filenameis:test//利用%%
操纵符%%利用.*从右向左贪婪匹配到.gif.bak.2012
从左向右匹配:#和##操纵符示例
#!/bin/bash
#提取后缀,删除文件名。
file_name="text.gif"
suffix=${file_name#*.}
echosuffixis:$suffix
输出结果:
suffixis:gif
#${VAR#*.}寄义:从$VAR中删除位于#右侧的通配符所匹配的字符串,通配符是左向右举行匹配。
#跟%一样,#也有贪婪操纵符##。
file_name="text.gif.bak.2012.txt"
suffix=${file_name#*.}
suffix2=${file_name##*.}
echosuffixis:$suffix
echosuffixis:$suffix2
输出结果:
suffixis:text.gif.bak.2012//利用#
suffix2is:txt//利用##
操纵符##利用*.从左向右贪婪匹配到text.gif.bak.2012
示例2,界说变量url="www.1987.name"
echo${url%.*}#移除.*所匹配的最右边的内容。
www.1987
echo${url%%.*}#将从右边开始不停匹配到最左边的*.移除,贪婪操纵符。
www
echo${url#*.}#移除*.全部匹配的最左边的内容。
1987.name
echo${url##*.}#将从左边开始不停匹配到最右边的*.移除,贪婪操纵符。
name
作者:猫某人本文地址:https://360admin.cn/jian-shu-an-zhuang-ftp-jian-shu-an-zhuang-guo-jia-fan-zha-zhong-xin-app-liu-cheng发布于08-01
文章转载或复制请以超链接形式并注明出处360站长导航网