【好记性不如烂笔头】linux基本命令总结

本文详细介绍了Linux系统中的挂载目录、常用文件和目录功能、文件搜索命令如locate和find,以及压缩、关机/重启、网络状态监控和shell基础等内容。此外,还涵盖了面试技巧,如Java开发者必备的知识点和面试专题列表。
摘要由CSDN通过智能技术生成

| /media | 挂载目录 |

*********************************** 视觉疲劳分割线 ***********************************

| 目录 | 作用 |

| — | — |

| /root | 超级用户的家目录 |

| /tmp | 临时目录 |

| /sbin | 命令保存目录(超级用户才能使用的目录) |

| /proc | 直接写入内存 |

| /usr | 系统软件资源目录 |

| /usr/bin | 系统命令(普通用户) |

| /usr/sbin | 系统命令(超级用户) |

| /var | 系统相关文档内容 |

4. 链接命令:ln

注意:实际的应用中实用的更多的是软链接

硬链接

ln /root/cangls /tmp/cangls.hard

特征

  • 拥有相同的I节点和block块,可以看做是同一个文件

  • 可通过I节点识别

  • 不能夸分区

  • 不能针对目录使用

软链接

ln -s /root/cangls /tmp/cangls.soft

注意:使用软链接时,原文件一定要用绝对路径

特征

类似windows快捷键。软链接拥有自己的I节点和block块,但是数据块中只保存源文件的文件名和I节点号,并没有实际的文件数据。lrwxrwxrwx,l:软链接,软链接权限都为lrwxrwxrwx,真实权限都看源文件。修改任意文件,另一个都改变。删除原文件,软链接无法使用。

二、文件搜索命令


1. 文件搜索命令locate

  • locate [文件名],只能接文件名

  • 在后台数据库中按文件名搜索,搜索速度更快

/var/lib/mlocate

  • locate命令所搜索的后台命令,不是及时更新,这时可以使用updatedb命令更新

updatedb 更新数据库

/etc/updatedb.conf配置文件

  • PRUNE_BIND_MOUNTS,开启搜索限制

  • PRUNEFS=“”,不搜索的系统文件

  • PRUNENAMES=“”,不搜索的文件类型

  • PRUNEPAEHS=“”,不搜索的路径

2. 命令搜索命令

whereis [命令],搜索命令所在路径以及帮助文档所在位置

  • b:只查找可执行文件

  • m:只查找帮助文件

  • 注意:局限性,只能搜索系统命令

which [文件名]

  • 搜索所在路径以及别名,部分命令不支持,例如:pwd,cd

find 文件搜索命令

  • find [搜索范围] [搜索条件]

例如

find / -name install.log

  • 避免大范围搜索,会非常耗费系统资源。

  • find是在系统中搜索符合条件的文件名。如需匹配,使用通配符,通配符是完全匹配。

不区分大小写

find /root -iname install.log

按照所有者搜索

find /root -user root

查找所有者的文件

find /root -nouser

-10,10天内修改的文件;10,10天当天修改的文件;+10,10天前修改的文件。

查找10天前修改的文件

#atimne,文件访问时间;ctime,修改文件属性;mtime,修改文件内容。

find /var/log -mtime +10

查找/etc目录下大小为25KB的文件:find /etc -size 25k

  • -25k,小于25KB的文件

  • 25k,等于25KB的文件

  • +25k,大于25KB的文件

查找i节点为262422的文件

  • find . -inum 262422

查找/etc/目录下大于20KB且小于50KB的文件

find /etc -size +20k -a -size -50k

  • -a相当于and,逻辑与,两个条件都满足

  • -o相当于or,逻辑或,两个条件满足一个即可

查找/etc/目录下大于20KB且小于50KB的文件,并且显示详细信息

find /etc -size +20k -a -size -50k -exec ls -lh {} ;

  • -exec/-ok 命令 {}\;对搜索结果执行操作

