Linux--奇思淫才
| Image Entrypoint | Image Cmd | Container command | Container args | Command run |
|---|---|---|---|---|
| [/ep-1] | [foo bar] | not set | not set | [ep-1 foo bar] |
| [/ep-1] | [foo bar] | [/ep-2] | not set | [ep-2] |
| [/ep-1] | [foo bar] | not set | [zoo boo] | [ep-2 zoo boo] |
| [/ep-1] | [foo bar] | [/ep-2] | [zoo boo] | [ep-2 zoo boo] |
shell 脚本遇到错误时直接退出
set -e
在写的每个脚本都应该在文件开头加上set -e,
这句语句告诉bash如果任何语句的执行结果不是true则应该退出
查看CPU消耗前十的进程
[ec2-user@baolin ~]$ps -aux --sort=-pcpu |head
根据进程号找到可执行的文件路径
[ec2-user@baolin ~]$ ll /proc/<pid>/exe
lrwxrwxrwx 1 ec2-user ec2-user 0 May 30 06:41 /proc/<pid>/exe -> /usr/local/java/jdk1.7.0_79/bin/java
mysql单条语句生成insert sql语句
[ec2-user@baolin ~]$ mysqldump -h 192.1688.50.100 -t -uroot -p baolin_rel tbl_ap_version_i --where="vers_id < 100" > tbl_ap_version_i.sql
Enter password:
mysql查看表的列信息
MariaDB [adsdk_rel]> show full columns from 表名;
+-----------------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+-------------+
| Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
+-----------------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+-------------+
| usin_id | int(10) | NULL | NO | PRI | NULL | auto_increment | select,insert,update,references | |
| usin_deviceId | varchar(100) | utf8_general_ci | NO | | NULL | | select,insert,update,references | 设备ID |
| usin_appId | varchar(10) | utf8_general_ci | NO | | NULL | | select,insert,update,references | APP应用ID |
| usin_createTime | datetime | NULL | NO | | NULL | | select,insert,update,references | 日期 |
+-----------------+--------------+-----------------+------+-----+---------+----------------+---------------------------------+-------------+
4 rows in set (0.01 sec)
查看Linux的网关
[root@linux_base#>> ~]#route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.100.2 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
通过sshpass实现对秘钥的分发
# 安装 sshpass
# yum install sshpass -y
# 生成本地key
# ssh-keygen
[root@linux-node1#>> ~]#egrep -v "#|^$" scp_key.sh
IP="
192.168.100.11
192.168.100.12
192.168.100.13
"
for node in ${IP};do
sshpass -p 123456 ssh-copy-id -p22 ${node} -o StrictHostKeyChecking=no
if [ $? -eq 0 ];then
echo "${node} 秘钥copy完成,准备环境初始化....."
scp -P22 /etc/hosts ${node}:/etc/hosts
echo "${node} host 文件拷贝完成"
fi
done
当修改完时区后发现计划任务不能在指定时间执行:
# 重启一下计划任务
systemctl restart crond.service
Vim 粘贴格式错乱解决
:set paste
查看文件目录大于100 M的文件夹
root@cd849280f837e4584aa13572dc2ff51d/diff# du -sh * |egrep \(\[0-9\]\{1,3\}\)\{3\}M | sort
133M 04468714e8fc6d5437c54e5f8ab9a67d6b092b74dd4784a84d5bee3ad1217221
133M 5f457319fdabcfa6f22ed47f60af69a74f781b5b035fc49a6a5f0d1ab5d3855e
137M 76af62511fc0eb213aea6f4e183c2f2124c6b729401022dd480cec58c2f14a16
153M 9cabdd2e9f7c7aff0d23ad3fc80b924574a8fb7046d389a51bb843a186956d9a
181M 5d0c9517f3a8baab413a8407c0b72fc34130929c081145f58201205989b5f8f0
190M c5bcce19e9c189198e24613d7ec317c2747be5631f7610704f9b8856b7b80a36
203M 4cffaee108a74ed17a964e379754f7e33994b6e09192acfe65e288738911c29c
常用命令
ps的常见参数
-A 显示所有进程(等价于-e)(utility)
-a 显示一个终端的所有进程,除了会话引线
-N 忽略选择。
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
-d 显示所有进程,但省略所有的会话引线(utility)
-x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
-p pid 进程使用cpu的时间
-u uid or username 选择有效的用户id或者是用户名
-g gid or groupname 显示组的所有进程。
U username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
-f 全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
-l 长格式(有F,wchan,C 等字段)
-j 作业格式
-o 用户自定义格式。
v 以虚拟存储器格式显示
s 以信号格式显示
-m 显示所有的线程
-H 显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
e 命令之后显示环境(如:ps -d e; ps -a e)(utility)
h 不显示第一行
1 .查看java进程的pid
[ec2-user@ip-172-11-11-10 ~]$ ps -ef |grep java
2 .根据进程pid 查看有哪些线程 tid
[ec2-user@ip-172-11-11-10 ~]$ ps -mp 32355 -o THREAD,tid,time |sort -rn
3 .查询CPU占用前10的进程
[ec2-user@ip-172-11-11-10 ~]$ ps -aux --sort=-pcpu |head -10
TOP 常用参数
1 .查看当前进程的tid实时状态
[ec2-user@ip-172-11-11-10 ~]$ top -H -p 32355
2 .查看指定tid 的16进制值
[ec2-user@ip-172-11-11-10 ~]$ printf "%x\n" 8509
3 .使用jstack 查看该 pid的线程内容
[ec2-user@ip-172-11-11-10 ~]$ ./jstack PID |grep 'tid 16 进制值' -A 60
更多top的使用方法:
https://www.jianshu.com/p/3f19d4fc4538
Linux--奇思淫才的更多相关文章
- 关于 Chrome Console 查看DOM详情细节的奇思淫巧
我们期待打印出的dom效果如下: 但某些时候,打印出来,或者通过$0.$1.document.getElementById('####') 等方式打印出来的效果如下: 根据第一幅图我们不难看出,当打印 ...
- c# 扩展方法奇思妙用基础篇八:Distinct 扩展(转载)
转载地址:http://www.cnblogs.com/ldp615/archive/2011/08/01/distinct-entension.html 刚看了篇文章 <Linq的Distin ...
- c# 扩展方法奇思妙用
# 扩展方法出来已久,介绍扩展方法的文章也很多,但都是笼统的.本人最近一直在思考扩展方法的应用,也悟出了一些,准备将这最近一段时间对扩展方法的思考,写成一个系列文章.每个文章只介绍一个应用方面,篇幅不 ...
- c# 扩展方法奇思妙用集锦
本文转载:http://www.cnblogs.com/ldp615/archive/2009/08/07/1541404.html 其中本人觉得很经典的:c# 扩展方法奇思妙用基础篇五:Dictio ...
- [奇思异想]使用Zookeeper管理数据库连接串
背景 有一套特定规格的应用(程序+数据库),当有业务需求时,就需要多部署应用,并且所有的应用都使用一个共同的后台来管理.应用新增后,如何通知后台更新连接串成了一个关键的问题.于是就产生了使用ZooKe ...
- c# 扩展方法奇思妙用基础篇八:Distinct 扩展
刚看了篇文章 <Linq的Distinct太不给力了>,文中给出了一个解决办法,略显复杂. 试想如果能写成下面的样子,是不是更简单优雅 var p1 = products.Distinct ...
- linux 接口地址全部清除才清理从此接口发出的下一跳路由
接口地址全部清除才清理从此接口发出的下一跳路由 如: eth7配置两个地址 eth7: 192.168.1.1 10.1.1.1 添加一条路由: route add -net 2.2.2.0/24 g ...
- c# 扩展方法奇思妙用基础篇五:Dictionary<TKey, TValue> 扩展
Dictionary<TKey, TValue>类是常用的一个基础类,但用起来有时确不是很方便.本文逐一讨论,并使用扩展方法解决. 向字典中添加键和值 添加键和值使用 Add 方法,但很多 ...
- [奇思异想]使用RabbitMQ实现定时任务
背景 工作中经常会有定时任务的需求,常见的做法可以使用Timer.Quartz.Hangfire等组件,这次想尝试下新的思路,使用RabbitMQ死信队列的机制来实现定时任务,同时帮助再次了解Rabb ...
随机推荐
- Python基础知识4--数据结构(树)
树 树的概念 堂兄弟的双亲不一定是兄弟关系. 二叉树 斜树 满二叉树 完全二叉树 二叉树的性质
- 在Django中使用logging模块
一.Django logging配置 1.在setting.py中配置 # 日志文件存放路径 BASE_LOG_DIR = os.path.join(BASE_DIR, "log" ...
- php curl报错:417 - Expectation Failed
当我在post提交的数据增加一段内容后会报错:417 - Expectation Failed. 查资料发现在使用curl做POST时,当post的数据大于1024字节时,curl并不会直接发起pos ...
- 【LOJ2586】【APIO2018】选圆圈 CDQ分治 扫描线 平衡树
题目描述 在平面上,有 \(n\) 个圆,记为 \(c_1,c_2,\ldots,c_n\) .我们尝试对这些圆运行这个算法: 找到这些圆中半径最大的.如果有多个半径最大的圆,选择编号最小的.记为 \ ...
- JMeter测试(菜鸟级,高手莫点)
干了这么多年开发,多线程测试都是自己写程序,都不知道还有JMeter这玩意,莫笑莫笑 一个简单的测试计划如下: 在[测试计划]下创建[线程组],线程组下[HTTP请求]和[查看结果树]是必须的,[HT ...
- Ubuntu最常见的包问题
工作环境换成Ubuntu18.04小记:https://www.cnblogs.com/dunitian/p/9773214.html Ubuntu不得不说的就是这个apt出问题的处理 :(换源就不说 ...
- Mybatis的应用2 使用mybits+SpringBoot完成第一个查询的demo(随后加增加,更新,删除)
首先在mapper下面新建一个mysql.xml mysql.xml <?xml version="1.0" encoding="UTF-8" ?> ...
- 3173. 【GDOI2103模拟3.17】扫雷游戏(搜索 + 剪枝)
Problem 给出一个类似扫雷的游戏,有\(num\)个数字,求至少有多少个雷. Data constraint \(n,m\le 15,num\le 15\) Solution 好搜索啊. 现讲一 ...
- A Reliability-Aware Network Service Chain Provisioning With Delay Guarantees in NFV-Enabled Enterprise Datacenter Networks
文章名称:A Reliability-Aware Network Service Chain Provisioning With Delay Guarantees in NFV-Enabled Ent ...
- 深入jar包:从jar包中读取资源文件getResourceAsStream
一.背景 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等). 在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不 ...