linux正则表达式、服务搭建

正则表达式:
定义:
    是指用来描述或者匹配一系列符合某个句法规则字符串的单个字符串。
组成:
    普通字符以及一些特殊字符(称元字符)组成一种文字模式。
作用:
    正则表达式作为一个模板,是将某一个字符模式与所搜索的字符串进行匹配
    主要用于字符串处理,表单验证等场合
分类:
    基本正则表达式:grep
    扩展正则表达式:egrep
----------------------------------------------------------------
'':单引号
功能:屏蔽掉所有特殊字符的意义
  UESR:表示环境变量,值就是当前用户
  例:# touch 'a b$USER'
    结果:a b$USER
"":双引号
功能:只屏蔽空格的意义
  # touch "a b $USER"
    结果:a broot
``:反引号
功能:预先执行引号里面的命令
    例:# echo whichls     结果:whichls
       # echo `which ls`   结果:alias ls='ls --color=auto' /bin/ls
------------------------------------------------------------------------
正则表达式元字符:
    基本正则表达式:. * []^ $ \ {}
    扩展正则表达式:+ ? |()       是基本正则表达式的延伸
.  表示任意一个字符        例a.  
*  表示任意多个前面的字符  例a*   表示0个a或者多个a
\  表示转义字符            例\*   表示 一个*
^  表示开头                例^a   表示以a开头的字符
$  表示结尾                例a$   以a结尾的字符
\<                         例\<good  表示good开头的单词
\>                         例good\>  表示good结尾的单词
\<good\>
[] 字符范围               例[abc]   表示当前位置或者a或者b或者c
               例[^abc]  表示当前位置不是或者a或者b或者c
\{m,n\} 表示字符出现的次数 例a\{m,n\} 表示a匹配m到n次
               例a\{m\}   表示a匹配m次
               例a\{m,\}  表示a匹配m次以上



例:/etc/samba/smb.conf
grep -v '^#'  /etc/samba/smb.conf     表示不显示以#开头的行
grep -v '^#'  /etc/samba/smb.conf | grep-v '^$'   表示不显示以#或者空行
grep -v '^#'  /etc/samba/smb.conf | grep-v '^$'  > a.txt  重定向

+:匹配一个或者多个先前的字符      例:a+ 表示a,aa,等价a\{1,\}  测试需要egrep
  区别:grep 'a+'b.txt  与 egrep'a+' b.txt
?:匹配零个或者一个先前的字符      例: a?  表示0或者a  测试需要egrep
 
例:egrep 'a?' b.txt     可以不含a
    egrep 'aa?' b.txt     至少含有一个a
    egrep 'aaa?' b.txt    至少含有二个a

|:或的关系                         例:x|y   表示匹配x或者y   测试需要egrep
(): 分组符号                        例:ls(a|b|c)v  表示lsav或者lsbv或者lscv



vim:也可以用元字符
例:
 :%s/ */ /g   把一个或者多个空格替换为一个空格
 :%s/ *$//     去掉行尾的所有空格
 :%s/^/ /      每行的开头加入一个空格
 :%s/^[0-9][0-9]*//   去掉开头的数字。
----------------------------------------------------------
NFS(network file system) 网络文件共享
最早是SUN公司开发出来,主要用于类uinx之间的文件共享

服务器名:
    nfs
依赖的服务:
    5.5版本:portmap   /etc/init.d/portmap  restart
    6.2版本:rpcbind   /etc/init.d/rpcbind  restart

软件安装:
    yum install nfs*
配置文件:
    /etc/exports
配置模式:
    共享目录 能访问的客户端(访问参数)
  能访问客户端的表示方式:
    *:允许所有的主机都可以访问
    2.2.2.111:只允许111这个主机访问
    2.2.2.*  表示允许这个网段的主机访问
  访问参数:
    ro:表示只读
    rw:表示读写

配置完后注意事项:
  关闭防火墙
    chkconfig --list iptables   检查防火墙是否关闭
    chkconfig --level iptables off  :关闭防火墙
    chkconfig --level iptable  on   :打开防火墙
    service iptables stop   关闭服务
    或者/etc/init.d/iptablesstop  关闭服务
  关闭selinux
    vim /etc/selinux/config
    SELINUX=disabled
---------------------------------
服务器端的配置
    #vim /etc/exports
     /ule *(ro)
      /share *(rw)
    service nfs restart  重启服务
客户端如何访问:
    showmount -e 2.2.2.133
    mount -t nfs 2.2.2.133:/ule  /mnt
    cd /mnt
    ls
    cp 1st ./
-------------------------------
df -h 查看挂在是否成功

