随笔分类 -  shell

1
摘要:在看一个mysql的helm-charts的时候,看到一段shell代码,才发现原来shell也能支持正则匹配。那很多场景就不需要用awk,grep这些了,会简洁很多。 demo1 if [[ abcfoobarbletch =~ 'foo(bar)bl(.*)' ]] then echo The 阅读全文
posted @ 2022-04-17 14:00 沄持的学习记录 阅读(2521) 评论(0) 推荐(0)
摘要:官方文档:https://www.gnu.org/software/parallel/parallel_tutorial.html 安装 安装完成后就是一个一万多行的perl脚本,把脚本复制到其他机器一样可以用。 各种应用请查看官方文档。 各种参数请查看man文档。 这里引用random233的博客 阅读全文
posted @ 2018-12-12 09:41 沄持的学习记录
摘要:定义数组 打印数组 赋值 删除 截取 阅读全文
posted @ 2018-02-13 15:59 沄持的学习记录
摘要:正在执行的脚本用ctrl+z暂停,然后jobs查看后台作业号,然后bg+[作业号]挂到后台执行,或者fg+[作业号]拉到前台继续执行。 阅读全文
posted @ 2017-03-14 09:34 沄持的学习记录
摘要:转自:https://zhidao.baidu.com/question/357781350.html 追问 为什么可以写成这样3<afile ,而不是exec 3<afile,而且不写在循环的前面呢? 追问 为什么可以写成这样3<afile ,而不是exec 3<afile,而且不写在循环的前面呢 阅读全文
posted @ 2017-02-18 23:17 沄持的学习记录
摘要:转自:http://blog.sina.com.cn/s/blog_605f5b4f0101azuc.html 创建命名管道的方法为:mkfifo pipe_name。 这样就能创建一个命名的管道pipe_name。 运行命令并把输出重定向到管道并扔后台(否则会hang住):cmd > pipe_n 阅读全文
posted @ 2017-02-18 23:14 沄持的学习记录
摘要:eval shell的内建命令exec将并不启动新的shell,常用来替代当前 shell 并重新启动一个 shell,换句话说,并没有启动子 shell。使用这一命令时任何现有环境都将会被清除。 不过,要注意一个例外,当exec命令来对文件描述符操作的时候,就不会替换shell,而且操作完成后,还 阅读全文
posted @ 2017-02-18 23:10 沄持的学习记录
摘要:在脚本里用&后台打开多个子进程,用wait命令可以使这些子进程并行执行。 例1: 例2: 例3: 用管道fifo文件来处理并发,本例转自https://my.oschina.net/sanpeterguo/blog/133304 相关知识: read -u的介绍:https://www.cnblog 阅读全文
posted @ 2017-02-18 22:37 沄持的学习记录
摘要:trap捕捉信号有三种形式 第一种:trap "commands" signal-list 当脚本收到signal-list清单内列出的信号时,trap命令执行双引号中的命令. 注:单引号和双引号是不同的,当shell程序第一次碰到trap语句时,将把commands中的命令扫描一遍。此时若comm 阅读全文
posted @ 2017-02-07 10:24 沄持的学习记录 阅读(10305) 评论(0) 推荐(0)
摘要:查看本机shell 信息: bash初始化顺序: bash退出时执行脚本: 历史命令 子shell中执行 阅读全文
posted @ 2016-12-01 10:52 沄持的学习记录
摘要:安装expect bash脚本使用expect自动应答 exp脚本 expect多次匹配 脚本变量 timeout 阅读全文
posted @ 2016-11-15 17:44 沄持的学习记录
摘要:字段引用: 内置变量: 关系操作符: 逻辑操作符 运算符 awk可以运算浮点数 练习 时间可以直接比较 BEGIN和END printf格式化输出 字符匹配 字符串函数 阅读全文
posted @ 2016-10-28 14:28 沄持的学习记录
摘要:语法: 函数调用: main() 调试函数 阅读全文
posted @ 2016-10-27 09:16 沄持的学习记录
摘要:语法: 阅读全文
posted @ 2016-10-26 21:31 沄持的学习记录
摘要:; ——前面执行完,不管成功与否,都执行后面 && ——前面执行完,前面执行成功了,才执行后面 || ——前面执行完,前面执行失败了,才执行后面 阅读全文
posted @ 2016-10-26 20:21 沄持的学习记录
摘要:if语法: case语法: 判断文件: test或者[],test -e $file或[ -e $file ] 文件权限判断: 两个文件比较判断: 整数之间的判断: 字符串之间的判断: 多重条件判断: 阅读全文
posted @ 2016-10-26 20:14 沄持的学习记录
摘要:1、查看TCP/UDP的端口号: netstat -tupln 2、根据端口查看运行的进程: 方法1: netstat -anp|grep 3030 方法2: lsof -i :22 3、查看进程名运行的端口号: netstat -anp|grep 进程名 4、查看进程信息 netstat -tln 阅读全文
posted @ 2016-10-26 11:19 沄持的学习记录
摘要:| #管道 echo password | passwd --stdin root #修改root用户密码 cut -d"分隔符" -f列数 -c4-7 截取第4到7字符 grep -v 取反 -e 执行转义字符 \a 发出警告声; \b 删除前一个字符; \c 最后不加上换行符号; \f 换行但光 阅读全文
posted @ 2016-10-16 22:24 沄持的学习记录
摘要:$() #执行命令,返回结果 `` #同上 $(()) #运算算式,返回结果 $[] #同上 ${} #变量引用 [[]] #比较条件的匹配符号 阅读全文
posted @ 2016-10-16 21:51 沄持的学习记录
摘要:变量: a=1 echo $a 系统变量: echo $HOME echo $USER env #查看所有环境变量 set #查看自定义变量 ~/.bash_logout #用户登出后执行 ~/.bash_profile #用户设定环境变量的文件 ~/.bashrc #设定别名的文件 /etc/ba 阅读全文
posted @ 2016-10-16 21:40 沄持的学习记录

1