【开发日志-已归档】2022-01

【shell】使用awk命令获取文本的某一行,某一列

1、打印文件的第一列(域)                 : awk '{print $1}' filename

2、打印文件的前两列(域)                 : awk '{print $1,$2}' filename

3、打印完第一列,然后打印第二列  : awk '{print $1 $2}' filename

4、打印文本文件的总行数                : awk 'END{print NR}' filename

5、打印文本第一行                          :awk 'NR==1{print}' filename

6、打印文本第二行第一列                :sed -n "2, 1p" filename | awk 'print $1'

但是如何获取最后一列呢?

可以使用awk -F',' '{print $NF}' 来获取

awk 取得列表的最后一行

awk 'END {print}'  yourfile

【K8S】拉取镜像异常

failed to pull image "10.1.62.182:5001/nginx:1.7.9":rpc error: code = Unknown desc = Error response from daemon: Get https://10.1.62.182:5001/v2/: http:server gave HTTP response to HTTPS client

Error: ImagePullBackOff

解决方案:

修改 /etc/docker/daemon.json,

补加

"insecure-registries": ["10.1.62.182:5001"],

然后重启docker服务

【maven】nexus上传junit-bom-5.8.2.pom

admin账户登录nexus

选择 3rd party(重要)

选择 Artifact Upload

选择 junit-bom-5.8.2.pom

上传即可

【mvn】跳过测试

-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。

-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。

【K8S】k8s dashboard token 过期时间修改

1. dashboard web 界面更改,编辑 dashboard 的yaml,如下图 编辑部署yaml

2、在 containners 的args 中加上“--token-ttl=43200”,然后点击更新即可 (43200=12h*60m*60s,即改后为12小时过期)

【win】删除网盘快捷方式图标

按下快捷键win+r,然后输入regedit确认打开注册表,定位到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace,

删除NameSpace下的所有的子项就可以删除百度网盘图标

【jvm】dump

#> jps -ml   #m包含加载的配置文件

#导出线程Dump

#> jstack -l [pid] >jstack.log  # 比如 jstack -l 57031 >jstack.log

#导出堆Dump

#> jmap -dump:format=b,file=xxxDump 57031    # 将 JVM 的堆 dump 到指定文件,子参数 format 只支持 b,即二进制格式;如果 JVM 进程未响应命令,可以加上参数 -F 尝试

# 查看堆的信息

#> jmap -heap PID  # -heap 参数用于查看指定 JVM 进程的堆的信息,包括堆的各个参数的值,堆中新生代、年老代的内存大小、使用率等

#Dump分析工具

IBM Thread and Monitor Dump Analyzer IBM Thread and Monitor Dump Analyzer for Java (TMDA)

IBM HeapAnalyzer  IBM HeapAnalyzer

频繁GC问题或内存溢出问题

一、使用jps查看线程ID

二、使用jstat -gc 3331 250 20 查看gc情况,一般比较关注PERM区的情况,查看GC的增长情况。

三、使用jstat -gccause:额外输出上次GC原因

四、使用jmap -dump:format=b,file=heapDump 3331生成堆转储文件

五、使用jhat或者可视化工具(Eclipse Memory Analyzer 、IBM HeapAnalyzer)分析堆情况。

六、结合代码解决内存溢出或泄露问题。

死锁问题

一、使用jps查看线程ID

二、使用jstack 3331:查看线程情况

【springboot】springboot 读取 yml 配置

第一种读取方式@value

如果我们只需要配置文件中的一两个值,@Value 是最简单方便的方式.

server:

  port: 8081

我们在代码中可以这样取值

@Value("${server.port}")

public String port;

注:此处的prot 所在的类需要是一个组件,如果是实体类需要加上@Component

第二种读取方式@ConfigurationProperties

如果需要一个JavaBean 来专门映射配置的话,我们一般会使用@ConfigurationProperties来读取.

student:     age: 18     name: mysgk

javabean:

@Component

@Data@ConfigurationProperties(prefix = "student")public class Student {      private String name;      private Integer age;

}

【chrome】访问https地址提示不安全 

您的连接不是私密连接;因为此网站发送了 Google Chrome 无法处理的杂乱凭据。网络错误和攻击通常是暂时的,因此,此网页稍后可能会恢复正常。

当前页面点击任意空白处,直接键盘输入字符 thisisunsafe 即可解决。

【centos】grep 命令,或者关系如何表达

使用多个 -e 参数

yum search xxx | grep -e EST -e WAIT

并列使用多个 -e参数可以实现或条件

【centos】查询yum中软件版本

yum search --showduplicates kubeadm   #如果信息过多,可用尾部追加|grep xxx再过滤一下

查看最新版本信息

yum info kubeadm

【linux】什么是selinux

简而言之:

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。

SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。

SELinux 的结构及配置非常复杂,而且有大量概念性的东西,要学精难度较大。很多 Linux 系统管理员嫌麻烦都把 SELinux 关闭了。

上一篇:[AT2304] [agc010_c] Cleaning


下一篇:poj2376 Cleaning Shifts