本套都是shell的命令,enjoy it~
1)假设某变量aaa="史蒂芬周星驰",现在只想要输出后面的"周星驰",应该怎么办?
aaa="史蒂芬周星驰" echo ${aaa:3:3}
【评析】已知变量总字符数和要切的起始字符数,就可以用这种方法切变量了。这种方法比较常见的应用于变量是长路径的情况下。
2)使用curl获取www.163.net的响应头信息
curl -I http://www.163.net
【评析】curl -i 网址除了有网站的响应头信息之外,还有网站的全部内容。如果要获得http status code的内容:curl -sL -w "%{http_code}\\n" www.163.net -o /dev/null。
3)执行历史纪录里的第505条命令
!505
【评析】打印历史纪录里最后一次cat的命令是!cat:p,如果是执行历史记录里最后一次cat的命令是!cat。执行之前操作最后一次的命令是!!。
4)已知当前时间是2016年5月16日,想要以年月日的形式输出当前时间后十天的日期。
date +%y%m%d -d 10day
【评析】如果是前十天,那就是date +%y%m%d -d -10day
5)重复的执行"ps -ef",观察实时情况。
watch ps -ef (默认时间是2秒一次)
6)显示剩余内存
free -m |grep cache|awk ‘/[0-9]/{print $4"MB"}‘
7)打开/a/wow.txt,同时要跳到文件末端
vim + /a/wow.txt
【评析】如果是要把文章里的tab转换成空格的话,命令是expand wow.txt wow2.txt。
8)grep的精确查找命令
grep -w
【评析】grep在默认情况下是包含查找,比如111.txt有单词"james",#grep "me" 111.txt,是可以查到james的,但是要精确查找,只查找me这个单词,那么就要用#grep -w "me" 111.txt。
9)扫描203.90.146.0/24网络里所有开放8081端口的ip
nmap -p 8081 203.90.146/24
【评析】nmap命令不是linux自带的,需要#yum install -y nmap安装一下。 8081端口什么都不是,仅仅是一个用来测试时候的端口,而tomcat默认是8080端口,这个不要记混。
10)并排显示1.txt和2.txt
paste 1.txt 2.txt
【评析】这个方法其实用的非常少,因为排版效果很差,说是并排,其实两段文件都粘乎在一起了,非常不容易分辨,如果想要更好的排版方式,推荐#diff -y 1.txt 2.txt。
11)拆分大体积的tar.gz文件,每个是100MB,然后再合并。
split -b 100m
/path/to/large/archive
/path/to/output/filescat files*>archive
12)获取wow.txt文件的owner
stat -c %U wow.txt
【评析】这玩意是不是比cut awk等切来切去的更有逼格?
13)找出文件名结尾有空格的文件
find . -type f -exec egrep -l "+$" {} \;
14)输入多行文字
cat >test.txt (ctrl+d保存退出)
本文出自 “生活就是等待戈多” 博客,请务必保留此出处http://chenx1242.blog.51cto.com/10430133/1774118
原文地址:http://chenx1242.blog.51cto.com/10430133/1774118