管道命令简直是神器,一句话搞定~
for cid in docker ps -a | awk '{print $1}'| sed -n '2,$p'
;do docker rm $cid;done
其中:
awk ‘{print $1}’ 获取了对应的列(编号从1开始)
sed -n ‘2,$p’ 排除了标题行
爽歪歪 ~
We read the world wrong and say that it deceives us.
管道命令简直是神器,一句话搞定~
for cid in docker ps -a | awk '{print $1}'| sed -n '2,$p'
;do docker rm $cid;done
其中:
awk ‘{print $1}’ 获取了对应的列(编号从1开始)
sed -n ‘2,$p’ 排除了标题行
爽歪歪 ~
续上文解决了编码的问题以后,最近又遇到了一则编码问题:在Windows操作系统下,将Tomcat做成服务,测试在catalina.bat文件中增加编码配置无效,于是只好改了操作系统的全局编码配置。
增加一环境变量,写入:JAVA_TOOL_OPTIONS, 变量值为:-Dfile.encoding=UTF-8 即可。
附:验证Java默认编码代码
//方法一:中文操作系统中打印GBK
System.out.println(System.getProperty(“file.encoding”));
//方法二:中文操作系统中打印GBK
System.out.println(Charset.defaultCharset());
某高校的短信接口对接,本地测试一切正常,部署到服务器却不正常,review代码发现含有如下代码:
public String getMD5(String str) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(str.getBytes());
return new BigInteger(1, md.digest()).toString(16);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
这个取md5的方法在含有中文时,因环境的编码问题会造成得到的MD5不一致,故需要将标红的部分更改为
md.update(str.getBytes("UTF-8")); 即传入编码所使用的字符集即可。 同时,这边另外一个短信接口,发送时要求使用POST提交,也同样遇到了编码问题,解决方法同样简单: 使用标红的部分对编码进行下强制指定,就好咯 :)
HttpClient httpClient = new HttpClient();
PostMethod method = new PostMethod(url);
method.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8");
01. 不说”不可能”三个字.
02. 凡事第一反应:找方法,而不是找借口.
03. 遇到挫折对自己大声说:太棒了!
04. 不说消极的话,不落入消极情绪,一旦出现立即正面处理
05. 凡事先订立目标,并且尽量制作”梦想版”.
06. 凡事预先作计划,尽量将目标视觉化.
07. 工作时间.每一分,每一秒都做有利于生产的事情.
08. 随时用零碎的时间(如等人、排队等)做零碎的事情.
09. 守时.
10. 写下来,不要太依靠脑袋记忆.
11. 随时记录灵感.
12. 把重要的观念,方法写下来,并贴起来,以随时提示自己.
13. 走路比平时快30%,走路时脚尖稍用力推进,肢体语言健康有力,不懒散,萎靡.
14. 每天出门照镜子,给自己一个自信的微笑.
15. 每天自我反省一次.
16. 每天坚持一次运动.
17. 听心跳一分钟,在做重要事情前,疲劳时,心情烦躁时,紧张时.
18. 开会坐在前排.
19. 微笑.
20. 用心倾听,不打断对方说话.
21. 说话时声音有力.感觉自己声音似乎能产生有感染力的磁场.
22. 说话之前,先考虑一下对方的感受.
23. 每天有意识,真诚地赞美别人三次以上.
24. 及时写感谢卡,哪怕是用便笺写.
25. 不用训斥,指责的口吻跟别人说话.
26. 控制住不要让自己做出为自己辩护的第一反应.
27. 每天做一件”分外事”.
28. 不管任何方面,每天必须至少做一次”进步一点点”.
29. 每天提前15分钟上班,推迟30分钟下班.
30. 每天在下班前用5 分钟的时间做一天的整理工作.
31. 定期存钱.
32. 节俭.
33. 时常运用”头脑风暴”.
34. 恪守诚信,说到做到.
35. I am the best one!!!
今天某项目经理反馈学校的某台服务器不停的向外发包,且CPU持续100%,远程登录后查看发现有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串进程。删除文件也会重复生成,非常痛苦。查阅crond相关日志,发现实际执行的内容为/lib/libudev.so ,以此为关键字进行查询,找到如下内容: 继续阅读“记一则Linux病毒的处理”
(本文转自danieluk的专栏)
经测试,本文同样支持Ubuntu 12.04
1. 更新或安装linux headers
sudo apt-get update && sudo apt-get install build-essential linux-headers-$(uname -r)
2. 关联文件,就是因为找不到这个几个文件,vmware tools才认为路径无效的。
cd /lib/modules/$(uname -r)/build/include/linux
sudo ln -s ../generated/utsrelease.h
sudo ln -s ../generated/autoconf.h
sudo ln -s ../generated/uapi/linux/version.h
3. 再次执行安装就ok啦,运行vmware-config-tools.pl 也没问题了
sudo ./vmware-install.pl
今天Coding的时候,我使用到了自定义jstl表达式,其调用格式形如
<pms:getDicName dict=”jg” code=”${personEntity.jg}”/>
当然,在tld文件中,我也将code的rtexprvalue设置为了true,但是程序调试中,我在程序中获取到的死活都是“${personEntity.jg}”,而不是这段字符串的值,经查阅资料,发现想要在jstl表达式中使用el表达式需要额外做两个处理。
1)将接收el表达式的变量设置为Object类型。
2)改写接收el表达式的变量的set方法为:
public void setCode(Object code) throws JspException {
this.code = ExpressionEvaluatorManager.evaluate(“code”,code.toString(),Object.class,this,pageContext);
}
这样再测试,程序即可顺利的在jstl表达式中获取到el表达式的值。
相信dom4j是很多Java程序猿必备的jar包,最近跟某邮件系统集成时,使用dom4j读取对方的atom文件,无奈怎么调试系统都在报错“Invalid XPath expression:”,而我也很确定XPath表达式没有出错,经过查找资料及比对,发现造成这个问题的原因是少了一个Jar包——jaxen-1.1-beta-6.jar
加入此Jar包后,问题解决。
昨天遇到一个问题,在Linux中有一个文件夹里面含有大量的Cache文件(夹),数量级可能在百万级别,使用rm -rf ./* 删除时间慢到不可接受。Google了一下,查到了一种方法,试用了下确实比单纯使用rm快了一个数量级。
方法见下:
1)首先建立一个空白文件夹。
mkdir /tmp/empty
2)之后使用以下语句即可快速的删除文件。
rsync –delete-before -d /tmp/empty/ /the/folder/you/want/delete/
原文中说不要忘记文件夹后的“/”
3)一杯咖啡过后,就Ok了。
更多详情可以参见:
今天遇到了一个超级郁闷的问题,在公司的门户上做了二开,理想的效果是用户通过我给定的URI提交数据之后,若数据正确跳转到首页,若错误则跳转到登录页。修改完成之后部署上,发现无论用户给出的凭据是正确还是错误都往错误页上跳转。
调试过程中我发现,用户输入正确的凭据以后系统确实往主页跳转了,但是最后的结果却是又返回到了登录页。仔细查看代码后发现,我在往主页跳转的时候,错误的使用了forward,造成不能将用户本地的cookie等凭证带到主页,令系统以为我已经退出了,故又返回了登录页。
关于redirect与forwad的区别,找到一篇博文,见下:(转载自:http://blog.csdn.net/tenor/article/details/4077079) 继续阅读“关于Java中redirect与forward的区别”