fabric部署中常用linux及docker命令和知识点汇总

docker命令:

docker kill $(docker ps -q) 停止所有正在运行的容器
docker rm $(docker ps --all -q -f status=exited) 删除所有已经停止的容器
docker rmi $(docker images -q)删除所有镜像
docker rmi $(docker images | grep "none" | awk '{print $3}') 批量删除名字中带“none”的镜像
docker rm -f $(docker ps -aq) 强制删除所有容器

go的环境变量:

安装go时设置环境变量:有三个变量GOPATH、PATH、GOROOT

GOROOT就是go的安装路径 export GOPATH=/usr/local/go
GOPATH就是go的工作目录 export GOPATH=/opt/gopath
PATH是go安装路径下的bin目录

Linux命令:

1 copy命令

copy命令的功能是将给出的文件或目录拷贝到另一文件或目录中。
语法: cp [选项] 源文件或目录 目标文件或目录
该命令的各选项含义如下:

  • -a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
  • -d 拷贝时保留链接。
  • -f 删除已经存在的目标文件而不提示。
  • -i 和-f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
  • -p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
  • -r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
  • -l 不作拷贝,只是链接文件。

假设复制源目录 为 dir1 ,目标目录为dir2
将dir1下所有文件复制到dir2下:
如果dir2目录不存在,则可以直接使用

cp -r dir1 dir2

如果dir2目录已存在,则需要使用

cp -r dir1/. dir2

2 建立目录

mkdir path

3 解压缩到指定目录

tar zxvf test3.tgz -C path

4 用rz,sz在xshell传输文件

rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具,用于在windows和linux之间上传或下载某个文件。
首先安装rz、sz:

yum install lrzsz -y

windows端需要支持ZModem的telnet/ssh客户端(xshell支持,好像putty不支持),SecureCRT就可以用SecureCRT登陆到Unix/Linux主机(telnet或ssh均可)

运行命令rz,即是接收文件,xshell就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到linux里的当前目录。
运行命令sz file 就是发文件到windows上(保存的目录是可以配置) 比ftp命令方便多了,而且服务器不用再开FTP服务了。
更简便的方法是直接拖动文件到Xshell里面,就可以完成上传。

5 在windows下修改sh文件回传后使文件可执行

当你在windows下修改了一个sh文件并通过rz传到Xshell里时,该sh文件不会被Linux识别成绿色的可执行文件,这时需要用:

chmod +x ./network_setup.sh

命令来使脚本具有执行权限。
注意,一定要写成./network_setup.sh,而不是network_setup.sh。运行其它二进制的程序也一样,直接写network_setup.sh,linux系统会去PATH里寻找有没有叫network_setup.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成network_setup.sh是会找不到命令的,要用./network_setup.sh告诉系统说,就在当前目录找。
但此时执行依然会报错

/bin/sh^M: bad interpreter: No such file or directory

分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File–>Conversions–>DOS->UNIX即可。
2)也可在Linux中转换:
首先要确保文件有可执行权限

chmod a+x filename

然后修改文件格式

vi filename 

利用如下命令查看文件格式
:set ff 或 :set fileformat
可以看到如下信息
fileformat=dos 或 fileformat=unix
利用如下命令修改文件格式
:set ff=unix 或 :set fileformat=unix
:wq (存盘退出)
最后再执行文件

./filename

猜你喜欢

转载自blog.csdn.net/vivian_ll/article/details/79966459