Linux shell下30个有趣的命令和提示(推荐)

 更新时间:2017年10月08日 08:44:03   作者:尽信书不如无书   我要评论

这些是我收集了多年的Linux shell的30个有趣的命令和提示。特此分享到脚本之家平台,供大家参考

这些是我收集了多年的Linux shell的30个有趣的命令和提示。

1. 监控命令(每2秒运行一次)

watch "ls -larth"

2. 使用一个端口杀死程序

sudo fuser -k 8000/tcp

3. 限制以下命令的内存使用

ulimit -Sv 1000    # 1000 KBs = 1 MB
ulimit -Sv unlimited # Remove limit

4. 使用正则表达式重命名所选文件

rename 's/\.bak$/.txt/' *.bak

5. 获得完整的文件路径

readlink -f file.txt

6. 列出tar.gz文件的内容,并只提取一个文件

tar tf file.tgz
tar xf file.tgz filename

7. 按照文件大小列出文件

ls -lS

8. 跟踪路由

mtr google.com

9. 查找文件的提示

find . -size 20c       # By file size (20 bytes)
find . -name "*.gz" -delete # Delete files
find . -exec echo {} \;   # One file by line
./file1
./file2
./file3
find . -exec echo {} \+   # All in the same line
./file1 ./file2 ./file3

10. 打印无限循环的文本

yes
yes hello

11. 当前登录用户

w

12. 输出结果前置行号

ls | nl

13. Grep使用Perl风格的语法(允许像\t这样的字符)

grep -P "\t"

14. Cat命令反向输出(从末端开始)

tac file

15. 检查每个目录中的文件的的权限

检测权限错误是很有用的,例如在配置web服务器时。

namei -l /path/to/file.txt

16. 每次修改文件时都会执行命令

while inotifywait -e close_write document.tex
do
  make
done

17. 复制到剪贴板

cat file.txt | xclip -selection clipboard

18. Latex的拼写和语法检查

detex file.tex | diction -bs

你可能需要安装以下内容:sudo apt-get install diction texlive-extra-utils。

19. 检查资源的使用情况

/usr/bin/time -v ls

20. 文件的随机行

cat file.txt | sort -R
cat file.txt | sort -R | head # Pick a random sambple
# Even better (suggested by xearl in Hacker news):
shuf file.txt

21. 在离开SSH会话后保持程序运行

如果程序不需要任何交互:

nohup ./script.sh &

如果你需要手动输入一些内容,然后离开:

./script.sh
<Type any input you want>
<Ctrl-Z>     # send process to sleep
jobs -l      # find out the job id
disown -h jobid  # disown job
bg        # continue running in the background

当然,也可以使用screen或tmux来完成此目的。

22. 在有限的时间内运行命令

timeout 10s ./script.sh
# Restart every 30 minutes
while true; do timeout 30m ./script.sh; done

23. 从两个排序文件中合并行

comm file1 file2

打印这三列:

1.行file1独有。
2.行file2独有。
3.在行file1和行file2中都有。

使用选项-1、-2、-3,可以删除这些列。

24. 在文件中分割长文件,使用相同数量的行

split -l LINES -d file.txt output_prefix

25. 刷新交换分区

如果一个程序消耗了太多的内存,交换分区就会被剩余的内存填满,当你回到正常的时候,一切都是缓慢的。只需重新启动交换分区来修复它:

sudo swapoff -a
sudo swapon -a

26. 修复ext4文件系统的superblock问题

sudo fsck.ext4 -f -y /dev/sda1
sudo fsck.ext4 -v /dev/sda1
sudo mke2fs -n /dev/sda1
sudo e2fsck -n <first block number of previous list> /dev/sda1

27. 创建给定大小的空文件

fallocate -l 1G test.img

28. 从命令行操作PDF文件

与join,shuffle,select等命令相比,pdftk是个更好用的命令:

pdftk *.pdf cat output all.pdf    # Join PDFs together
pdftk A=in.pdf cat A5 output out.pdf # Extract page from PDF

还可以使用cpdf操作内容:

cpdf -draft in.pdf -o out.pdf   # Remove images
cpdf -blacktext in.pdf -o out.pdf # Convert all text to black color

29. 根据生成的输出监视进度

# Write random data, encode it in base64 and monitor how fast it
# is being sent to /dev/null
cat /dev/urandom | base64 | pv -lbri2 > /dev/null
# pv options:
#  -l, lines
#  -b, total counter
#  -r, show rate

30. 在Ubuntu中找到一个文件的包

apt-file update
apt-file search dir/file.h

总结

以上所述是小编给大家介绍的Linux shell下30个有趣的命令和提示,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

  • linux动态链接库使用方法分享

    linux动态链接库使用方法分享

    这篇文章主要介绍了linux动态链接库使用方法,大家参考使用吧
    2014-01-01
  • 在Shell命令行处理JSON数据的方法

    在Shell命令行处理JSON数据的方法

    这篇文章主要介绍了在Shell命令行处理JSON数据的方法,使用jq工具实现,需要的朋友可以参考下
    2014-03-03
  • 一天一个shell命令 linux文本内容操作系列-sed命令详解

    一天一个shell命令 linux文本内容操作系列-sed命令详解

    这篇文章主要介绍了一天一个shell命令 linux文本内容操作系列-sed命令详解,需要的朋友可以参考下
    2016-06-06
  • Shell交互批量更改主机名的方法

    Shell交互批量更改主机名的方法

    大家可能会遇到这种情况,需要批量修改主机名和同步hosts文件到多台主机,例如新购置了一批云服务器等,可能主机名称上并不能满足你的命名规则或规范,但如果一台台去更改可能就太慢又无聊,所以shell脚本绝对是你的最佳选择。下面看看Shell批量更改主机名的方法。
    2016-12-12
  • Linux链接命令的实例详解

    Linux链接命令的实例详解

    这篇文章主要介绍了Linux链接命令的实例详解的相关资料,希望通过本文大家能掌握Linux链接命令的使用方法,需要的朋友可以参考下
    2017-08-08
  • Linux通过命令压缩与解压缩的方法| tar, tar.gz, tar.bz2

    Linux通过命令压缩与解压缩的方法| tar, tar.gz, tar.bz2

    这篇文章主要介绍了Linux通过命令压缩与解压缩的方法| tar, tar.gz, tar.bz2,内容囊括了打包、压缩、解压缩的基本概念,最后通过实例讲解,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-04-04
  • CentOS下对shell脚本加密的二种方法

    CentOS下对shell脚本加密的二种方法

    这篇文章主要介绍了CentOS下对shell脚本加密的二种方法,本文介绍了gzexe、shc两款加密工具,并分别讲解了加密方法,需要的朋友可以参考下
    2014-12-12
  • Linux用户配置sudo权限(visudo)的方法

    Linux用户配置sudo权限(visudo)的方法

    下面小编就为大家带来一篇Linux用户配置sudo权限(visudo)的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Linux shell实现HTTP服务示例代码

    Linux shell实现HTTP服务示例代码

    这篇文章介绍的是如何实现一个可以调用shell脚本的HTTP服务,本文给出了详细的示例代码,有需要的可以参考借鉴。
    2016-08-08
  • Shell脚本实现检测Cygwin最快的镜像站点

    Shell脚本实现检测Cygwin最快的镜像站点

    这篇文章主要介绍了Shell脚本实现检测Cygwin最快的镜像站点,本文的原理和脚本也可适用其它软件比如apache、nginx等开源软件,需要的朋友可以参考下
    2015-04-04

最新评论