有时写shell,双引号之中如何引用变量?
其实昨天的文章已经介绍了,假设存在OLD的变量,那么如下这样引用即可:
"Its:${OLD}"
这样就实现了双引号之间的变量引用[……]
之前写过介绍sed的文章,批量遍历目录全部文件并替换:Linux服务器运维之find配合sed批量替换内容-纯小白教程
https://shipengliang.com/software-exp/linux%e6%9c%8d%e5%8a%a1%e5%99%a8%e8%[……]
需求是shell里grep出来的一个字符串,想提取单引号之间的字符串赋值给变量,以下代码实现了该功能:
OLD=`grep host /tmp/test.php | sed -r "s/.*'(.+)'.*/1/"`[......]
以下代码实现了通过ping获取域名解析的IP并赋值给IP变量:
IP=`ping www.baidu.com -c 1 -w 1 | sed '1{s/[^(]*(//;s/).*//;q}'`[......]
以下内容大部分摘录自:Shell脚本中$0、$ 、$!等的意义。
$$ Shell本身的PID(ProcessID)$! Shell最后运行的后台Process的PID$ 最后运行的命令的结束代码(返回值)$- 使用Set命令设定的Flag一览[……]
直接vim报错的文件,按:进入命令行,输入:
set ff
如果得到输出:
fileforma=dos
那就是这个锅了,再次进入命令行,输入:
set fileformat=unix
然后wq!保存即可解决问题。 方法整理自:https://www.cnblogs[……]
如下代码示例实现了获取file文件内容并赋值给PID变量:
file='/usr/server.pid'
PID=$(sed -n '$p' $file | awk -F"," '{print $fi[......]
如下代码展示了如何判定一个变量是否为空
#!/bin/sh
#filename: test.sh
para1= if [ ! -n $para1 ]; then echo "IS NULL" else echo "NO[......]