当前位置: 首页 > news >正文

服装 多语言 网站源码电商培训有用吗

服装 多语言 网站源码,电商培训有用吗,织梦网站建设后优化步骤,html网页wordpresstypora-root-url: pictures课程目标 掌握sed的基本语法结构 熟悉sed常用的命令#xff0c;如打印p#xff0c;删除d#xff0c;插入i等 Windows#xff1a;​ Linux#xff1a; vim vi gedit nano emacs 一、sed介绍 1. sed的工作流程 首先sed把当前正在处理的行保存…typora-root-url: pictures课程目标 掌握sed的基本语法结构 熟悉sed常用的命令如打印p删除d插入i等 Windows​ Linux vim vi gedit nano emacs 一、sed介绍 1. sed的工作流程 首先sed把当前正在处理的行保存在一个临时缓存区中也称为模式空间然后处理临时缓冲区中的行完成后把该行发送到屏幕上。 sed把每一行都存在临时缓冲区中对这个副本进行编辑所以不会修改原文件。 Sed主要用来自动编辑一个或多个文件简化对文件的反复操作编写转换程序等。 2. sed使用方法 sed常见的语法格式有两种一种叫命令行模式另一种叫脚本模式。 2.1 命令行格式 格式 sed [option]  sed的命令|地址定位 filename ​ 说明引用shell script中的变量应使用双引号而非通常使用的单引号 ​ option -e 进行多项编辑即对输入行应用多条sed命令时使用 -n 取消默认的输出 -f 指定sed脚本的文件名 -r  使用扩展正则表达式 -i inplace原地编辑修改源文件 常用命令和选项 参考文件 [rootserver shell06]# cat 2.txt root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin 298374837483 172.16.0.254 10.1.1.1 ​ p 打印行 d 删除行 [rootserver ~]# sed -n p a.txt [rootserver ~]# sed -n 1p a.txt [rootserver ~]# sed -n 2p a.txt [rootserver ~]# sed -n 1,5p a.txt [rootserver ~]# sed -n 5,10p a.txt [rootserver ~]# sed -n $p a.txt [rootserver ~]# sed 5p a.txt [rootserver ~]# sed -n 5p a.txt [rootserver ~]# sed 1d a.txt [rootserver ~]# sed -n 1d a.txt [rootserver ~]# sed 1d a.txt [rootserver ~]# sed 1,5d a.txt [rootserver ~]# sed $d a.txt ​ i\ 在当前行之前插入文本。多行时除最后一行外每行末尾需用\续行  vim——O a\ 在当前行后添加一行或多行。多行时除最后一行外每行末尾需用“\”续行 vim—— o c\ 用此符号后的新文本替换当前行中的文本。多行时除最后一行外每行末尾需用\续行  整行替换 ​ [rootserver ~]# sed $a99999 a.txt [rootserver ~]# sed a99999 a.txt [rootserver ~]# cat -n a.txt [rootserver ~]# sed 5chello world a.txt [rootserver ~]# sed chello world a.txt [rootserver ~]# cat -n a.txt [rootserver ~]# sed 1,5chello world a.txt ​ [rootserver ~]# sed i\ aaaaa\ bbbbb\ 88888 1.txt ​ # sed $a\ yyyyy\ 8888 1.txt ​ [rootserver ~]# sed /^user01/c888888 1.txt [rootserver ~]# sed 18chello world 1.txt ​ ​ 命令2 r 从文件中读取输入行 w 将所选的行写入文件 ​ [rootserver ~]# sed 3r /etc/hosts 2.txt [rootserver ~]# sed $r /etc/hosts 2.txt [rootserver ~]# sed /root/w a.txt 2.txt [rootserver ~]# sed /[0-9]{4}/w a.txt 2.txt [rootserver ~]# sed -r /([0-9]{1,3}\.){3}[0-9]{1,3}/w b.txt 2.txt ​ ! 对所选行以外的所有行应用命令放到行数之后[rootserver ~]# sed -n 1!p 1.txt [rootserver ~]# sed -n 4p 1.txt [rootserver ~]# sed -n 4!p 1.txt [rootserver ~]# cat -n 1.txt [rootserver ~]# sed -n 1,17p 1.txt [rootserver ~]# sed -n 1,17!p 1.txt ​ s 用一个字符串替换另一个 g 在行内进行全局替换 ​ [rootserver ~]# sed -n s/root/ROOT/p 1.txt [rootserver ~]# sed -n s/root/ROOT/gp 1.txt [rootserver ~]# sed -n s/^#//gp 1.txt [rootserver ~]# sed -n s/sbin/nologinitcastgp a.txt [rootserver ~]# sed -n s/\/sbin\/nologin/itcast/gp a.txt [rootserver ~]# sed -n 10s#/sbin/nologin#itcast#p a.txt uucp:x:10:14:uucp:/var/spool/uucp:itcast [rootserver ~]# sed -n s/sbin/nologinitcastheimap 2.txt 注意搜索替换中的分隔符可以自己指定 ​ [rootserver ~]# sed -n 1,5s/^/#/p a.txt 注释掉文件的1-5行内容 #root:x:0:0:root:/root:/bin/bash #bin:x:1:1:bin:/bin:/sbin/nologin #daemon:x:2:2:daemon:/sbin:/sbin/nologin #adm:x:3:4:adm:/var/adm:/sbin/nologin #lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin ​ ​保存查找串以便在替换串中引用   \(\) ​ [rootserver ~]# sed -n /root/p a.txt root:x:0:0:root:/root:/bin/bash [rootserver ~]# sed -n s/root/#/p a.txt #root:x:0:0:root:/root:/bin/bash ​ # sed -n s/^root/#/p passwd   注释掉以root开头的行 # sed -n -r s/^root|^stu/#/p /etc/passwd 注释掉以root开头或者以stu开头的行 # sed -n 1,5s/^[a-z].*/#/p passwd 注释掉1~5行中以任意小写字母开头的行 # sed -n 1,5s/^/#/p /etc/passwd 注释1~5行 或者 sed -n 1,5s/^/#/p passwd 以空开头的加上# sed -n 1,5s/^#//p passwd 以#开头的替换成空 ​ [rootserver ~]# sed -n /^root/p 1.txt [rootserver ~]# sed -n s/^root/#/p 1.txt [rootserver ~]# sed -n s/\(^root\)/#\1/p 1.txt [rootserver ~]# sed -nr /^root|^stu/p 1.txt [rootserver ~]# sed -nr s/^root|^stu/#/p 1.txt ​ ​打印行号 # sed -n /bash$/ passwd   打印以bash结尾的行的行号 # sed -ne /root/ -ne /root/p passwd # sed -n /nologin$/;/nologin$/p 1.txt # sed -ne /nologin$/ -ne /nologin$/p 1.txt ​ ​ 综合运用 [rootserver ~]# sed -n 1,5s/^/#/p 1.txt #root:x:0:0:root:/root:/bin/bash #bin:x:1:1:bin:/bin:/sbin/nologin #daemon:x:2:2:daemon:/sbin:/sbin/nologin #adm:x:3:4:adm:/var/adm:/sbin/nologin #lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin ​ [rootserver ~]# sed -n 1,5s/\(^\)/#\1/p 1.txt #root:x:0:0:root:/root:/bin/bash #bin:x:1:1:bin:/bin:/sbin/nologin #daemon:x:2:2:daemon:/sbin:/sbin/nologin #adm:x:3:4:adm:/var/adm:/sbin/nologin #lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin ​ ​ ​ 选项-e -r -i -e 多项编辑 -r 扩展正则 -i 修改原文件 [rootserver ~]# sed -ne /root/p 1.txt -ne /root/ root:x:0:0:root:/root:/bin/bash 1 [rootserver ~]# sed -ne /root/ -ne /root/p 1.txt 1 root:x:0:0:root:/root:/bin/bash ​ 在1.txt文件中的第5行的前面插入“hello world”;在1.txt文件的第8行下面插入“哈哈哈哈” ​ [rootserver ~]# sed -e 5ihello world -e 8a哈哈哈哈哈 1.txt -e 5;8 ​ 过滤vsftpd.conf文件中以#开头和空行 [rootserver ~]# grep -Ev ^#|^$ /etc/vsftpd/vsftpd.conf [rootserver ~]# sed -e /^#/d -e /^$/d /etc/vsftpd/vsftpd.conf [rootserver ~]# sed /^#/d;/^$/d /etc/vsftpd/vsftpd.conf [rootserver ~]# sed -r /^#|^$/d /etc/vsftpd/vsftpd.conf ​ 过滤smb.conf文件中生效的行 [rootserver shell06]# sed -e /^#/d -e /^;/d -e /^$/d -e /^\t$/d -e /^\t#/d smb.conf [rootserver shell06]# sed -r /^(#|$|;|\t#|\t$)/d smb.conf [rootserver shell06]# sed -e /^#/d -e /^;/d -e /^$/d -e /^\t$/d -e /^\t#/ smb.conf ​ ​ [rootserver ~]# grep ^[^a-z] 1.txt [rootserver ~]# sed -n /^[^a-z]/p 1.txt ​ 过滤出文件中的IP地址 [rootserver ~]# grep -E ([0-9]{1,3}\.){3}[0-9]{1,3} 1.txt 192.168.0.254 [rootserver ~]# sed -nr /([0-9]{1,3}\.){3}[0-9]{1,3}/p 1.txt 192.168.0.254 ​ [rootserver ~]# grep -o -E ([0-9]{1,3}\.){3}[0-9]{1,3} 2.txt 10.1.1.1 10.1.1.255 255.255.255.0 ​ [rootserver ~]# sed -nr /([0-9]{1,3}\.){3}[0-9]{1,3}/p 2.txt 10.1.1.1 10.1.1.255 255.255.255.0 过滤出ifcfg-eth0文件中的IP、子网掩码、广播地址 [rootserver shell06]# grep -Eo ([0-9]{1,3}\.){3}[0-9]{1,3} ifcfg-eth0 10.1.1.1 255.255.255.0 10.1.1.254 [rootserver shell06]# sed -nr /([0-9]{1,3}\.){3}[0-9]{1,3}/p ifcfg-eth0|cut -d -f2 10.1.1.1 255.255.255.0 10.1.1.254 [rootserver shell06]# sed -nr /([0-9]{1,3}\.){3}[0-9]{1,3}/p ifcfg-eth0|sed -n s/[A-Z]//gp 10.1.1.1 255.255.255.0 10.1.1.254 ​ [rootserver shell06]# ifconfig eth0|sed -n 2p|sed -n s/[:a-Z]//gp|sed -n s/ /\n/gp|sed /^$/d 10.1.1.1 10.1.1.255 255.255.255.0 [rootserver shell06]# ifconfig | sed -nr /([0-9]{1,3}\.)[0-9]{1,3}/p | head -1|sed -r s/([a-z:]|[A-Z/t])//g|sed s/ /\n/g|sed /^$/d ​ [rootserver shell06]# ifconfig eth0|sed -n 2p|sed -n s/.*addr:\(.*\) Bcast:\(.*\) Mask:\(.*\)/\1\n\2\n\3/p 10.1.1.1 10.1.1.255 255.255.255.0 ​ -i 选项  直接修改原文件 # sed -i s/root/ROOT/;s/stu/STU/ 11.txt [rootserver ~]# sed -i 17{s/YUNWEI/yunwei/;s#/bin/bash#/sbin/nologin#} 1.txt [rootserver ~]# sed -i 1,5s/^/#/ a.txt 注意 -ni  不要一起使用 p命令 不要再使用-i时使用 ​ 总结 sed 选项 sed命令或者正则表达式或者地址定位 文件名 定址用于决定对哪些行进行编辑。地址的形式可以是数字、正则表达式、或二者的结合。如果没有指定地址sed将处理输入文件的所有行。 x   指定x行号 sed -n 5p 1.txt x,y 指定x到y行号 sed -n 1,5p 1.txt /key/ 查询包含关键字的行 sed -n /root/p 1.txt /key1/,/key2/    匹配包含两个关键字之间的行 sed -n /^adm/,/^mysql/p 1.txt /key/,x 从匹配关键字的行开始到文件第x行之间的行包含关键字所在行sed -n /^lp/,7p x,/key/ 从第x行开始到与关键字的匹配行之间的行 x,y! 不包含x到y行 ​ [rootserver ~]# sed -n /bash$/!p 1.txt ​ 注意sed使用的正则表达式是括在斜杠线/之间的模式。 ​ //以下命令是找出以lp开头或者以mail开头的行 ​ 其他命令讲解 y命令 该命令与UNIX/Linux中的tr命令类似字符按照一对一的方式从左到右进行转换。 正则表达式元字符对y命令不起作用。与s命令的分隔符一样斜线可以被替换成其它的字符。 s/xxx/xxx/ y/xxx/xxx/ # sed 39,41y/stu/STU/ /etc/passwd # sed 39,41y/stu:x/STU%/ /etc/passwd ​ q 退出 # sed 5q 1.txt # sed /mail/q 1.txt # sed -r /^yunwei|^mail/q 1.txt [rootserver ~]# sed -n /bash$/p;10q 1.txt ROOT:x:0:0:root:/root:/bin/bash ​ 2.2 脚本格式 用法 # sed -f scripts.sed file //使用脚本处理文件 建议使用   ./sed.sh   file ​ 脚本的第一行写上 #!/bin/sed -f 1,5d s/root/hello/g 3i777 5i888 a p 注意事项 脚本文件是一个sed的命令行清单。commands在每行的末尾不能有任何空格、制表符tab或其它文本。如果在一行中有多个命令应该用分号分隔。不需要且不可用引号保护命令#号开头的行为注释 ​ ​ 示例 # cat passwd stu3:x:509:512::/home/user3:/bin/bash stu4:x:510:513::/home/user4:/bin/bash stu5:x:511:514::/home/user5:/bin/bash ​ # cat sed.sh #!/bin/sed -f 2a\ ****************** 2,$s/stu/user/ $a\ we inster new line s/^[a-z].*/#/ ​ [rootserver ~]# cat 1.sed #!/bin/sed -f 3a********************** $chelloworld 1,3s/^/#/ ​ [rootserver ~]# sed -f 1.sed -i 11.txt [rootserver ~]# cat 11.txt #root:x:0:0:root:/root:/bin/bash #bin:x:1:1:bin:/bin:/sbin/nologin #daemon:x:2:2:daemon:/sbin:/sbin/nologin ********************** adm:x:3:4:adm:/var/adm:/sbin/nologin helloworld ​ 3. sed和正则的综合运用 1、正则表达式必须以”/“前后规范间隔 例如sed /root/d file 例如sed /^root/d file ​ 2、如果匹配的是扩展正则表达式需要使用-r选来扩展sed grep -E sed -r? () {n,m} | \d ​ 注意         在正则表达式中如果出现特殊字符(^$.*/[]),需要以前导 \ 号做转义 egsed /\$foo/p file ​ 3、逗号分隔符 例如sed 5,7d file 删除5到7行 例如sed /root/,/ftp/d file 删除第一个匹配字符串root到第一个匹配字符串ftp的所有行本行不找 循环执行4、组合方式 例如sed 1,/foo/d file 删除第一行到第一个匹配字符串foo的所有行 例如sed /foo/,4d file 删除从匹配字符串”foo“开始到其后四行为止的行 例如sed /foo/,~3d file 删除从匹配字符串”foo“开始删除到3的倍数行文件中 例如sed 1~5d file 从第一行开始删每五行删除一行 例如sed -nr /foo|bar/p file 显示配置字符串foo或bar的行 例如sed -n /foo/,/bar/p file 显示匹配从foo到bar的行 例如sed 1~2d  file 删除奇数行 例如sed 0-2d   file 删除偶数行 sed 1~2!d  file ​ 5、特殊情况 例如sed $d file 删除最后一行 例如sed 1d file 删除第一行6、其他 sed s/.// a.txt 删除每一行中的第一个字符 sed s/.//2 a.txt 删除每一行中的第二个字符 sed s/.//N a.txt 从文件中第N行开始删除每行中第N个字符N2 sed s/.$// a.txt 删除每一行中的最后一个字符 ​ ​ [rootserver ~]# cat 2.txt 1 a 2 b 3 c 4 d 5 e 6 f 7 u 8 k 9 o [rootserver ~]# sed /c/,~2d 2.txt 1 a 2 b 5 e 6 f 7 u 8 k 9 o ​ 4. 课堂练习 将任意数字替换成空或者制表符 去掉文件1-5行中的数字、冒号、斜杠 匹配root关键字替换成hello itcast并保存到test.txt文件中 删除vsftpd.conf、smb.conf、main.cf配置文件里所有注释的行及空行不要直接修改原文件 使用sed命令截取自己的ip地址 使用sed命令一次性截取ip地址、广播地址、子网掩码 注释掉文件的2-3行和匹配到以root开头或者以ftp开头的行 1、将文件中任意数字替换成空或者制表符 2、去掉文件1-5行中的数字、冒号、斜杠 3、匹配root关键字的行替换成hello itcast并保存到test.txt文件中 4、删除vsftpd.conf、smb.conf、main.cf配置文件里所有注释的行及空行不要直接修改原文件 5、使用sed命令截取自己的ip地址 # ifconfig eth0|sed -n 2p|sed -n s/.*addr://pg|sed -n s/Bcast.*//gp 10.1.1.1 # ifconfig eth0|sed -n 2p|sed s/.*addr://g|sed s/ Bcast:.*//g 6、使用sed命令一次性截取ip地址、广播地址、子网掩码 # ifconfig eth0|sed -n 2p|sed -n s#.*addr:\(.*\) Bcast:\(.*\) Mask:\(.*\)#\1\n\2\n\3#p 10.1.1.1 10.1.1.255 255.255.255.07、注释掉文件的2-3行和匹配到以root开头或者以ftp开头的行 # sed -nr 2,3s/^/#/p;s/^ROOT|^ftp/#/p 1.txt #ROOT:x:0:0:root:/root:/bin/bash #bin:x:1:1:bin:/bin:/sbin/nologin #3daemon:x:2:2:daemon:/sbin:/sbin/nologin# sed -ne 1,2s/^/#/gp a.txt -nre s/^lp|^mail/#/gp # sed -nr 1,2s/^/#/gp;s/^lp|^mail/#/gp a.txt 二、课后作业 1、写一个初始化系统的脚本 1自动修改主机名如ip是192.168.0.88则主机名改为server88.itcast.cc a. 更改文件非交互式 sed /etc/sysconfig/network b.将本主机的IP截取出来赋值给一个变量ip;再然后将ip变量里以.分割的最后一位赋值给另一个变量ip1 2自动配置可用的yum源 3自动关闭防火墙和selinux 2、写一个搭建ftp服务的脚本要求如下 1不支持本地用户登录 local_enableNO 2 匿名用户可以上传 新建 删除 anon_upload_enableYES anon_mkdir_write_enableYES 3 匿名用户限速500KBps anon_max_rate500000 仅供参考 #!/bin/bash ipaddrifconfig eth0|sed -n 2p|sed -e s/.*inet addr:\(.*\) Bcast.*/\1/g iptailecho $ipaddr|cut -d. -f4 ipremote192.168.1.10 #修改主机名 hostname server$iptail.itcast.com sed -i /HOSTNAME/cHOSTNAMEserver$iptail.itcast.com /etc/sysconfig/network echo $ipaddr server$iptail.itcast.cc /etc/hosts #关闭防火墙和selinux service iptables stop setenforce 0 /dev/null 21 sed -i /^SELINUX/cSELINUXdisabled /etc/selinux/config #配置yum源(一般是内网源) #test network ping -c 1 $ipremote /dev/null 21 if [ $? -ne 0 ];thenecho 你的网络不通请先检查你的网络exit 1 elseecho 网络ok. fi cat /etc/yum.repos.d/server.repo end [server] nameserver baseurlftp://$ipremote enabled1 gpgcheck0 end#安装软件 read -p 请输入需要安装的软件多个用空格隔开 soft yum -y install $soft /dev/null#备份配置文件 conf/etc/vsftpd/vsftpd.conf \cp $conf $conf.default #根据需求修改配置文件 sed -ir /^#|^$/d $conf sed -i /local_enable/c\local_enableNO $conf sed -i $a anon_upload_enableYES $conf sed -i $a anon_mkdir_write_enableYES $conf sed -i $a anon_other_write_enableYES $conf sed -i $a anon_max_rate512000 $conf #启动服务 service vsftpd restart /dev/null echovsftpd服务启动成功#测试验证 chmod 777 /var/ftp/pub cp /etc/hosts /var/ftp/pub #测试下载 cd /tmp lftp $ipaddr end cd pub get hosts exit endif [ -f /tmp/hosts ];thenecho 匿名用户下载成功rm -f /tmp/hosts elseecho 匿名用户下载失败 fi #测试上传、创建目录、删除目录等 cd /tmp lftp $ipaddr end cd pub mkdir test1 mkdir test2 put /etc/group rmdir test2 exit endif [ -d /var/ftp/pub/test1 ];thenecho 创建目录成功if [ ! -d /var/ftp/pub/test2 ];thenecho 文件删除成功fi elseif [ -f /var/ftp/pub/group ];thenecho 文件上传成功elseecho 上传、创建目录删除目录部okfi fi [ -f /var/ftp/pub/group ] echo 上传文件成功
http://www.zqtcl.cn/news/264251/