grep 字符串搜素命令

  • grep [选项] 字符串 文件名,在文件当中匹配符合的字符串

  • -i,忽略大小写

  • -v,排除指定字符串

根据文件大小匹配:

grep “size” anaconda-ks.cfg

findgrep的区别

  • find命令:在系统当中搜索符合条件的文件名,如需匹配,使用通配符,通配符是完全匹配。

  • grep命令:在文件当中搜索符合条件的字符串,如需匹配,使用正则表达式进行匹配,正则表达式是包含匹配。

三、帮助命令


1. 帮助命令,man的级别

| 选项 | 含义 |

| — | — |

| 1 | 查看命令的帮助 |

| 2 | 查看可被内核调用的函数的帮助 |

| 3 | 查看函数和函数库的帮助 |

| 4 | 查看特殊件的帮助(主要是/dev目录下的文件) |

| 5 | 查看配置文件的帮助 |

| 6 | 查看游戏的帮助 |

| 7 | 查看其它杂项的帮助 |

| 8 | 查看系统管理员可用命令的帮助 |

| 9 | 查看和内核相关文件的帮助 |

man 命令,获取指定命令的帮助

例如:查看ls的帮助

man ls

查看命令拥有哪个级别的帮助

  • man -f 命令相当于whatis命令

例如:

man -5 passwd

man -4 null

man -8 ifconfig

查看命令相关的所有帮助

  • man -k 命令,相当于apropos 命令

  • 例如:apropos -passwd

2. 其它帮助命令

  • --help命令,获取命令选项帮助

  • 例如:ls --hrlp

help shell内部命令

  • 获取shell内部命令的帮助

  • 例如:whereis cd,确定是否是shell内部命令

  • 例如:help cd,获取内部命令帮助

info,详细命令帮助

  • 回车:进入子帮助页面(带有*号标记)

  • u:进入上层页面

  • n:进入下一个帮助小结

  • p:进入上一个帮助小结

  • q:退出

四、压缩命令


1. 压缩命令1

zip命令

  • 压缩文件: zip 压缩文件名 源文件

  • 压缩目录: zip -r 压缩文件名 原目录

  • 解压缩:unzip 压缩文件

.gz格式压缩,gzip 源文件

  • 压缩为.gz格式的压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件

  • 压缩为.gz格式,源文件保留,例如:gzip -c bols > bols.gz

gzip -r 目录

  • 压缩目录下所有的子文件,但不能压缩目录

.gz格式解压缩

  • gzip -d 压缩文件

  • gunzip 压缩文件

.bz2格式压缩

  • bzip2 源文件

  • 压缩为.bz2格式,不保留源文件

bzip2 -k 源文件

  • 压缩后保留源文件

  • 注意:bzip2命令不能压目录

.bz2解压缩

  • bzip2 -d 压缩文件

  • 解压缩,加上-k属性保留压缩文件

bunzip2 压缩文件

  • 解压缩,加上-k属性保留压缩文件

2. 压缩命令2

  • .tar.gz 压缩格式

  • 其实.tar.gz格式是先打包为.tar格式,在压缩为.gz格式

tar -zcvf 压缩包名.tar.gz 源文件

  • -z:压缩为.tar.gz格式

tar -zxvf 压缩包名.tar.gz 源文件

  • -x:解压缩.tar.gz格式

例如,解压缩nginx的源码包

tar -zxvf nginx-1.12.tar.gz

.tar.bz2 压缩格式

  • tar -jcvf 压缩包名.tar.bz2 源文件

  • -j:压缩为.tar.bz2格式

  • tar -jxvf 压缩包名.tar.bz2 源文件

  • -x:解压缩.tar.bz2格式

打包命令tar

tar -cvf 打包文件名 源文件

  • -c:打包

  • -v:显示过程

  • -f:指定打包后的文件名

  • 例如:tar -cvf bols.tar longls

