添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
眉毛粗的柳树  ·  python读取txt为list-掘金·  1 年前    · 
个性的炒饭  ·  Azure App ...·  1 年前    · 
胡子拉碴的松球  ·  mod verto - ...·  1 年前    · 

一、vim自动添加头部注释信息

使用vim的自动 命令 (autocmd),在新建sh文件时添加头部的注释信息。在.vimrc中配置以后,使用vim操作文件的时候就会自动执行一些 命令

在用户home目录下新建.vimrc文件,写入下面的内容,在使用vim新建.sh文件时就会执行函数 SetTitle(),将头部注释信息写入到新建的.sh文件,这在编写脚本时十分方便。

最后一行的:autocmd BufNewFile * normal G 的作用是自动将光标定位到末尾,也方便直接插入即可,不必移动光标来编写。autocmd为所有新建文件都添加头部注释信息,但是对于.sh  .py程序会添加#!有引用解释器,当然你也可以根据你的程序来elseif其他的解释器。

autocmd BufNewFile * exec ":call SetTitle()"
func SetTitle()
if expand("%:e") == 'sh'
    call setline(1,"#!/usr/bin/bash")
elseif expand("%:e") == 'py'
    call setline(1,"#!/usr/bin/python")
endif
call setline(2,"#")
call setline(3,"#********************************************************************")
call setline(4,"#Author:            *")
call setline(5,"#Email:            *@163.com")
call setline(6,"#Date:              ".strftime("%Y-%m-%d"))
call setline(7,"#FileName:          ".expand("%"))
call setline(8,"#Description:      The purpose of the script")
call setline(10,"#********************************************************************")
call setline(11,"#")
call setline(12,"")
endfunc
autocmd BufNewFile * normal G

vim的autocmd的功能十分强大。Vim 为 78 个不同的编辑事件提供通知,这些事件分为八大类:会话启动和清理事件、文件阅读事件、文件编写事件、缓冲更改事件、选项设置事件、窗口相关事件、用户-互动事件和异步通知。可以在命令行中输入vim后,输入:help autocmd-events来查看vim中的autocmd的事件的帮助信息。

二、 Shell Check检查脚本

ShellCheck是一款实用的 shell脚本静态检查工具。可以使用在线的检查地址,https://www.shellcheck.net/,进入网址贴上你的脚本运行检查即可使用。也可以本地安装,推荐后者,命令行中调用 shellcheck yourscript 即可。

拿笔者以前犯错的脚本来测试一下,以前肉眼可找了好久的问题,缺少一个空格!

修改后,再次运行,针对不够完善不够健壮的写法,提供建议。

1、Use $(..) instead of legacy `..`  , 使用$()代替`  `  ;

2、Consider using pgrep instead of grepping ps output,直接使用pgrep来代替ps和grep的结合查找进程;

3、Double quote to prevent globbing and word splitting. Quote this to prevent word splitting. 加上引号或者双引号。

可以在VS Code中安装插件ShellCheck,直接在编辑器中查看ShellCheck建议,以最快速度发现并修复问题。在VS Code中可以实时检查脚本的错误和修改建议,特别是在windows下编写时可能换行符是CRLF,ShellCheck会提示换成LF。

同时,在ShellCheck安装方面遇到一个问题,在基于debian的系统直接apt可以搜索安装到,但是基于 红帽 的系统即使安装了第三方的epel-release以后仍然找不到ShellCheck的rpm包。在koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts (github.com) 上有直接使用容器来操作,可以选择shellcheck或者带有Alpine系统的shellcheck 。但是笔者觉得下载github里面的预编二进制文件直接在本地使用比较好。

本文地址: 其实Shell脚本可以更好 | 《Linux就该这么学》

