讲真,懂这些Linux命令跟懂cd比,工资至少高一级~

2024-06-18 06:52

本文主要是介绍讲真,懂这些Linux命令跟懂cd比,工资至少高一级~,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

众所周知,Linux知识很广,光靠面试官那短暂的面试时间也很难看出一个人的实际水准,所以有时候他们靠技巧答题方式进行人才筛选。以下就是我公司面试题中常见的一些高效的Linux命令题目,掌握这些命令,最后拿到的工资肯定比只会cd,ls这些高,而且至少高一个等级。一起看看吧,看看大家是否都会了吗。

以下相关高效命令实用指数不分先后,更多的是以简单的命令形式带给大家更好的使用体验。

1、如何快速创建多个相同类型的文件;

如创建名字为haodao1.py,haodao2.py到haodao100.py的批量文件。

touch haodao{1..100}.py

2、如何快速生成一个大文件;

有时候需要在本机生成一个大文件,用于测试磁盘的读写能力,可以借助dd命令生成大文件。

dd if=/dev/zero of=/root/haodaolinux/test.txt bs=1M count=1024

上述命令,在/root/haodaolinux目录下生成一个文件名为test.txt 大小为 1G 的文件。

3、快速清空一个文件的方法,如清空haodao.py文件;

cat /dev/null > haodao.py

echo -n "" > haodao.py

true > haodao.py

: > haodao.py

truncate -s 0 haodao.py

以上5种快速清空文件方法,大家可以选择自己常用的一种,大家知道几种呢!

4、查找当前目录下名字为haodao.py的文件;

find . -name haodao.py

5、查找当前目录下名字以.py结尾的文件;

find . -name "*.py"

6、查找当前目录下名字以.py结尾的文件,并且指定为文件类型搜索;

find . -type f -name "*.py"

7、查找当前目录下名字包含haodao的目录;

find . -type d -name "haodao*"

8、查找当前目录下文件权限为755的对应文件;

find . -type f -perm 755

9、查找当前目录下不具有755权限的所有文件;

find . -type f ! -perm 755

10、查找当前目录下具有777权限的所有文件,并且将这些权限全部改为755;

find . -type f -perm 777  -exec chmod 755 {} \;

11、查找当前目录下文件大小为100MB~1GB的所有文件;

find . -type f -size +100M -size -1G

12、查找当前目录下以.py结尾的文件,并且删除;

find . -name "*.py" -exec rm -rf {} \;

find . -name "*.py" | xargs rm -rf {};

rm -rf $(find . -name "*.py")

以上3种快速删除指定类别文件方法,哪一种更香更好用呢?

13、查找当前目录下30天前修改过的所有文件;

find . -mtime 30

14、查找当前目录下30天前访问过的所有文件;

find . -atime 30

15、查找当前目录下过去1个小时内修改过的所有文件;

find . -mmin -60

16、查找当前目录下过去1个小时内访问过的所有文件;

find . -amin -60

17、查找当前目录下修改超过10天,但修改不到30天的所有文件;​​​​​​​

find . -mtime +10 -mtime -30

18、查找当前目录下7天前创建的,并且后缀名是以.py结尾的文件,并且进行删除;

find . -mtime +7  -name "*.py" | xargs rm -rf {};

19、查找当前目录大于1000M的文件,并将该文件移动到/root/home目录下;

find . -size +1000M -exec mv {} /root/home ;

20、查找当前目录下创建于30天前,大小大于1000M,以.py结尾的文件,并且进行删除;

find  . -name "*.py" –mtime +30 –type f –size +1000M |xargs rm –rf {};

21、查看有几个逻辑cpu, 包括cpu型号;

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

22、查看有几颗cpu,每颗分别是几核;

cat /proc/cpuinfo | grep physical | uniq -c

23、后台运行命令,如后台运行ping www.baidu.com命令;​​​​​​​

 nohup ping www.baidu.com &

以上命令执行时后台运行,并且有nohup.out输出。

nohup ping www.baidu.com > /dev/null &

以上命令执行时后台运行, 不输出任何日志。

nohup ping www.baidu.com >out.log 2>&1 &

以上命令执行时后台运行, 并将错误信息做标准输出到日志中。

24、强制关闭进程名包含xxx的所有进程;

ps aux|grep xxx | grep -v grep | awk '{print $2}' | xargs kill -9

25、/var目录按照目录大小排序展示最前面20个目录或者文件;

du -xB M --max-depth=2 /var | sort -rn | head -n 20

