工作记录
今天是2021年8月5日,星期四,线上办公第三天
疫情当下,大家一定要带好口罩😷
今天与明天是进行第二轮核酸检测的时期
任务清单
今天的任务比较细碎,属于很多小知识点的学习:
- ssh远程免密登录Linux服务器
- 本地shell脚本远程操作远程Linux服务器
- script命令——留下你的手脚
- 被nohup命令挂至后台运行的命令——别以为我看不见你干了啥
- shell脚本——break
- vim退格键修改——哥,看你就来气
任务记录
任务一:ssh远程免密登录Linux服务器
啊哈,这个问题应该是运维人员必备的知识了,今天就来唠唠这个小知识:
首先从基本原理入手,要想免密登录,首先要在本地生成一对公私钥,然后把自己的公钥上传到远程服务器中,远程服务器接收到本地服务器的公钥文件后会把公钥信息追加到自己的ssh相关文件中,这样每次在本地远程连接时,只要公钥通过验证,即可实现免密登录
推荐一篇文章,写的很详细:3 Steps to Perform SSH Login Without Password Using ssh-keygen & ssh-copy-id
如果服务器没有ssh-copy-id命令(手动狗头),推荐这个这篇文章:
原理与上面的一样,但方法不一样:【Linux学习笔记】Linux主机如何实现无需输入密码的远程登录或脚本远程执行
任务二:本地shell脚本远程操作远程Linux服务器
考虑到以后的工作需要,在本地利用shell脚本远程操纵运行服务器肯定会用到,所以抓紧学习了一下这个小技能:
实现这个功能,其实就是给shell命令加一个“框框”,具体看代码实例吧😋
#!/bin/bash
echo "start"
ssh root@xx.xx.xx.xx <<remotessh
touch zyf
echo "success to touch zyf"
echo $(ls)
exit
remotessh
echo "end"
要想让你的shell命令执行在远程服务器上,必须要用下面的程序框给框住:
# -- snip --
ssh name@xx.xx.xx.xx <<remotessh
# -- snip --
remotessh
# -- snip --
上面示例中的 remotessh
可以任意取名,但要保持前后一致
注意一点:示例中的 echo $(ls)
命令打印出的文件列表不是远程服务器下的文件列表,而是运行脚本的本地的文件列表(有点不解,暂时没有想通,欢迎大佬留言)
差点忘了,附上一篇参考文章:
文章总结的很精炼,直击要害:shell脚本本地(linux)执行远程服务器命令
任务三:script命令——留下你的手脚
其实任务三与任务四是一块找的,没办法,我的阿里云服务器不知为啥下载一些工具时特别慢,比公司用的vultr和我的本地Mac OS慢了不止一倍两倍(不打广告,就是要吐槽一下),好吧,正文开始:
script
命令就像是监视器一般,直接在命令行中键入 script
即可,运行后直接在当前文件下生成一个 typescript
文件,用来记录你在服务器上的每一步操作,在命令行中输入 exit
即可退出 script
的监视
今天它不是主角,就不详细的介绍了,具体内容可以参考下面的文章:
虽然名字不能显示的看出来,但的确是讲 script命令的,而且写的简单易懂:Linux命令nohup实现命令后台运行并输出到或记录到日志文件
任务四:被nohup命令挂至后台运行的命令——别以为我看不见你干了啥
由于一些命令不能中断,所以要用到 nohup [command] &
命令把它挂到后台持续运行,但是其中的执行结果又必须要获取已分析,所以基于这个目的,nohup命令
支持将运行过程输出到指定文件中,此时的命令升级为如下命令格式:
nohup [command] > [file] &
在这里,运行过程被重定向 >
到指定的文件中了
这个知识点我是运行 nohup --help
发现的:
任务五:shell脚本——break
这个简单记录一下,感觉还挺重要的
break
在shell脚本中,就是用来结束循环的,不管他是被 if
包着也好,还是被 case
语句,不加参数的话它总是默认结束当前整个循环
任务六:vim退格键修改——哥,看你就来气
使用vim的同学都知道,vim中的退格键Tab默认为8个空格的空间(这是什么蛋疼设置,好尼玛别扭),毕竟大家的编程习惯为4个空格,所以有必要改一改:
首先,在本地家目录下新建并打开 .vimrc
文件(初始没有该文件):
vim ~/.vimrc
vim打开后,添加如下设置:
set tabstop=4
set shiftwidth=4
# tabstop 表示一个 tab 显示出来是多少个空格的长度
# shiftwidth 表示每一级缩进的长度
最后,更新一下配置:
source ~/.vimrc
好啦,这就设置好了,看上去舒服多了呢😄
附上一篇参考文章,这个技巧是在这学的:
猛击链接,不再迷茫:vim调整Tab长度
总结
今天感觉收获满满,虽然都是一个个的小知识点,但我感觉各个直击痛点,学到了很实用的东西😁
疫情当下,相信我们一定都会挺过来的,加油呀😷