常用Linux命令整理

本文介绍了Linux环境下常用的文本操作命令,如sed、awk等,并详细解释了这些命令的使用方法及参数含义。此外还介绍了文件系统的基本操作命令,管理命令以及其他实用命令。

man命令:查看帮助


一、文本操作命令

sed/awk/find/grep/tail/less/more……

1、sed

sed -i 's/原字符串/新字符串/g' 'grep 原字符串 -rl 所在目录'

参数解释:

-i 表示inplace edit,就地修改文件

-r 表示搜索子目录

-l 表示输出匹配的文件名

sed -i.bak 's/2015-10-01/2015-08-01/g' file_path    # 备份源文件

2、awk

awk '{print $1, $4}' filename.txt    # $0代表整行
awk '{printf "%-8s %-15s\n",$1,$4}' filename.txt   # 格式化输出
awk ' $3>0 {print $0}' filename.txt    # 过滤输出
awk '$3==0 && $6=="LISTEN" ' filename.txt    # 过滤输出
awk '$3==0 && $6=="LISTEN" || NR==1 {printf "%-20s %-20s %s\n",$4,$5,$6}' filename.txt #过滤&格式化输出
awk '$6 ~ /FIN/ || NR==1 {print NR,$4,$5,$6}' OFS="\t" filename.txt    # 字符串匹配
awk 'NR!=1{print > $6}' filename.txt    # 拆分文件(不处理表头)

*    awk中的END表示处理完所有行

参考:AWK简明教程|酷壳

3、find:

find . | xargs fgrep 'string you want to search'    # 查找包含指定字符串的文件名


二、文件系统结构和基本操作

ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip……

1、vim

  • 字符串替换

%s/2015-07-01/2015-10-01/g


三、管理命令

ps/top/lsof/netstat/kill/tcpdump/iptables/dd…

1、查看端口占用情况:lsof(list open files)

lsof -i:端口号

2、ps:

ps aux                # 使用BSD方式展示,据说命令有被截断的可能,推荐使用-ef
ps -ef                # 比上条命令多了一个PPID
ps aux --sort user    # 排序

3、netstat

netstat -anp

四、其他

1、du使用详解:http://www.lowxp.com/g/article/detail/290

du,disk usage。-s,--summarize。

du -sh    #统计当前目录的大小,以直观方式展现,文件夹越大越多统计时间越长

du和df的区别:

简单来说du 命令是用户级的程序,它不考虑Meta Data,而df命令则查看文件系统的磁盘分配图并考虑Meta Data。df命令获得真正的文件系统数据,而du命令只查看文件系统的部分情况。

2、sudo 

sudo -l
sudo -u [username]
sudo -s

3、nohup

nohup cmd_line &    # 输出: [1] 14378
fg    # 命令移到前台执行

带&的命令行,即使terminal关闭,或者电脑死机程序依然运行(前提是你把程序递交到服务器上);不带仅是后台运行。

  • 重定向

nohup cmd_line > output 2>&1 & 意思是把标准错误(2)重定向到标准输出中(1),而标准输出又导入文件output里面,所以结果是标准错误和标准输出都导入文件output里面了。

至于为什么需要将标准错误重定向到标准输出的原因,那就归结为标准错误没有缓冲区,而stdout有。

nohup cmd_line >output 2>output    # 会出错

这样写会导致 >output 2>output 文件output被两次打开,而stdout和stderr将会竞争覆盖,这肯定不是我门想要的.

  • 丢弃输出

最后谈一下/dev/null文件的作用

这是一个无底洞,任何东西都可以定向到这里,但是却无法打开。

所以一般很大的stdou和stderr当你不关心的时候可以利用stdout和stderr定向到这里>cmd_line >/dev/null 2>&1

5、base64编码

echo  'cat /Users/rathan/441.svg' | base64 | pbcopy


转载于:https://my.oschina.net/rathan/blog/543764

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值