linux小知识积累

Picture

如何输入摄氏度符号

Ctrl-K DG

vim中的查找替换

全局替换

1
2
:%s/source/dest/g
:g/source/dest/g

替换每一行的第一个

1
2
:%s/source/dest/
:g/source/dest/

不常用的先不记录吧….

将信息按照列表显示

1
2
3
4
mount | column -t

-s参数指定分隔符
cat /etc/passwd | column -t -s:

重复执行一条命令直到成功

1
2
3
4
while true
> do
> ping -c l google.com > /dev/null 2>&1 && break
> done;

其中>/dev/null 2>&1会让程序的输出重定向到/dev/null中,标准错误和标准输出都会被包含进去

ps aux排序

按照内存资源使用量排序

1
ps aux | sort -rnk 4

按照CPU资源使用量排序

1
ps aux | sort -nk 3

回到上一个目录

1
cd -

交互式shell

~/.bashrc中的shell不具有交互性,放到~/.bash_profile中是可以的

定时监视命令输出

比如watch df -h可以查看可用空间以及它的使用情况。

watch还可以操作会变化的数据,举个例子?

关闭会话后程序继续运行

1
nohup wget site.com/file.zip

自动对命令回答Yes/No

1
yes | apt-get update

最后一条命令

1
2
cat /etc/passwd
sudo !!

记录会话中的动作

script命令可以使所有敲写的内容保存到一个名为typescriptscript的文件中去,exit命令会出script模式。

显示结果字符替换

tr命令可以将字符替换

1
2
3
4
5
# 将空格替换为tab
cat geeks.txt | tr ' ' '\t' > out.txt

# 将小写字母换为大写字母
cat file.txt | tr a-z A-Z > out.txt

xargs命令

作用是将某命令的输出作为参数传递给另外一个命令。

1
2
3
4
5
# 搜索png文件然后将搜索出的文件进行压缩
find . -name *.png -type f -print | xargs tar -cvzf imgs.tar.gz

# 批量下载
cat urls.txt | xargs wget

第一条命令的输出会在xargs命令结尾处传递

使用{}并结合-i参数可以获取前一条命令的中间过程输出

1
ls /etc/*.conf | xargs -i cp {} ~/dir

find函数忽略大小写

1
find [path] -iname STR
Brick wechat
扫一扫,用手机看更方便(^ ◕ᴥ◕ ^)