今天介绍使用的两个方法,提高脚本的可读性和健壮性,帮助写出更好的脚本。一、vim自动添加头部注释信息使用vim的自动命令(autocmd),在新建sh文件时添加头部的注释信息。在.vimrc中配置以后,使用vim操作文件的时候就会自动执行一些命令。在用户home目录下新建.vimrc文件,写入下面的内容,在使用vim新建.sh文件时就会执行函数 SetTitle(),将头部注释信息写入到新建的.sh文件,这在编写脚本时十分方便。最后一行的:autocmd BufNewFile * nor
Shell 是用户与 Linux 或Unix内核通信的工具, shell 编程指的并不是编写这个工具,而是指利用现有的 shell 工具进行编程,写出来的程序是轻量级的 脚本 ,我们叫做 shell 脚本 Shell 的语法是从C语言继承过来的,因此我们在写 shell 脚本 的时候往往能看到c语言的影子。 Shell 脚本 实在是太灵活了,相比标准的Java、C、C++ 等,它不过是一些现有命令的堆叠,这是他的优势也是他的劣势...
PDF shell 脚本 是一种用来操作PDF文件的 脚本 程序。 脚本 程序是一系列命令的集合,通过这些命令可以自动化地完成一些任务。 PDF shell 脚本 通常用于批量处理PDF文件,比如合并多个PDF文件、拆分一个PDF文件成多个文件、提取PDF中的文本内容、添加水印、压缩文件大小等。 使用PDF shell 脚本 可以大大提高处理PDF文件的效率,尤其是在需要对大量PDF文件进行相同操作时,可以通过编写 脚本 程序一次性完成所有的操作,而不需要手动一个一个去操作。 编写PDF shell 脚本 需要具备一定的编程基础,通常使用的是一些 脚本 语言,比如Bash、 Python 等。这些 脚本 语言提供了丰富的库和命令,可以方便地对PDF文件进行操作。 总之,PDF shell 脚本 是一种方便快捷的方式来处理PDF文件,可以通过编写 脚本 程序来实现对PDF文件的自动化操作,提高工作效率。 ### 回答2: PDF shell 脚本 是一种用于处理PDF文件的 脚本 。它通过命令行界面运行,可以在操作系统中自动执行一系列预定义的PDF文件操作。 使用PDF shell 脚本 ,我们可以完成各种PDF文件相关的任务。例如,我们可以使用它来合并多个PDF文件为一个文件,或将一个大的PDF文件分割为多个小的文件。我们还可以使用PDF shell 脚本 来提取PDF文件中的特定页面,或者在PDF文件的特定位置添加水印或签名。 PDF shell 脚本 的优点是简单易用且功能强大。它可以批量处理大量的PDF文件,大大提高了工作效率。同时,由于其基于命令行的特性,我们还可以将PDF shell 脚本 集成到其他自动化工作流程中,从而 更好 地满足我们的需求。 然而,PDF shell 脚本 也有一些局限性。首先,对于不熟悉命令行操作的用户来说,学习和使用PDF shell 脚本 可能需要一些时间和技巧。其次,PDF shell 脚本 并不能满足所有PDF文件操作的需求,特定的操作可能需要使用其他工具或编程语言来完成。 总的来说,PDF shell 脚本 是一种强大的工具,可以帮助我们更高效地处理PDF文件。通过使用它,我们可以实现各种PDF文件操作,从而提升我们的工作效率。 ### 回答3: PDF Shell 脚本 是一种能够自动化处理PDF文件的 脚本 。通过使用 Shell 脚本 语言编写的PDF Shell 脚本 ,我们可以实现一系列自定义功能来处理PDF文件。 首先,PDF Shell 脚本 可以用来合并多个PDF文件。通过调用合适的命令和参数,我们可以将多个PDF文件合并为一个文件,方便查阅和管理。 其次,PDF Shell 脚本 还可以用来拆分PDF文件。通过指定合适的页码范围,我们可以将一个大的PDF文件拆分成小的文件,以便于分享或者只选择需要的部分进行打印。 此外,PDF Shell 脚本 还可以用于提取PDF文件中的文本内容。我们可以使用适当的命令和过滤器来提取PDF中的文字,并保存为普通的文本文件,方便进一步处理和分析。 另外,PDF Shell 脚本 还可以用于加密和解密PDF文件。通过指定正确的密码和参数,我们可以对PDF文件进行加密,以确保文件的安全性。同时,我们还可以使用 Shell 脚本 对加密的PDF文件进行解密。 除了上述功能,PDF Shell 脚本 还可以用来提取和插入PDF文件的元数据,调整PDF页面的大小和方向,添加水印,压缩PDF文件大小等。 总而言之,PDF Shell 脚本 是一种非常强大和灵活的工具,可以让我们对PDF文件进行各种操作和处理。无论是在个人使用还是在工作中,通过编写适合自己需求的PDF Shell 脚本 ,我们可以更高效地处理和管理PDF文件。