我理解的是你想把奇数行加上.1, .2, .3等等
创建一个文本文件, 内容如下
{
if(NR%2==1)
{
$1=$1"."i++
}
print $0
}加入这个文件叫做1.awk
运行下面这个命令即可: awk -f 1.awk -v i=1 data.txt >result.txt1、正则表达式和通配符有点像。区别在于通配符匹配的是文件名和目录名中的字符串,不能匹配文本中内容的字符串。而正则表达式匹配的是文本中的字符串。
2、正则表达式(REGEXP):由一类特殊字符及文本符号所编写的表达式,这种表达式的功能是匹配文本当中字符串。
3、正则表达式的特点:可以通过特殊字符及文本符号灵活组合各种过滤条件去匹配文本内容,从而达到自由度颇高的筛查方式。
4、正则表达式分两类:基本正则表达式(BRE)、扩展正则表达式(ERE),grep 加上 -E 参数就是使用 egrep。
5、元字符分类:元字符是指正则表达式中使用的特殊字符,这些特殊符号具有特定的功能。从功能上分类有:字符匹配、匹配次数、位置锚定、分组。
①、 .:匹配任意单个字符。
②、 [ ]:匹配指定范围内的任意单个字符。
③、 [^]:排除匹配指定范围内的任意单个字符。
④、 [:alnum:]:过滤字母和数字,包含了大写字母、小写字母 和 10个数字(0-9)。
⑤、 [:alpha:]:任何英文大小写字符,即 A-Z,a-z。
⑥、 [:lower:]:只过滤小写字母。
⑦、 [:upper:]:只过滤大写字母。
⑧、 [:blank:]:空白字符(空格和制表符)。
⑨、 [:space:]:水平和垂直的空白字符(比 [:blank:] 包含的范围广)。
⑩-①、 [:digit:]:十进制数字。
⑩-③、 [:graph:]:可打印的非空白字符。
⑩-④、 [:print:]:可打印字符。相当于 [:alnum:]、[:punct:] 和 space。
⑩-⑤、 [:punct:]:标点符号。1、新建系统用户
useradd vsftpd -s /sbin/nologin
限制vsftpd用户登录,此用户将最为vsftpd服务的宿主用户
useradd ftp -s /sbin/nologin
这里是Vsftpd虚拟宿主用户,默认情况下这个用户应该有。
当然这些用户你可以用另外的名字。
2、修改vsftpd的配置。anonymous_enable=NO #设定
不允许匿名访问
local_enable=YES #设定本地用户可以访问。如果设定为NO那么所有虚拟用户将无法访问。
write_enable=YES #设定可以进行写 *** 作。
local_umask=022 #设定上传后文件的权限掩码。
anon_upload_enable=NO #禁止匿名用户上传。
anon_mkdir_write_enable=NO #禁止匿名用户建立目录。
dirmessage_enable=YES #设定开启目录标语功能。
xferlog_enable=YES #设定开启日志记录功能。
connect_from_port_20=NO #禁止端口20进行数据连接。这里用被动模式
chown_uploads=NO #设定禁止上传文件更改宿主。
xferlog_file=/var/log/vsftpd.log #设定Vsftpd的服务日志保存路径
xferlog_std_format=YES #设定日志使用标准的记录格式。
idle_session_timeout=600 #设定空闲连接超时时间
nopriv_user=vsftpd #设定支撑Vsftpd服务的宿主用户
async_abor_enable=YES #设定支持异步传输功能
ascii_upload_enable=YES
ascii_download_enable=YES #设定支持ASCII模式的上传和下载功能
ftpd_banner=vsftpd #设定Vsftpd的登陆标语
chroot_list_enable=NO #禁止用户登出自己的FTP主目录
ls_recurse_enable=NO #禁止用户登陆FTP后使用“ls -R”的命令,占用资源
listen=YES #设定该Vsftpd服务工作在StandAlone模式
#新增配置
pam_service_name=vsftpd #设定PAM服务下Vsftpd的验证配置文件名
userlist_enable=YES #设定userlist_file中的用户将不得使用FTP
tcp_wrappers=YES #设定支持TCP Wrappers
guest_enable=YES #设定启用虚拟用户功能
guest_username=ftp #指定虚拟用户的宿主用户
virtual_use_local_privs=YES #设定虚拟用户的权限符合他们的宿主用户
user_config_dir=/etc/vsftpd/vconf #设定虚拟用户个人Vsftp的配置文件存放路径
3、新建用户
touch /etc/vsftpd/user_list
#写入
testuser #用户名
123456 #密码
4、生成数据文件
db_load -T -t hash -f /etc/vsftpd/user_list /etc/vsftpd/user.db
5、修改pam。
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login
必须把这两条插入#%PAM-1.0后面,其中sufficient表示充分条件,如果通过了,同类型的验证就不需要了。
6、配置虚拟用户。
按照上面的用户配置对应的文件,
touch /etc/vsftpd/vconf/testuser
新建虚拟用户的目录:
mkdir /opt/vsftp/virtuser &&chown root.ftp /opt/vsftp/virtuser
用户登录后会限制在这个目录里面做读写 *** 作。
vsftpd配置完成。
评论列表(0条)