相关文章:

  • 网站后台添加表格wordpress垂直分页导航插件
  • 重庆网站建设有限公司六安市裕安区建设局网站
  • 北京产品网站建设如何做移动支付网站
  • 做同城购物网站赚钱吗设计企业网站流程
  • 网站要用什么软件做建设工程施工合同专属管辖
  • 模板网站建设制作佛山正规网站建设哪家好
  • 飞虎队网站建设网络公司起名大全
  • 如何发布自己的网站视频8首页制作代码
  • 网站开发实用案例教程普陀网站制作
  • 建一个网站需要哪些知识招远网站建设
  • 文章标题-栏目名称-网站名 dede环保网站设计建设论文
  • centos wordpress建站北京专门做网站的
  • wordpress网站的彻底清理百度网站联系方式
  • 网站建设签收单网页制作模板的作用
  • 已购买域名 如何做网站网络规划设计师通过率多少
  • 酒店网站建设需求分析wordpress iis
  • 烟台网站建设服务新钥匙网站建设
  • 帝国cms网站地图生成器行业网站建设哪家专业
  • 免费推广网站大全wordpress更改图片大小
  • 中航建设集团网站vps网站无法通过ip访问
  • 学生求职网站的需求分析怎么做江西手机版建站系统开发
  • 电商网站开发文献综述嵌入式软件开发项目
  • 网站备案怎样提交管局网站建设基本步骤
  • 国外优秀电商设计网站开发网站公司推荐
  • 国外企业网站建设模型网站建设谈客户说什么
  • 肖港网站开发公司网站的用途
  • 百度网站置顶怎么做效果图制作设计
  • 自适应企业网站用什么框架做重庆在线观看
  • 网站做301重定向的作用辽宁网站建设电话
  • 抚州市建设局官方网站高端网页设计人才