26、按照大到小排列出当前文件或者目录最大的10个;

du -s * | sort -n | tail

27、查找当前系统内存使用量较高的进程(前20个);

ps -aux | sort -rnk 4 | head -20

可以看到输出的第 4 列就是内存的耗用百分比。最后一列就是相对应的进程。

28、查找当前系统CPU使用量较高的进程(前20个);

ps -aux | sort -rnk 3 | head -20

可以看到输出的第 3 列为 CPU 的耗用百分比,最后一列就是对应的进程。

29、后台持续 ping包, 并将结果记录到日志中;

ping www.baidu.com | awk '{ print $0 " " strftime("%Y-%m-%d %H:%M:%S",systime()) }' >> /root/haodaoping.log &

以上命令实现后台每一秒自动ping www.baidu.com,并将结果记录到/root/haodaoping.log文件中;

30、查找 80 端口请求数最高的前 15 个 IP;

netstat -anlp|grep 80|grep tcp|awk '{print $5}' |awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n 15

31、查看自己本机系统最常用的10条命令;

cat /root/.bash_history |grep -v ^# |awk '{print $1}' |sort |uniq -c |sort -nr |head -10

32、查看2022年12月11日09时这个时间内有多少个IP访问你的tomcat服务器;

awk '{print $4,$1}' access.log | grep 11/Dec/2022:09 | awk '{print $2}'| sort | uniq | wc -l

这里只要给出访问日志文件,就可以计算出来,自己可以根据需要计算某个时间点的访问的IP数。

33、查看自己tomcat服务器访问量排在前20 位的IP地址;

cat access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -20

34、查看某一个IP地址访问了tomcat服务器的哪些页面资源;

grep ^192.168.30.200 access.log| awk '{print $1,$7}'

35、查看自己tomcat服务器中某一个页面资源被访问的次数;

grep "/portal/index.html" access.log | wc -l

36、通过抓包工具tcpdump查看8080端口访问量情况;​​​​​​​

tcpdump -i ens33 -tnn dst port 8080 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -10

37、如何通过sed命令将文件test.py中的haodao全部替换成HAODAO;

sed -i "s/haodao/HAODAO/g" test.py

38、替换haodao.py文件中的目录;

sed -i "s:/etc/dhcp:/home:g" haodao.py

即表示将haodao.py文件中的/etc/dhcp目录替换成/home目录。

39、以下针对haodao.py文件举例sed命令常见技巧;

1)去掉行首的#字符,命令为:

sed -i "s/^#//g" haodao.py

2)在行首添加linux字符,命令为:

sed -i "s/^/linux/g" haodao.py

3)在行尾添加一个study字符,命令为:

sed -i "s/$/study/" haodao.py

4)在特定行后,即we love行后添加一个you字符,命令为:

sed -i "/we love/ayou" haodao.py

5)在特定行前,即haodao行前添加一个where字符,命令为:

sed -i "/haodao/iwhere" haodao.py

40、针对网口ens33抓取不限制大小的报文,保存为文件haodao.cap;

tcpdump -i ens33 -s 0 -w haodao.cap

41、针对网口ens33进行抓包,过滤出 icmp 报文并且源 IP 地址是 192.168.20.231的相关报文;

tcpdump icmp and src 192.168.20.231 -i ens33 -n

42、针对网口ens33进行抓包,过滤出源 IP 地址是 192.168.20.231的相关报文;

tcpdump src host 192.168.20.231 -i ens33 -n -c 5

43、针对网口ens33进行抓包,过滤出目的 IP 地址是 192.168.20.231的相关报文;

tcpdump dst host 192.168.20.231 -i ens33 -n -c 5

44、针对网口ens33进行抓包,过滤出端口号是 8080 的相关报文;

tcpdump port 8080 -i ens33 -n -c 5

45、针对网口ens33进行抓包,过滤出 80端口到443端口 的相关报文;

tcpdump portrange 80-433 -i ens33 -n -c 8

这篇关于讲真,懂这些Linux命令跟懂cd比,工资至少高一级~的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1071592

相关文章

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

[Linux]:进程(下)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:Linux学习 贝蒂的主页:Betty’s blog 1. 进程终止 1.1 进程退出的场景 进程退出只有以下三种情况: 代码运行完毕,结果正确。代码运行完毕,结果不正确。代码异常终止(进程崩溃)。 1.2 进程退出码 在编程中,我们通常认为main函数是代码的入口,但实际上它只是用户级