从现在开始摘录一些自己认为常用或者有用的linux命令或者脚本, 可能很简单, 可能写得很戳, 欢迎拍砖, 让彼此进步!
1. 经常要在svn目录下面搜索一些py代码文件里面是否含有某些词语, 例如检查代码里面的TODO的tag, 方便在提交之前做好检查。那么, 可以这样做:
grep -inR 'TODO' . | grep -v .svn | grep -v .pyc | grep -v .swp
进一步可以把这个命令做成一个更简洁的sh脚本, 只需要接受要搜索的词语和要搜索的目录就可以了。然后放到PATH里面。
2. 有时候我们要在ps命令的输出里面查找某些关键字(比如某些进程名), 但是由于ps的输出有很多列, grep完关键字之后并不清楚哪一列对应的列名是什么(比如究竟是USER还是CPU?). 所以我想让列名在grep之后也出现, 就像表头一样。
那么我们可以利用sed来完成, 因为他是按行处理并且支持将参数command按照顺序执行。
思路就是: 用sed先把ps的列名截取出来然后再grep。
ps aux | sed -ne '1p' -e '/wsgi/p' | grep -v sed
写成一个sh脚本的话可以这样:
#!/bin/sh
scriptname=`basename $0`
word=''
if [ $# -eq 1 ]; then
word=$1
elif [ $# -gt 1 ]; then
echo 'not support more than 1 parameter!'
fi
ps aux | sed -ne '1p' -e "/$word/p" | grep -v sed | grep -v $scriptname
3. 在vim里面, 想把文件的某些部分(第N到第M行,或者整个文件)拷贝到另一个文件可以这样做:
:N,M w newfile
如果想append内容到已有文件, 可以这样:
:N, M w >> newfile
如果被改写的文件是root的文件, 而你有sudo的权限的话, 要修改这样的root文件,可以这样:
:N, M w !sudo tee newfile
如果是想append内容到root权限的newfile, 要这样:
:N, M w !sudo tee -a newfile
4. ^foo^bar 这条命令能将上一条命令的第一个foo替换成bar, 这条命令被评为了linux10大最受欢迎命令了,
今天刚好用到,但是我的需求是替换所有的foo而不仅仅是第一个,按道理应该加一个类似正则里面的g参数就可以。
然后man sh, 查找^, 搜到原来这个命令等价于 !!:s/string1/string2/ , !!命令是获取上一条命令, s是替换命令,
就像sed里面一样, 然后manpage里面就找到要所有都替换的话是这样写的: !!:gs/string1/string2
功德圆满阿!不过就这样觉得其实描述这条命令的网页都没有最准确的描述, 应该强调下只是会替换第一个!!有木有!
5. 如果出现“Too many open files in system,connection closed错误”的话, 证明系统的文件句柄用完了。
那么如果查看文件句柄的情况和如何增加这个可用值就成了解决问题的关键了。
1)查看:
cat /proc/sys/fs/file-nr 会输入类似这样的值:
2688 0 65536
2688代表当前正在使用的句柄数; 0代表空闲的文件句柄数 ; 65536代表最大限制的文件句柄数量。
2)增加:
第一步:# vi /etc/sysctl.conf 修改fs.file-max=655360(如果没有fs.file-max=65536这一项的话则新加上)
第二步:# sysctl -p
搞定!
备注:
sysctl - configure kernel parameters at runtime
-p Load in sysctl settings from the file specified or /etc/sysctl.conf if none given.
6. 使用sort实现类似数据库的group by功能
例子(filename: test.txt):
1,5,4
1,5,7
1,2,1
1,4,7
如果要按照前2列来排序group by, 那么可以通过这样的命令:
sort -t, -k1,2 test.txt
-k参数可以指定sort要排序的key是从哪个位置开始和结束, 不过缺点就是只能是一个连续的范围,
对不连续的没用。
如果你还需要在group by之后做统计, 那么用uniq -c 就可以了, 完整命令如下:
sort -t, -k1,2 test.txt | uniq -c
分享到:
相关推荐
“摘要”式认证( Digest authentication)是一个简单的认证机制,最初是为HTTP协议开发的,因而也常叫做HTTP摘要,在RFC2671中描述。其身份验证机制很简单,它采用杂凑式(hash)加密方法,以避免用明文传输用户的...
Digest认证的过程通常包括以下步骤: 1. 客户端发起请求,服务器返回401响应,包含WWW-Authenticate头。 2. 客户端解析这个头,然后生成一个包含用户名、密码、随机nonce值(服务器提供的唯一字符串)以及方法和URI...
"msql-for-Linux.zip"这个压缩包可能包含了关于如何在Linux系统上安装、配置和管理MySQL的详细资料,特别是针对"嵌入式数据库msql在Linux下的应用.png"这个文件,我们可以推测它可能是一个教程或示例,展示了MySQL在...
MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,由计算机科学家Ronald Rivest在1991年设计。它能够将任意长度的数据转化为一个固定长度的摘要值,通常是一个128位的二进制数,通常用32个十六进制数字...
《精华贴展示插件digest.php在Discuz!7.0中的应用详解》 Discuz!作为一款广泛应用的社区论坛软件,其丰富的插件系统为用户提供了无数的个性化和功能扩展可能。今天我们要深入探讨的是“精华贴展示插件digest.php”...
ISSCC2019 - Digest.docx ISSCC2019 - Digest.pdf 1 Plenary Session 2 Processors 3 Nyquist Rate ADCs 4 Power Amplifiers 5 Image Sensors 6 Ultra-High-Speed Wireline 7 Machine Learning ...
在网络安全认证领域,digest用户认证是一种使用摘要算法对用户凭证进行加密验证的技术,它允许在不安全的网络通道中安全地进行身份验证。digest认证机制通常用于基于HTTP和SIP(Session Initiation Protocol)协议的...
本教程将深入探讨如何进行ONVIF编译与开发,包括使用gSOAP工具处理SOAP消息,以及实现WSSE(Web Services Security Extensions,Web服务安全扩展)和DIGEST鉴权机制。 首先,让我们了解gSOAP。gSOAP是一个开源C和...
《Digest-Perl-MD5:Perl中的MD5哈希库》 Digest-Perl-MD5是Perl编程语言中用于处理MD5(Message-Digest Algorithm 5)哈希算法的一个模块。MD5是一种广泛使用的加密散列函数,设计者是Ronald Rivest。它产生一个...
在Linux环境下配置Apache服务器以实现页面认证与SSL加密是一项关键的网络管理技能,尤其是在保障网站安全性和用户数据保护方面。本文将深入解析如何在Linux下完成Apache页面认证及SSL配置,确保网站通信的安全性。 ...
RFC 2617中文版(HTTP Digest Authentication) RFC 2617中文版是对HTTP Digest Authentication的描述,该文档基于原英文版进行了校正和重新排版,以方便中文读者更好地理解和使用HTTP Digest Authentication机制。...
Drawing on years of experience as an embedded Linux consultant and field application engineer, Christopher Hallinan offers solutions for the specific technical issues you're most likely to face, ...
《Digest-HMAC: 一种强大的认证机制》 在信息技术领域,安全始终是至关重要的考虑因素。其中,数据的完整性与身份验证是确保信息安全的关键环节。Digest-HMAC(Hash-based Message Authentication Code)是一种基于...
SM3国密算法第二部分,SM3DIGEST
- 监控工具:如`top`、`htop`、`iotop`等监控系统资源使用情况,以及专门的数据库监控工具如MySQL的`pt-query-digest`。 - 错误日志:理解和分析数据库的日志文件,有助于诊断问题和优化性能。 9. **分布式数据库...
标题中的“ISSCC 2012 - Digest .rar”指的是2012年国际固态电路会议(International Solid-State Circuits Conference, ISSCC)的摘要合集,它被压缩成一个RAR文件供下载和存储。这个会议是全球集成电路设计领域最...
赠送jar包:t-digest-3.2.jar; 赠送原API文档:t-digest-3.2-javadoc.jar; 赠送源代码:t-digest-3.2-sources.jar; 赠送Maven依赖信息文件:t-digest-3.2.pom; 包含翻译后的API文档:t-digest-3.2-javadoc-API...
t-digest 最新源码分享,t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest 最新源码分享t-digest ...
md5sum linux 下的代码实现 usage: md5sum [-bv] [-c [file]] | [file...] Generates or checks MD5 Message Digests -c check message digests (default is generate) -v verbose, print file names when ...