解打包命令

  • tar -xvf 打包文件名

  • -x:解打包

  • 例如:tar -xvf bols.tar

五、关机与重启命令


了解关机与重启命令之前,首先看一下系统运行级别

| 选项 | 含义 |

| — | — |

| 0 | 关机 |

| 1 | 单用户 |

| 2 | 不完全多用户,不含NFS服务 |

| 3 | 完全多用户 |

| 4 | 未分配 |

| 5 | 图形界面 |

| 6 | 重启 |

1. 关机命令

shutdown 命令,shutdown [选项] 时间

  • -c:取消前一个关机命令

  • -h:关机

  • -r:重启

*.**********************************************分割线***********************************************1

  • 其它关机命令:halt,poweroff,init 0

  • 其它重启命令:reboot,init 6

注意使用服务器时,不要随意使用关机命令。一旦使用了,会造成不必要的麻烦。

2.重启命令

  • reboot,执行命令进行重启

  • shutdown -r,执行命令进行重启

注意:使用logout命令,养成良好的习惯退出登录

六、其它常用命令


1. 挂载命令格式

mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点

| 内容 | 含义 |

| — | — |

| -t文件系统 | 加入系统文件类型来指定挂载的类型,可以是ext3ext4iso9660等文件系统 |

| -o特殊选项 | 可以指定挂载的额外选项 |

挂载命令,查询与自动挂载

  • mount:查询系统中已经挂载的设备

  • mount -a:依据配置文件/etc/fstb的内容,自动挂载

mount部分参数说明

| 参数 | 说明 |

| — | — |

| atime/noatime | 更新访问时间/不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新。 |

| async/sync | 异步/同步,默认为异步 |

| auto/noauto | 自动/手动,执行mount -a命令时,是否会自动安装/etc/fstb文件内容挂载,默认自动。 |

| defaults | 定义默认值,相当于rwsuiddevexecautonouserasync这七个选项。 |

| exec/noexec | 执行/不执行,设定是否允许在文件系统中执行可执行文件,默认exec允许。 |

| remount | 重新挂载已挂载的文件系统,一般用于指定修改特殊权限。 |

| rw/ro | 读写/只读,文件系统挂载时,是否具有读写权限,默认rw。 |

| suid/nosuid | 具有/不具有suid权限,设定文件系统是否具有suid和sgid的权限,默认具有。 |

| user/nouser | 允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认不允许,只有root可以挂载分区。 |

| usrquota | 写入代表文件系统支持用户磁盘配额,默认不支持。 |

| grpquota | 写入代表文件系统支持组磁盘配额,默认不支持。 |

挂载光盘

建立挂载点

mkdir /mnt/cdrom/

挂载光盘,只是习惯在mnt下建立,media下建立也行。

指定参数

mount -t iso9660 /dev/cdrom /mnt/cdrom/

不指定参数

mount /dev/sr0 /mnt/cdrom/

卸载命令

  • umount 【接设备文件名或者挂载点】

例如:

umount /mnt/cdrom/

挂载U盘

  • fdisk -l:查看U盘设备文件名

mount -t vfat /dev/sdb1 /mnt/usb/

注意:Linux默认不支持NTFS文件系统

2. 用户登录查看命令

查看用户登录信息w 接用户名

命令输出

| 符号 | 含义 |

| — | — |

| USER | 登录的用户名 |

| TTY | 登录终端 |

| FROM | 从哪个IP地址登录 |

| LOGIN@ | 登录时间 |

| DILE | 用户闲置时间 |

| JCPU | 与该终端连接的所有进程占用的时间。这个时间里并不包括过去的后台作业时间,但包括当前正在运行的后台作业占用时间 |

| PCPU | 当前进程所占用时间 |

| WHAT | 当前正在运行的命令 |

| w | 查询登录用户,显示系统时间和运行时间,用户个数以及平均负载。 |

w命令

查看登录用户信息who 用户名

