有个需求,要统计一个shell的变量中存在的双引号数量,如何实现呢?示例代码如下:
#! /bin/bash
test="sdfdsfds""123
echo $testtest=$(echo $test | awk -F'&qu[......]
有个需求,要统计一个shell的变量中存在的双引号数量,如何实现呢?示例代码如下:
#! /bin/bash
test="sdfdsfds""123
echo $testtest=$(echo $test | awk -F'&qu[......]
初衷是想把变量的双引号替换为带斜杠的转义的双引号并输出。
示例代码如下:
#! /bin/bash
test="sdfdsfds"123echo $testtest=$(echo $test | sed 's/"/\&qu[......]
有时需要通过搜索关键字提取pid,shell代码如下:
#!/bin/sh
es_pid=`ps aux | grep 进程搜索关键字 | grep -v "grep" | tr -s ' '| cut -d ' &ap[......]
浩哥指点,其实有更简单的压测工具:stress。Stress是一个Posix系统下生成Cpu/Menory/IO/Disk负载的工具。
工具参数说明:
- 显示帮助信息
-v 显示版本号
-q 不显示运行信息-n,--dry-run 显示已经完成的指令执行情况-t -[......]
那,出现这个错误:
sed: -e expression #1, char 4: invalid usage of line address 0
八成是用了
sed -n 'start,$p'
的指令,start是不允许为0的,因为sed是从第[……]
如下示例代码实现了用telnet命令测试端口连通性的功能:
端口通信正常
-bash-4.1$ echo " " | telnet 192.0.0.1 10100
Trying 10.71.133.9...Connected to 10.71.133.[......]
有时需要变动用户组的名称,方法如下:
groupmod --new-name NEW_GROUP_NAME OLD_GROUP_NAME
参考:https://superuser.com/questions/404135/rename-users-group-nam[……]
有时read需要判定下输入是否合规,不合规还需要重新输入,实现示例如下:
while :
do
echo -n "Type number:" read num if [[ $num =~ ^- [0-9]+$ ]]; then
有时需要在用read获取输入前,输出相关提示信息给用户,提示信息过长的时候,换行才比较好看,实现示例如下:
read -p $'Here is new linex0aInput something:' inputstr
效果如下:
read -[......]