
Shell脚本
文章平均质量分 83
分享 Linux 下shell脚本的干货
Linux开发那些事儿
这个作者很懒,什么都没留下…
展开
-
终于知道 Shell 中单引号双引号的区别了
在编写 shell 脚本或输入命令时,你可能已经注意到大多数命令都可以使用单引号 或双引号, 这不仅适用于 shell 脚本,而且适用于所有 Bash 命令, 但是两种类型的引号以及 Bash shell 解释它的方式之间存在一定的差异,下面将介绍它们之间的不同单引号用单引号 ’ ' 括起来的字符会保留引号内每个字符的字面值简而言之,shell 将逐字解释单引号内的封闭文本,并且不会插入任何内容,包括变量、反引号、某些 \ 转义符等单引号中的任何字符都没有特殊含义, 当你不想使用转义字符来更改 .原创 2021-11-18 09:00:00 · 962 阅读 · 0 评论 -
挺好用,shell脚本日志技巧
执行shell脚本时,常常会打印一些日志到控制台,根据输出的日志,来判断脚本功能正确与否但是,太多日志打印的话,会让阅读变得很困难,从日志信息里面找到我们关心的那部分也变得很不方便了所以,有一个好用的shell脚本日志接口是非常有必要的,本文将聊聊实践中日志打印的一些技巧常见日志打印方式编写 shell 脚本时,最简单的日志打印是使用 echo输出,比如: 下面是打印一个测试程序的日志[root@VM-0-2-centos ~]# echo "this is a log test..."thi.原创 2021-11-03 08:30:00 · 2328 阅读 · 0 评论 -
10分钟学会Bash调试
shell 是用户和操作系统交互的一个程序,经常用于执行一些自动化或者重复繁琐的任务,现在所有的 Linux 系统基本都自带了该程序,我们只需要编写好shell脚本,直接执行就可以了,不需要额外安装软件、配置编译环境,可以说使用起来非常的方便,但是它在调试方面常常令人头大,本文主要介绍shell脚本常用的调试方法调试常用选项调试shell脚本时,常常用到几个调试选项,让脚本在执行的过程中,会输出一些调试信息,根据调试信息,就可以定位出具体出问题的代码具体的选项以及说明如下:选项说明.原创 2021-11-02 08:30:00 · 1118 阅读 · 0 评论 -
如何隐藏shell脚本内容
从事 Linux 开发的同学,经常需要编写 shell 脚本,有时脚本中会涉及到一些敏感内容,比如一些 IP 地址,用户名以及密码等,或者脚本中有一些关键的代码, 所有这些内容你都不想别人阅读或者修改,更进一步,你希望对脚本设置过期时间,超过指定时间时间之后,脚本就无法使用在不改变脚本内容、功能以及执行方式的情况下,有没有办法实现上面的需求呢?答案是:有的, 在Linux下,我们可以使用 shc这个工具来实现隐藏shell脚本内容以及设置过期时间的目的简介shc是一个通用shell脚本编译器,它将.原创 2021-11-01 08:30:00 · 1312 阅读 · 0 评论 -
shell 脚本中常用的内置变量
在 Bash 解释器中,内置了许多变量,这些变量的功能是解释器自带的,我们在编写shell脚本时如果能灵活的使用它们,对脚本的编写效率以及差错大有帮助, 下面一一介绍这些变量$FUNCNAME、$LINENO、$PWD FUNCNAME和LINENO变量经常用于脚本的调试FUNCNAME表示当前函数的名字,作用范围仅限函数中使用,在函数外无值LINENO表示当前所在脚本中变量出现在的行号PWD表示当前目录, 对应于 pwd命令现有个脚本 a.sh内容如下 1 #!/bin/bash 2.原创 2021-05-12 22:53:57 · 1810 阅读 · 0 评论 -
shell脚本中 /dev/null 的用途
/dev/null是一个特殊的设备文件,它丢弃一切写入其中的数据 可以将它 视为一个黑洞, 它等效于只写文件, 写入其中的所有内容都会消失, 尝试从中读取或输出不会有任何结果,同样,/dev/null在命令行和脚本中都非常有用用途/dev/null通常被用于丢弃不需要的输出流,或作为用于输入流的空文件,这些操作通常由重定向完成,任何你想丢弃的数据都可以写入其中丢弃标准输出在写shell脚本的时候,只想通过命令的结果执行后面的逻辑,而不想命令执行过程中有一大堆中间结果输出,这时候可以把命令执行过程中.原创 2021-10-13 15:53:36 · 380 阅读 · 0 评论 -
如何解决 shell 脚本重复执行的问题
在开发过程中,经常会使用shell脚本去完成定时备份的任务,普遍的做法是通过系统的定时任务定时执行备份脚本设想这样一种场景,本次备份时间到了,自动执行备份脚本,如果备份比较耗时的话,会一直持续到下一次备份时间到了还未结束,下次备份又会自动调用备份脚本,相当于同一时间有两个进程在执行备份脚本,这可能会导致备份数据错乱或其他不可预知的问题更进一步,假如执行备份脚本消耗的时间远大于设置的备份间隔的话,系统会出现多个同时在执行脚本的Bash实例,会占用大量的系统资源,进而影响正常业务程序的运行那如何解决上述.原创 2021-05-19 00:40:44 · 1591 阅读 · 0 评论