命令输出

  • 用户名,登录终端,登录时间(登录来源IP地址)

who命令

  • whoami 查看当前用户

whoami命令

查询当前登录和过去登录的用户信息last

  • last命令默认读取/var/log/wtmp文件数据

  • 命令输出:用户名,登录终端,登录IP,登录时间,退出时间(在线时间)

last命令

查看所有用户最后一次登录时间lastlog

  • lastlog命令默认读取/var/log/lastlog文件内容

  • 命令输出:用户名,登录终端,登录IP,最后一次登录时间

lastlog命令

netstat命令,查看网络状态

  • netstat -an | grep ESTABLISHED

netstat命令

七、shell基础


1. shell概述

  • shell的两种主要语法类型有BourneC,这两种语法彼此不兼容。Bourne家族主要包括:sh、ksh、Bash、psh、zsh;

  • C家族主要包括:csh、tcsh

Bash中其它特殊符号

| 特殊符号 | 含义 |

| — | — |

| ’ ’ | 在单引号中所有特殊符号,如"$“和”`"(反引号)都没有特殊含义 |

| " " | 双引号。在双引号中所有特殊符号除"$“、”、“、”\“外都无特殊含义。”$“、”、“、”“拥有"调用变量的值”、"引用命令"和"转义符"的含义 |

| `` | 反引号。反引号括起来的是系统命令,在Bash中会优先执行它。和$()作用一样,推荐使用$(),反引号容易误导。 |

| $() | 与反引号作用相同,用来引用系统命令。 |

| # | 在shell脚本中,#代表注释。 |

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

即使是面试跳槽,那也是一个学习的过程。只有全面的复习,才能让我们更好的充实自己,武装自己,为自己的面试之路不再坎坷!今天就给大家分享一个Github上全面的Java面试题大全,就是这份面试大全助我拿下大厂Offer,月薪提至30K!

我也是第一时间分享出来给大家,希望可以帮助大家都能去往自己心仪的大厂!为金三银四做准备!
一共有20个知识点专题,分别是:

Dubbo面试专题

JVM面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Java并发面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Kafka面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MongDB面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MyBatis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MySQL面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Netty面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

RabbitMQ面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Redis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Spring Cloud面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

SpringBoot面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

zookeeper面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

常见面试算法题汇总专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

计算机网络基础专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

设计模式专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
**
一共有20个知识点专题,分别是:

Dubbo面试专题

[外链图片转存中…(img-5T1edDGD-1712729500845)]

JVM面试专题

[外链图片转存中…(img-3U5lt8a4-1712729500845)]

Java并发面试专题

[外链图片转存中…(img-gxn81QIC-1712729500845)]

Kafka面试专题

[外链图片转存中…(img-msz75ugy-1712729500846)]

MongDB面试专题

[外链图片转存中…(img-Me2IUSvT-1712729500846)]

MyBatis面试专题

[外链图片转存中…(img-gKbcxHbd-1712729500846)]

MySQL面试专题

[外链图片转存中…(img-7a5qAwQe-1712729500846)]

Netty面试专题

[外链图片转存中…(img-Eoy1C7Ky-1712729500846)]

RabbitMQ面试专题

[外链图片转存中…(img-znvBckMs-1712729500847)]

Redis面试专题

[外链图片转存中…(img-1dhsrCbQ-1712729500848)]

Spring Cloud面试专题

[外链图片转存中…(img-mDXRM4m8-1712729500848)]

SpringBoot面试专题

[外链图片转存中…(img-1GKSMDPc-1712729500848)]

zookeeper面试专题

[外链图片转存中…(img-akYxMZRu-1712729500848)]

常见面试算法题汇总专题

[外链图片转存中…(img-jsoJxheP-1712729500849)]

计算机网络基础专题

[外链图片转存中…(img-IaprB07Y-1712729500849)]

设计模式专题

[外链图片转存中…(img-GdEX0eNf-1712729500849)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值