linux几条常用命令

简介:

一. 写一个sed命令,修改/tmp/input.txt文件的内容,要求:(1) 删除所有空行;(2) 一行中,如果包含"11111",则在"11111"前面插入"AAA",在"11111"后面插入"BBB",比如:将内容为0000111112222的一行改为:0000AAA11111BBB2222

1
2
( 1 )sed   '/^$/d'  / tmp / input .txt
( 2 )sed   's/\(11111\)/AAA\1BBB/g'  / tmp / input .txt

 

二. sed对文件进行多重编辑命令

1
2
3
4
5
6
7
8
9
10
11
( 1 ) sed  +  选项e
格式为:sed  - 'sed命令'  - 'sed命令'  filename
sed  - 's/seugrid1/SEUGRID1/'  - 's/Certificate/CERTIFICATE/'  input
  
( 2 ).sed  +  {}
格式为:sed  'sed命令/{};'  filename
sed  '/certificate/{s/certificate/INSTALL/;s/your/YOUR/;s/user/OTHER/;}'  input
  
( 3 ).利用分号分隔多个编辑命令。
格式为:sed  '编辑命令1;编辑命令2;……'  输入文件
sed  's/seugrid1/SEUGRID1/ ; s/certificate/CERTIFICATE/'  input

 

450541

 

三. 找到/tmp/目录下面的所有名称以"_s1.jpg"结尾的普通文件,如果其修改日期在一天内,则将其打包到/tmp/back.tar.gz文件中

有三种方法:

1
2
3
( 1 )find  / tmp  - name  '*_s1.jpg'  - mtime  - 1  | xargs tar  - zcvf  / tmp / back.tar.gz
( 2 )tar  - zcvf  / tmp / back.tar.gz $(find  / tmp  - name  '*_s1.jpg'  - mtime  - 1 )
( 3 )find  / tmp  - name  '*_s1.jpg'  - mtime  - 1  | tar  - zcvf  / tmp / back.tar.gz  - -

 

四. find查找两种后缀名的3种方法

1
2
3
4
( 1 ) find  .   - name  "*.txt"  - - name  "*.log"
( 2 ) find .   - regex   ".*\.Java\|.*\.xml"
上面这条命令会查找当前文件夹下面的所有java文件和xml文件,find默认采用emacs正则,会比较罗嗦,如果采用posix - extended正则会比较简单,如下:
( 3 ) find .   - regextype posix - extended  - regex  ".*\.(java|xml)"

 

五. 用netstat命令配合其他shell命令,按照来源IP统计下所有到80端口的ESTABLISHED状态链接的个数,输出结果类似(第一列为连接数,第二列为IP):

1
netstat  - an | grep ESTABLISHED | grep  ":8080"  | awk  'BEGIN{FS="[[:space:]:]+"}{print $8}' | sort| uniq  - c | sort  - nr| head  - 10

 

 

六. 写一个shell命令,统计apache日志文件(access_log)中某一天中每个URL的访问次数,并按照次数由小到大的顺序排序输出:

1
cat access_log|awk  '{print $7}' | sort | uniq  - c | sort  - n | head  - 10

 

 

七. 查看服务器tcp连接状态并汇总

1
netstat  - an | awk  '/tcp/{++a[$NF]}END{for(b in a )print b,a[b]}'

 

八. 统计apace或者nginx日志文件访问次数最多的100IP及次数

1
awk  '{print $1}'  access_log| sort | uniq  - c | sort  - - 1  - r | head  - 100

 

九. 每周一下午三点将/tmp/logs目录下面的后缀为*.log的所有文件rsync同步到备份服务器192.168.1.100中同样的目录下面,crontab配置项该如何写:

1
*  15  *  *  1  rsync –vazutopg  - - include = "*.log"  - - exclude = *  / tmp / logs rsync@ 192.168 . 1.100 : / tmp / logs  - - password - file = / etc / rsyncd / password.secret >> / var / logs / rsync.log  2 >& 1

 

十. 请写出用tcpdump抓取符合如下条件包的命令:(1) 目标端口是 80;(2) 来源IP或者是1.1.1.1,或者是 2.2.2.2;(3) UDP包;

1
2
3
( 1 ) tcpdump tcp  - i eth0 dst port  80
( 2 ) tcpdump src  1.1 . 1.1  or  2.2 . 2.2
( 3 ) tcpdump udp


