在工作中遇到的问题,此nginx.sh配置脚本是我在Googel下载下来的,实际复制贴貼到服务器中运行时发现前面都有 001-100的行标识符,外带空格,影响运行和美观啊;本来想一行行删除,后来不禁自己也鄙视自己:这也太没技术含量了吧?具体解决方法如下:

①首先在 vim里删除所有行首数字,如下所示:

:%s/^[0-9][0-9]* //

②然后再删除所有行首空字符,如下所示:

sed -i  's/^[[:space:]]*//' nginxd.sh

整个nginxd.sh脚本如下,有兴趣的朋友也拿着练下手。

001     #!/bin/sh
002
003     # source function library
004     . /etc/rc.d/init.d/functions
005
006     # Source networking configuration.
007     . /etc/sysconfig/network
008
009     # Check that networking is up.
010     [ ${NETWORKING} = "no" ] && exit 0
011
012     RETVAL=0
013     prog="nginx"
014
015     nginxDir=/usr/local/nginx
016     nginxd=$nginxDir/sbin/nginx
017     nginxConf=$nginxDir/conf/nginx.conf
018     nginxPid=$nginxDir/nginx.pid
019
020     nginx_check()
021     {
022         if [[ -e $nginxPid ]]; then
023             ps aux |grep -v grep |grep -q nginx
024             if (( $? == 0 )); then
025                 echo "$prog already running..."
026                 exit 1
027             else
028                 rm -rf $nginxPid &> /dev/null
029             fi
030         fi
031     }
032
033     start()
034     {
035         nginx_check
036         if (( $? != 0 )); then
037             true
038         else
039             echo -n $"Starting $prog:"
040             daemon $nginxd -c $nginxConf
041             RETVAL=$?
042             echo
043             [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
044             return $RETVAL
045         fi
046     }
047
048     stop()
049     {
050         echo -n $"Stopping $prog:"
051         killproc $nginxd
052         RETVAL=$?
053         echo
054         [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx $nginxPid
055     }
056
057     reload()
058     {
059         echo -n $"Reloading $prog:"
060         killproc $nginxd -HUP
061         RETVAL=$?
062         echo
063     }
064
065     monitor()
066     {
067         status $prog &> /dev/null
068         if (( $? == 0 )); then
069             RETVAL=0
070         else
071             RETVAL=7
072         fi
073     }
074
075     case "$1" in
076             start)
077                     start
078                     ;;
079             stop)
080                     stop
081                     ;;
082             restart)
083                     stop
084                     start
085                     ;;
086             reload)
087                     reload
088                     ;;
089             status)
090                     status $prog
091                     RETVAL=$?
092                     ;;
093             monitor)
094                     monitor
095                     ;;
096             *)
097                     echo $"Usage: $0 {start|stop|restart|reload|status|monitor}"
098                     RETVAL=1
099     esac
100     exit $RETVAL

另注:如果单纯只用sed来执行的话就比较简单了,如下所示的一句命令就可以搞定需求了:

sed -i -e 's@^[0-9][0-9]*@@ ' -e 's@^[[:space:]]* @@' nginx.sh

巧用vim+sed整理shell脚本文件相关推荐

  1. 使用Vim编辑运行shell脚本文件的经典步骤

    [操作步骤] 1.输入命令 vim test 进入Vim文本编辑器界面.示例shell脚本文件test的内容如下: #!/bin/bash # This script displays the dat ...

  2. Vim编辑器与shell脚本(.sh)

    vim.vi编辑器 三个模式 命令模式 输入模式 行末模式 命令模式下可以通过dd,yy,/s/*/*等来进行删除,复制,替换,剪切等操作 输入模式:a,i,o , a,i的使用方法相仿,前者在光标当 ...

  3. vi新建一个shell脚本_Linux Vim 编辑器编写 Shell 脚本

    Vim 编译器 Vim 文件编译器是编写文件的好工具,它包括以下 3 种模式: 命令模式:移动光标,对文本进行增删查改等操作: 输入模式:向文件中输入文本: 末行模式:保存或退出文档,设置编辑环境. ...

  4. Vim编辑器与shell脚本

      目录                                                          Vim文本编辑器 Shell脚本 Shell编程变量 流程控制语句 计划任务 ...

  5. linux执行加密的shell,Linux下Shell脚本文件的加密

    一些站长会对自己编写的网页文件进行加密,以免自己辛辛苦苦写出来的成果被盗用.而Linux程序员编写的Shell脚本文件,也是可以加密的.这样做的好处除了防止被盗用,还可以防止自己脚本文件中的密码泄露, ...

  6. xml文件、jsp文件、sql文件、shell脚本文件注释

    一,各种文件如何注释: 1.xml文件注释 注释以 <!-- 开始并以 --> 结束, 例如 <!--注释内容-->. 2.jsp文件注释 2. 1. html注释:      ...

  7. linux下执行shell脚本文件,Linux下使用shell脚本自动执行脚本文件

    搜索热词 以下实例本人在Centos6.5 64位操作系统中使用 一.定时复制文件 a.在/usr/local/wfjb_web_back目录下创建 tomcatBack.sh文件 #将tomcat中 ...

  8. linux 用shell脚本文件,Linux必须掌握的shell脚本基础

    1. shell 基本语法 shell: shell 是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用 ...

  9. Vim编辑器和Shell脚本命令,条件和逻辑测试语句

    Vim编辑器 Vim编辑器用于编辑文本文件内容,是vi编辑器的升级版,与Vi相比,Vim编辑器有代码着色. 着色功能:用于排错,避免错误参数的产生 vim编辑器的3种模式: 1.>命令模式:控制 ...

最新文章

  1. 为什么vs数据库中文显示问号_本科论文知网不收录为什么会被知网查重到?
  2. 令人郁闷的discuz!个人空间过滤机制
  3. 服务发现技术选型那点事儿
  4. 【linux】 -设备名称与文件目录
  5. LeetCode 1886. 判断矩阵经轮转后是否一致
  6. Win10启用linux子系统(Linuxer福利)
  7. C++序列式容器(STL序列式容器)
  8. 去掉GaussView 3.07启动警告窗口的完整解决方案
  9. 农业物联网行业调研报告 - 市场现状分析与发展前景预测
  10. 韩文、日语相关 文档扫描识别 的福音
  11. 漫谈区块链“羊群效应”
  12. 载硫酸庆大霉素PLGA纳米粒PNPs(GS修饰PLGA纳米粒)/cRGD修饰PLGA纳米粒的制备方法
  13. Windows XP 上使用pyqt5 + pyinstaller
  14. mysql常用增删改查命令总结
  15. ILSSI|六西格玛DMAIC的历程
  16. 文本和输入:复制和粘贴
  17. linux可以打开浏览器嘛,Linux下怎样可以打开浏览器?
  18. P4 程序设计语法学习
  19. subster函数的详细说明
  20. 在html中如何做个人微博,学习记录:爬取个人微博

热门文章

  1. JMeter对数据库的更新操作
  2. JMeter使用命令行模式生成HTML测试报告
  3. mysql user表字段详解_Mysql User表权限字段说明全介绍
  4. catia曲面设计从入门到精通_CATIA V5 曲面设计从入门到精通
  5. 推挽输出和开漏输出_平台/输入amp;输出
  6. 手摸手,一起整理前端小小小知识
  7. 属于微型计算机主要性能指示,2014年兰大入学测试题--计算机基础
  8. java des 0填充方式_DES填充方式与初始向量IV的作用
  9. feign直接走熔断_SpringCloud基于OpenFeign实现服务熔断降级
  10. object string java_Object类和String类