-----------------------------------

FTP:(文件传输协议的简称)
  主要用于在在网络进行文件传输与共享(可跨平台)
常见的FTP服务器软件:
    windows: IIS  SERVER-U
    linux:   WU-FTP PROFTPD  VSFTP
    紅帽用的VSFTP

-------------------------------
服务器名:
    vsftpd

软件安装:
    yum install vsftpd*
使用的端口:
    21
------------------------------
配置文件:
    /etc/vsftpd/vsftpd.conf
--------------------------
FTP用户分类:
1、匿名用户:
    就是登录的时候,无需用户名和密码,或者用户名和密码都是ftp
2、本地用户:
    需要在服务器上创建用户名和密码,然后从客户端登录
3、虚拟帐号:
    把一个真实的服务器用户,虚拟为多个FTP帐号
---------------------------------
配置实例:
  匿名用户仅供下载的配置:
  vim /etc/vsftpd/vsftpd.conf
    :g/^#/d   删除注释

    anonymous_enable=YES   允许匿名用户登录
    anon_root=/ftp         匿名用户登录后的FTP根目录

    注意:download_enable如果有的话,这一项取值不能为NO

    service vsftpd restart  或者 /etc/init.d/vsftpdrestart

客户端访问:
    方法一:命令行 ftp2.2.2.133
        用户名ftp
        密码:ftp
    下载文件get 文件名

    方法二:浏览器:ftp://2.2.2.133

    指定路径下载:
    登录成功,可以用lcd来指定文件下载的路径
    lcd /ule
    get aa

退出:quit
------------------------------------------------
匿名用户上传配置:
    anonymous_enable=YES
    anon_root=/ftp

    anon_upload_enable=YES         匿名用户上传
    anon_mkdir_write_enable=YES   允许匿名用户创建目录
    anon_umask=022                上传文件默认权限
    write_enable=YES                有写的功能

    anon_other_write_enable=YES   允许匿名用户删除

    service vsftpd restart
注意:
    mkdir -p /ftp/upload
    chmod 757 /ftp/upload        不能把ftp的根目录/ftp设置为写的权限,否则ftp不让匿名登录。

   如何上传文件:put 本地文件名(带路经)  ftp文件名
    例:put/etc/fstab   fff
------------------------------------------------------
本地用户的配置:
    本地用户要登录FTP,首先在服务器上要创建本地帐号,并设置密码,才可以登录。

本地用户仅供下载的配置:
    vim /etc/vsftpd/vsftpd.conf

    local_enable=YES      是否允许本地用户登录FTP
    local_root=/ftp       本地用户的FTP根目录
    chroot_local_user=YES 将本地用户锁定在FTP根目录,主要是加强性
    write_enable=NO       所有上传的总开关,

看有没有download_enable 有的话,这一项取值不能为NO

    service vsftpd restart

本地用户上传:
    vim /etc/vsftpd/vsftpd.con
 
        local_enable=YES      是否允许本地用户登录FTP
        local_root=/ftp       本地用户的FTP根目录
        chroot_local_user=YES 将本地用户锁定在FTP根目录,主要是加强
    性

    write_enable=YES       所有上传的总开关
    local_umask=022        创建权限的设置
    service vsftpd restart
----------------------------------------------------
多用户的配置:
  FTP对个用户的要求性不一,如有些用户只能下载,有些用户只能上传,有些用户既能上传又能下载,这时候,可以使用多用户配置。
  多户用配置的一个重要参数:user_config_dir=...

例:tom用户只能上传,jim用户只能下载,mary用户可以上传也可以下载

    #vim /etc/vsftpd/vsftpd.conf
    ------------------
    download_enable=YES
    write_enable=NO        表示大多数只能下载,不可以上传

    ---------------
   
    user_config_dir=/etc/vsftpd/user_config
    用户子配置的目录,如果用户的要求与主配置不一致,就需要这个参数指定的目录中创建子配置文件,子配置文件与用户名同名

    #mkdir -p/etc/vsftpd/user_config

    #vim /etc/vsftpd/user_config/tom
        download_enable=NO
        write_enable=YES

    #vim/etc/vsftpd/user_config/mary
                write_enable=YES

    #service vsftp restart
 
配置详解:
#匿名用户下载
anonymous_enable=YES
anon_root=/ftp
#匿名用户上传
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022
anon_other_write_enable=YES
#本地用户下载
local_enable=YES
local_root=/ftp
chroot_local_user=YES
#本地用户上传
write_enable=NO
local_umask=022
#多用户配置
download_enable=YES
user_config_dir=/etc/vsftpd/user_config











 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值