5个实用的Linux命令行技巧
时间:2022-05-07
本文章向大家介绍5个实用的Linux命令行技巧,主要内容包括1. 输出内容格式化、2. 重复执行命令,直到成功、3. 进程列表根据CPU、内存排序、4. 用 root 权限执行上一条命令、5. 强大的 Xargs 命令、示例(2)、示例(3)、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
1. 输出内容格式化
例如 mount
命令的输出结果看起来很费劲
可以使用 column
对其进行格式化
mount | column -t
再比如有的文件内容格式也不友好
cat /etc/passwd
可以根据 :
进行格式化
cat /etc/passwd | column -t -s:
2. 重复执行命令,直到成功
例如:
- ping 一个server直到其是live状态
- 检查某个特定的文件是否被成功上传
- 检查某个特定URL是否存在
可以使用 while true
实现,示例:
while true
> do
> ping -c 1 baidu.com > /dev/null 2>&1 && break
> done;
其中 >/dev/null 2>&1
是把程序的输出转到空设备 /dev/null
(详细说明可以查看之前的文章 “理解 Linux shell 中的一个方言:2>&1”)
3. 进程列表根据CPU、内存排序
ps -aux
的结果中第3、第4列为 cpu
和 内存
根据内存排序:
ps aux | sort -rnk 4
根据CPU排序:
ps aux | sort -rnk 3
4. 用 root 权限执行上一条命令
有时我们会忘记在需要root权限的命令前使用 sudo
,就要重写,比较麻烦,可以使用 sudo !!
命令来省去麻烦
例如
[vagrant@localhost ~]$ cat /etc/shadow
cat: /etc/shadow: Permission denied
接下来直接执行 sudo !!
就可以用 root 权限执行上一条命令 cat /etc/shadow
5. 强大的 Xargs 命令
示例(1)
例如文件 urls.txt
中有一个url列表,现在想下载他们,可以使用命令一次完成:
cat urls.txt | xargs wget
xargs
会把 cat
的输出结果作为参数传给 wget
示例(2)
再比如需要杀掉 tomcat
进程
ps -ax | grep tomcat | grep -v grep | awk '{print $1}' | xargs kill -9
grep tomcat
过滤出含有 tomcat
的进程
grep -v grep
是排除含有 grep
的进程
awk '{print $1}'
取得进程号那列内容
xargs kill -9
把前面取得的tomcat进程号传给 kill
命令
示例(3)
如果要传递的命令中需要多个参数,如 cp
有2个参数,xargs
要把之前命令的输出作为其中一个参数传给 cp
ls *.txt | xargs -i cp {} /tmp
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android 7.0 运行时权限弹窗问题的解决
- Android加密之全盘加密详解
- Android 实现彻底退出自己APP 并杀掉所有相关的进程
- 使用Android开发接入第三方原生SDK实现微信登录
- Android打包篇:Android Studio将代码打包成jar包教程
- Android系统制作自定义签名的例子
- 抖音短视频系统开发,日期加减
- Android开发之InetAddress基础入门简介与源码实例
- Android实现通讯录功能
- 教你用CentOS7下使用mktorrent制作PT种子
- 让 Python 的高阶函数支持链式调用[实用库/轮子]
- 解决了一个 Python Type Hints 的问题,分享一下
- Elasticsearch:flattened 数据类型 (7.3 发行版新功能)
- Android开发准确获取手机IP地址的两种方式
- Android网络请求-sign参数的设置方式