Tag: shell

快速和肮脏的方式来确保一次只运行一个shell脚本的一个实例

什么是快速和肮脏的方法来确保在给定的时间只有一个shell脚本的实例正在运行?

没用猫的用法?

这可能是在许多常见问题 – 而不是使用: cat file | command (这被称为无用的猫),正确的方式应该是: command < file 第二,“正确”的方式 – 操作系统不必产生额外的过程。 尽管知道,我继续使用无用的猫有两个原因。 第一 – 更美观 – 我喜欢数据只从左到右统一移动。 而且用别的东西(gzcat,echo,…)替换cat更容易,添加第二个文件或插入新的过滤器(pv,mbuffer,grep …)。 第二个原因 – 我“觉得”在某些情况下可能会更快。 因为有两个过程,所以更快,第一(猫)做阅读,第二做什么。 而且它们可以并行运行,这意味着执行速度有时会更快。 我的逻辑是正确的(第二个原因)?

使用变量替换shell脚本中的字符串

我使用下面的代码来替换shell脚本中的字符串。 echo $LINE | sed -e 's/12345678/"$replace"/g' 但是它正在被替换为$replace而不是该变量的值。 有谁可以告诉出了什么问题?

docker:shell脚本中的参考格式无效

我正在尝试创建一个shell脚本来运行一个码头集装箱,我正在挣扎。 我的脚本是这样的: #!/bin/bash if [ "$1" == "" ]; then echo "Usage > run.sh IMAGE NAME" echo echo "ie ./build.sh cd2:0.0.49" exit fi echo $1 docker run -it –rm \ -e NODE_PATH='./src'\ -e NODE_HOST='0.0.0.0'\ -e NODE_ENV='production'\ -e DOCKER=true\ -e PORT='8080'\ -e STAGING=true\ -e SENDGRID_API_KEY='<redacted>'\ -p 8080:8080 $1 当我运行: bash run.sh cd2:0.0.50 我得到: docker: invalid reference […]