本文转自pizibaidu 51CTO博客,原文链接:http://blog.51cto.com/pizibaidu/1844266,如需转载请自行联系原作者
相关文章
|
13小时前
|
存储 缓存 网络协议
Linux系统之ARP命令的基本使用
【7月更文挑战第2天】Linux系统之ARP命令的基本使用
8 2
|
13小时前
|
存储 数据挖掘 Linux
探索Linux命令rpm2cpio:解析RPM包内容的利器
`rpm2cpio`是Linux下用于从RPM包中提取内容的工具,它将`.rpm`转换为CPIO归档。无需安装,可直接访问包内文件,适合数据分析。命令简单,常与`cpio`结合使用,如`rpm2cpio package.rpm | cpio -idmv`解压文件。示例包括提取特定文件和列出包内所有文件。注意权限、路径和文件完整性,使用前备份数据,并查阅文档以优化使用。
|
13小时前
|
监控 安全 Linux
Linux命令rpmkeys:守护RPM包的安全之门
`rpmkeys`是Linux中管理RPM包公钥的工具,用于验证软件包的签名,确保安全。它支持导入、导出、删除和查询公钥,通过数字签名保证包的完整性和来源可靠性。例如,使用`--import`导入公钥,`--query`查询公钥。最佳实践包括验证公钥来源、定期更新并备份。该命令间接保障了数据处理和分析的安全环境。
|
1天前
|
缓存 监控 Linux
Linux系统之smem命令的基本使用
【7月更文挑战第1天】Linux系统之smem命令的基本使用
16 2
|
1天前
|
存储 数据管理 Linux
Linux命令reposync详解
`reposync`是Linux的命令行工具,用于同步远程YUM仓库到本地,便于离线部署和更新软件。它从远程索引中识别新、改、删包,下载到指定目录,支持配置文件、多参数定制,如`-c`指定配置,`-r`选择仓库,`-p`设定下载路径。`-n`仅同步最新包,`-q`减少输出。最佳实践包括定时同步、验证GPG签名和使用HTTPS。注意网络稳定性、磁盘空间及索引备份。
|
1天前
|
Linux 数据处理 开发工具
Linux命令RepoManage详解
Repo是Google为大型项目开发的Git管理工具,用于多仓库同步和管理,常用于Android开发。它基于一个manifest文件协调Git仓库。主要命令包括`init`、`sync`、`start`和`upload`。例如,`repo init -u https://android.googlesource.com/platform/manifest`初始化项目,`repo sync`同步代码。使用`repo forall`可配合Git命令在所有仓库执行操作,如切换分支。注意网络、版本和权限问题,并遵循最佳实践进行高效管理。
|
1天前
|
存储 监控 Linux
深入解析Linux命令:rootfs-expand
`rootfs-expand`是假设的Linux工具,用于扩展嵌入式设备或特定发行版的根文件系统。它检查当前大小,确定可扩展空间,并调整分区。命令参数包括 `-s` 设置扩展大小,`-f` 强制扩展,`-v` 显示详细信息和 `-h` 显示帮助。扩展前务必备份数据,谨慎使用强制选项,并确保有足够未分配空间。示例命令:`sudo rootfs-expand -s 4G [-v]`。虽然具体实现会有所不同,但这个概念可以帮助理解根文件系统扩展的一般流程。
|
1天前
|
数据采集 Linux 数据处理
深入了解Linux命令:rev
`rev`命令在Linux中反转文本字符顺序,用于数据预处理和分析。它可以改变每行字符的排列,例如`echo "Hello, World!" | rev`输出`!dlroW ,olleH`。常用参数包括显示版本信息的`-V`。结合其他命令如`cat`,可处理文件内容。注意行格式和性能影响,适用于小到中型数据处理。
|
1天前
|
安全 数据挖掘 Linux
Linux命令repotrack的详解与应用
在Linux系统中,软件包管理是一项至关重要的任务,尤其是在没有网络连接或需要离线安装软件包的场景中。`repotrack`命令就是这样一个强大的工具,它帮助用户下载RPM包及其所有依赖项,从而简化了离线安装的过程。本文将详细介绍`repotrack`命令,包括其定义、工作原理、主要特点、使用示例以及最佳实践。
|
1天前
|
Linux 数据处理
Linux命令reset详解
`reset`命令在Linux中用于修复终端显示异常,它是`tset`的软链接。通过重置显示属性和参数,恢复终端正常状态。特点包括自动检测终端类型、多参数支持及恢复显示设置。常用参数有 `-e`, `-i`, `-k` 用于设置控制字符,`-V` 显示ncurses版本。在终端出现问题时,简单运行`reset`即可重置,定期使用可维护终端整洁。记得确保已安装ncurses库。