linux 面试题
1. 文件与目录操作
ls
功能:列出目录内容
常用参数:
-l
:长格式显示(权限、大小、时间等)-a
:显示隐藏文件(以.
开头的文件)-h
:以易读格式显示文件大小(如KB/MB)
示例:
ls -lah /home # 查看/home目录下所有文件的详细信息
cd
功能:切换当前工作目录
示例:
cd /var/log # 进入/var/log目录
cd .. # 返回上一级目录
cd ~ # 进入当前用户的家目录
cp
功能:复制文件或目录
参数:
-r
:递归复制目录-i
:覆盖前提示确认
示例:
cp file1.txt /backup/ # 复制文件
cp -r dir1/ /backup/ # 复制目录
mv
功能:移动文件或目录,也可用于重命名
示例:
mv old.txt new.txt # 重命名文件
mv file1.txt /tmp/ # 移动文件到/tmp目录
rm
功能:删除文件或目录
参数:
-r
:递归删除目录-f
:强制删除(不提示)
示例:
rm file.txt # 删除文件
rm -rf old_dir/ # 强制递归删除目录(慎用!)
mkdir
功能:创建目录
参数:
-p
:递归创建多级目录
示例:
mkdir new_folder
mkdir -p dir1/dir2/dir3 # 创建嵌套目录
touch
功能:创建空文件或更新文件时间戳
示例:
touch newfile.txt # 创建新文件
2. 文件内容查看与编辑
cat
功能:显示文件内容
示例:
cat file.txt # 查看文件内容
cat file1.txt file2.txt > combined.txt # 合并文件
more
/ less
功能:分页查看文件内容(less
支持上下翻页)
示例:
less large_file.log # 分页查看日志文件(按`q`退出)
head
/ tail
功能:查看文件头部或尾部内容
参数:
-n 10
:显示前/后10行tail -f
:实时追踪文件变化(常用于日志监控)
示例:
head -n 5 file.txt # 显示前5行
tail -f /var/log/syslog # 实时监控系统日志
grep
功能:文本搜索工具
参数:
-i
:忽略大小写-v
:反向匹配(显示不包含关键字的行)-r
:递归目录搜索
示例:
grep "error" /var/log/syslog # 查找包含"error"的行
grep -r "TODO" /home/user/code/ # 递归搜索代码目录中的"TODO"
find
功能:查找文件或目录
参数:
-name
:按名称搜索-type
:按类型搜索(f
为文件,d
为目录)-exec
:对搜索结果执行命令
示例:
find /home -name "*.txt" # 查找所有.txt文件
find /var/log -type f -mtime +7 # 查找7天前修改过的文件
3. 系统管理与监控
top
功能:实时显示系统进程和资源占用(CPU、内存等)
交互命令:
k
:终止进程M
:按内存排序P
:按CPU排序
ps
功能:显示当前进程状态
常用参数:
aux
:查看所有进程详细信息
示例:
ps aux | grep nginx # 查找nginx进程
kill
功能:终止进程
参数:
-9
:强制终止
示例:
kill 1234 # 终止PID为1234的进程
kill -9 1234 # 强制终止
df
功能:查看磁盘空间使用情况
参数:
-h
:以易读格式显示
示例:
df -h # 查看所有挂载点的磁盘使用情况
du
功能:查看目录或文件占用的磁盘空间
参数:
-sh
:汇总显示总大小
示例:
du -sh /var/log/ # 查看/var/log目录的总大小
free
功能:查看内存使用情况
参数:
-h
:以易读格式显示
示例:
free -h # 查看内存和Swap使用情况
4. 网络工具
ping
功能:测试网络连通性
示例:
ping google.com # 检查与Google的网络连接(按Ctrl+C停止)
ifconfig
/ ip
功能:查看或配置网络接口
示例:
ifconfig eth0 # 查看eth0网卡信息(旧版命令)
ip addr show # 查看所有网络接口(新版命令)
netstat
功能:显示网络连接、路由表、接口统计等信息
参数:
-tuln
:查看所有监听端口
示例:
netstat -tuln | grep 80 # 检查80端口是否被监听
curl
功能:命令行HTTP请求工具
参数:
-I
:仅显示响应头-O
:下载文件
示例:
curl -I https://example.com # 查看HTTP响应头
curl -O https://example.com/file.zip # 下载文件
wget
功能:下载文件
示例:
wget https://example.com/file.tar.gz # 下载文件
5. 权限管理
chmod
功能:修改文件权限
参数:
- 数字模式:
chmod 755 file.sh
- 符号模式:
chmod u+x file.sh
示例:
chmod 644 file.txt # 设置权限为rw-r--r--
chmod +x script.sh # 添加可执行权限
chown
功能:修改文件所有者
示例:
chown user:group file.txt # 修改所有者和所属组
6. 压缩与解压
tar
功能:打包和解压文件
参数:
-c
:创建压缩包-x
:解压-z
:使用gzip压缩-v
:显示过程
示例:
tar -czvf archive.tar.gz dir1/ # 压缩目录为gzip格式
tar -xzvf archive.tar.gz # 解压gzip文件
gzip
/ gunzip
功能:压缩或解压文件(生成.gz
文件)
示例:
gzip file.txt # 压缩为file.txt.gz
gunzip file.txt.gz # 解压
7. 其他高频命令
命令 | 功能 | 示例 |
---|---|---|
history | 查看命令历史记录 | history | grep "ssh" |
man | 查看命令手册 | man ls |
echo | 输出文本或变量 | echo $PATH |
date | 显示或设置系统时间 | date "+%Y-%m-%d %H:%M:%S" |
ssh | 远程登录服务器 | ssh user@192.168.1.100 |
scp | 安全复制文件(基于SSH) | scp file.txt user@remote:/tmp/ |
crontab | 定时任务管理 | crontab -e |
alias | 创建命令别名 | alias ll='ls -alh' |
uname | 显示系统信息 | uname -a |
which | 查找命令的安装路径 | which python |
whereis | 查找命令的二进制、源码和手册位置 | whereis nginx |
ln | 创建链接文件 | ln -s /path/to/file link_name |
systemctl | 管理系统服务(systemd) | systemctl start nginx |
journalctl | 查看系统日志(systemd) | journalctl -u nginx |
useradd | 添加用户 | useradd -m new_user |
passwd | 修改用户密码 | passwd username |
su | 切换用户身份 | su - root |
sudo | 以管理员权限执行命令 | sudo apt update |
apt / yum | 包管理工具(Debian/RedHat系) | apt install nginx |
rsync | 高效文件同步工具 | rsync -avz src/ user@remote:/dest/ |
nohup | 后台运行命令(终端关闭不终止) | nohup python app.py & |
总结
掌握这些命令可覆盖 80% 的日常 Linux 操作需求,建议结合实践练习加深理解!
相关文章:
linux 面试题
1. 文件与目录操作 ls 功能:列出目录内容 常用参数: -l:长格式显示(权限、大小、时间等)-a:显示隐藏文件(以.开头的文件)-h:以易读格式显示文件大小(如KB/…...
利用websocket检测网络连接稳定性
浏览器中打开F12,控制台中输入以下内容 > 回车 > 等待结果 连接关闭 表示断网 let reconnectDelay 1000; // 初始重连间隔 let pingInterval null; let socketManuallyClosed false; // 标志是否手动关闭function createWebSocket() {if (socketManuallyCl…...
Go入门之数组与切片
var arr1 [...]int{1, 2, 3}fmt.Println(len(arr1)) 数组长度不能扩展 var arr2 [...]int{0: 100, 5: 101}fmt.Println(len(arr2)) } 指定索引初始化 可以通过for和range遍历 值类型:基本数据类型和数组都是值类型,改变副本的值不会改变本身的值 切片为引用数…...
《Nuxt.js 实战:从放弃到入门》六、打造个性化文字转图片工具
在当今短视频的时代,将文字转化为图片是一个常见且实用的需求,无论是用于社交媒体分享、设计宣传材料,还是制作个性化的视觉内容。今天,我们就来深入剖析一个使用 Vue 3 和 ElementPlus 构建的文字转图片工具的代码…...
软硬链接?
目录 1. 硬链接(Hard Link) 2. 软链接(Symbolic Link,符号链接) 总结: 1. 硬链接(Hard Link) 定义: 硬链接是直接指向文件数据块(inode)的链接。…...
轻松搭建本地大语言模型(二)Open-WebUI安装与使用
文章目录 前置条件目标一、安装 Open-WebUI使用 Docker 部署 二、使用 Open-WebUI(一)访问Open-WebUI(二)注册账号(三)模型选择(四)交互 四、常见问题(一)容器…...
windows Redis Insight 如何查看宝塔docker里的redis数据
1、ping 命令用于测试网络连通性,它只需要目标 IP 地址作为参数,不需要端口号。正确的命令如下: ping 公网地址2、使用 Telnet 测试端口连通性 telnet 公网地址 端口 telnet 47.108.67.228 6379如果连接成功,窗口会变为空白&am…...
Python高级语法之urllib
目录: 1、爬虫的介绍2、urllib的使用2.1、urllib的异常捕获2.2、urllib的实现微博cookie登陆2.3、urllib的handler处理器2.4、urllib的代理服务器2.5、urllib的代理服务池 1、爬虫的介绍 2、urllib的使用 2.1、urllib的异常捕获 2.2、urllib的实现微博cookie登陆 2…...
word$deepseep
1、进入官网地址。 DeepSeek 2、进入DeepSeek的API文档 3、点击DeepSeek开放平台左侧的“API Keys”, 再点击“创建API Key” 4、在弹出的对话框中,输入自己的API Key名称,点击创建。 sk-0385cad5e19346a0a4ac8b7f0d7be428 5、打开Word文档。 6、Word找…...
【koa】05-koa+mysql实现数据库集成:连接和增删改查
前言 前面我们已经介绍了第二阶段的第1-4点内容,本篇介绍第5点内容:数据库集成(koamysql) 也是第二阶段内容的完结。 一、学习目标 在koa项目中正常连接数据库,对数据表进行增删改查的操作。 二、操作步骤 本篇文章…...
【深度学习】分布偏移纠正
分布偏移纠正 正如我们所讨论的,在许多情况下训练和测试分布 P ( x , y ) P(\mathbf{x}, y) P(x,y)是不同的。 在一些情况下,我们很幸运,不管协变量、标签或概念如何发生偏移,模型都能正常工作。 在另一些情况下,我们…...
数据结构_前言
本次我们将进入一个新的阶段啦~ 要注意哦: 在学数据结构之前,我们要先掌握c语言中所学的指针、结构体、内存的存储这几部分,如果还没太掌握的话,那记得去复习回顾一下噢。 下面我们就一起进入数据结构的学习吧! 知识…...
spark任务运行
运行环境 在这里插入代码片 [roothadoop000 conf]# java -version java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01)[roothadoop000 conf]# echo $JAVA_HOME /home/hadoop/app/jdk1.8.0_144[roothadoop000 conf]# vi spark-env.sh …...
由because it is a JDK dynamic proxy that implements温习Spring的代理
由because it is a JDK dynamic proxy that implements温习Spring的代理 项目场景原因分析1、报错位置2、错误原因3、业务需求 解决方案1、注入CGlib代理2、取出原生对象 项目场景 昨日在启动一个SpringBoot项目时,发现启动失败,并在日志中出现了这样的…...
mac相关命令
显示和隐藏usr等隐藏文件文件 terminal输入: defaults write com.apple.Finder AppleShowAllFiles YESdefaults write com.apple.Finder AppleShowAllFiles NO让.bashrc每次启动shell自动生效 编辑vim ~/.bash_profile 文件, 加上 if [ -f ~/.bashrc ]; then. ~/.bashrc fi注…...
Banana Pi OpenWRT One 官方路由器的第一印象
OpenWRT One是OpenWRT开源社区推出的首款官方开发板,与Banana Pi社区共同设计,由Banana Pi制造和发行。路由器采用蓝色铝合金外壳,质感极佳,视觉效果远超宣传图。整体设计简洁,呈长方形,虽然不是特别时尚&a…...
基于SpringBoot的“高考志愿智能推荐系统”的设计与实现(源码+数据库+文档+PPT)
基于SpringBoot的“高考志愿智能推荐系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体结构图 系统首页界面 系统注册页…...
探索Hugging Face:开源AI社区的核心工具与应用实践
引言:AI民主化的先锋 在自然语言处理(NLP)领域,Hugging Face已成为开源社区的代名词。这个成立于2016年的平台,通过提供易用的工具和丰富的预训练模型库,彻底改变了开发者使用和部署AI模型的方式。截至202…...
SVM对偶问题
1、对偶问题数学基础 对偶问题:在线性规划中,每一个线性规划问题(称为原问题)都有一个与之对应的对偶问题。从数学形式上看,如果原问题是求解一个线性目标函数的最大值(或最小值),在满足一系列线性不等式&…...
萃取的实现(三)
探测成员 基于SFINAE,判断一个给定类型T,是否含有名为x的成员。 探测类型成员 判断一个给定类型T,是否含有类型成员size_type,源码如下: #include <type_traits> #include <iostream> #include <vect…...
nodejs版本管理,使用 nvm 删除node版本,要删除 Node.js 的某个版本详细操作
要删除 Node.js 的某个版本并保持 Node Version Manager (nvm) 的管理整洁,可以按以下步骤操作: 步骤 1:查看已安装的 Node.js 版本 nvm ls这会列出你通过 nvm 安装的所有 Node.js 版本。输出类似于: -> v18.17.1v16.20…...
openCV中如何实现滤波
图像滤波用于去除噪声和图像平滑,OpenCV 提供了多种滤波器: 1.1. 均值滤波: import cv2# 读取图像 image cv2.imread("example.jpg")# 均值滤波 blurred_image cv2.blur(image, (5, 5)) # (5, 5) 是滤波核的大小 滤波核大小的…...
vscode通过ssh连接服务器实现免密登录+删除
文章目录 参考: 1、 vscode通过ssh连接服务器实现免密登录删除(吐血总结)...
智能硬件新时代,EasyRTC开启物联音视频新纪元
在万物互联的时代浪潮中,智能硬件正以前所未有的速度融入我们的生活,从智能家居的便捷控制,到智能穿戴设备的健康监测,再到工业物联网的高效管理,智能硬件的应用场景不断拓展。而在这个智能硬件蓬勃发展的背后…...
《机器学习数学基础》补充资料:求解线性方程组的克拉默法则
《机器学习数学基础》中并没有将解线性方程组作为重点,只是在第2章2.4.2节做了比较完整的概述。这是因为,如果用程序求解线性方程组,相对于高等数学教材中强调的手工求解,要简单得多了。 本文是关于线性方程组的拓展,供…...
mysql的rpm包安装
(如果之前下载过mariadb,使用yum remove mariadb卸载,因为mariadb与rpm包安装的mysql有很多相似的组件和文件,会发生冲突,而源码包安装的mysql不会,所以不用删除源码包安装myqsl,只删除mariadb就可以&#…...
TailwindCss的vue3安装使用
按照官网的安装教程,属性最后无法生效,这是自我改良版,添加了额外步骤,但是每次引入新的tailwindcss属性 需要重新跑一次项目 npm下载tailwindcss npm install -D tailwindcss npx初始化tailwind配置 npx tailwindcss init 此时根…...
foobar2000设置DSP使用教程及软件推荐
foobar2000安卓中文版:一款高品质手机音频播放器 foobar2000安卓中文版是一款备受好评的高品质手机音频播放器。 几乎支持所有的音频格式,包括 MP3、MP4、AAC、CD 音频等。不论是经典老歌还是最新的流行音乐,foobar2000都能完美播放。除此之…...
开源多商户商城源码最新版_适配微信小程序+H5+APP+PC多端
在数字化时代,电子商务已经成为各行业不可或缺的一部分,开源多商户商城源码为中小企业和个人开发者提供了快速搭建和定制电商平台的利器。分享一款最新版的开源多商户商城源码,它能够适配微信小程序、H5、APP和PC等多个端口,满足商…...
【matlab】大小键盘对应的Kbname
matlab中可以通过Kbname来识别键盘上的键。在写范式的时候,遇到一个问题,我想用大键盘上排成一行的数字按键评分,比如 Kbname(1) 表示键盘上的数字1,但是这种写法只能识别小键盘上的数字,无法达到我的目的,…...
go语言并发的最佳实践
Go 语言的并发模型是其最强大的特性之一,基于 CSP(Communicating Sequential Processes)理论,通过 goroutine 和 channel 实现轻量级并发. 一、并发核心概念 1. Goroutine 在 Go 语言中,Goroutine 是实现并发编程的…...
超全Deepseek资料包,deepseek下载安装部署提示词及本地部署指南介绍
该资料包涵盖了DeepSeek模型的下载、安装、部署以及本地运行的详细指南,适合希望在本地环境中高效运行DeepSeek模型的用户。资料包不仅包括基础的安装步骤,还提供了68G多套独立部署视频教程教程,针对不同硬件配置的模型选择建议,以…...
重看Spring聚焦BeanDefinition分析和构造
目录 一、对BeanDefinition的理解 (一)理解元信息 (二)BeanDefinition理解分析 二、BeanDefinition的结构设计分析 (一)整体结构体会 (二)重要接口和类分析 三、构造 BeanDef…...
从MySQL5.7平滑升级到MySQL8.0的最佳实践分享
一、前言 升级需求:将5.7.35升级到8.0.27, 升级方式 in-place升级【关闭现有版本MySQL,将二进制或包替换成新版本并在现有数据目录上启动MySQL并执行升级任务的方式,称为in-place升级】 原版本 5.7.35 CentOS Linux release 7.9.2009 新版本…...
Node-Red
是什么? ——基于浏览器的流程编辑工具可连接设备、服务器和API应用 一、安装 1、本地安装(Windows) 在电脑上安装 Node.js 环境,然后使用 NPM 安装 Node-RED Node.js介绍: JavaScript 在不同的位置有不一样的解析器 写入 HTML 的 JS 语言,浏览器即它的解析器需要独…...
GO语言的安装以及第一个Go语言程序
1. Go语言的安装与设置 官网:golang.org 国内下载:https://studygolang.com/dl 国内镜像:https://goproxy.cn/ 2. GOland的安装 Go 1.13 及以上(推荐) 打开你的终端并执行 $ go env -w GO111MODULEon $ go env -w GOPROXYhttps://goproxy.cn,direc…...
年前集训总结python
1.用空格隔开输出列表list1 print(" ".jion(map(str,list1))) 2.转换函数 int() 将一个数字或字符串转换为整数。可以指定基数,支持从其他进制(如二进制、十六进制)转换为十进制。 int(101, 2) # 二进制字符串转十进制 > 5 …...
【JAVA实战】JAVA实现Excel模板下载并填充模板下拉选项数据
背景 有这样一个场景:前端下载Excel模板,进行数据导入,这个下载模板过程需要经过后端接口去数据库查询数据进行某些列的下拉数据填充,下拉填充的数据过程中会出现错误String literals in formulas can’t be bigger than 255 cha…...
【linux】在 Linux 上部署 DeepSeek-r1:32/70b:解决下载中断问题
【linux】在 Linux 上部署 DeepSeek-r1:32/70b:解决下载中断问题 【承接商业广告,如需商业合作请+v17740568442】 文章目录 【linux】在 Linux 上部署 DeepSeek-r1:32/70b:解决下载中断问题问题描述:解决方法方法一:手动中断并重启下载方法二:使用 Bash 脚本自动化下载在…...
Rust 面试题
1. Rust 中的所有权(Ownership)是什么? 回答: 所有权是 Rust 的核心概念之一,每个值在 Rust 中都有一个唯一的所有者,并且所有权在作用域内转移。当所有者离开作用域时,Rust 会自动释放该值的内存,避免了内存泄漏。 代码示例: fn main() {let s1 = String::from(&q…...
Copilot Next Edit Suggestions(预览版)
作者:Brigit Murtaugh,Burke Holland 排版:Alan Wang 我们很高兴向你介绍在本次 Visual Studio Code 发布中,关于 GitHub Copilot 的三个预览功能: Next Edit Suggestions(NES)Copilot Edits 的…...
LeetCode - 18 四数之和
题目来源 18. 四数之和 - 力扣(LeetCode) 题目描述 给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一…...
汽车零部件开发应该具备哪些编程思维?
目录 1、功能安全思维 2、实时性与确定性思维 3、可靠性和冗余思维 4、硬件软件协同思维 5、CAN总线通信思维 6、故障诊断和自诊断思维 7、功耗优化思维 8、软件更新和版本管理思维 9、用户体验与安全性思维 汽车零部件开发中,嵌入式软件在车辆系统中的作用…...
在Windows系统中安装Open WebUI并连接Ollama
Open WebUI是一个开源的大语言模型(LLM)交互界面,支持本地部署与离线运行。通过它,用户可以在类似ChatGPT的网页界面中,直接操作本地运行的Ollama等大语言模型工具。 安装前的核心要求: Python 3.11&#…...
React 与 Vue 对比指南 - 上
React 与 Vue 对比指南 - 上 本文将展示如何在 React 和 Vue 中实现常见功能,从基础渲染到高级状态管理 Hello 分别使用 react 和 vue 写一个 Hello World! react export default () > {return <div>Hello World!</div>; }vue <…...
自动化办公|通过xlwings进行excel格式设置
1. 介绍 xlwings 是一个强大的 Python 库,可以用来操作 Excel,包括设置单元格格式、调整行高列宽、应用条件格式以及使用内置样式。本文将详细介绍如何使用 xlwings 进行 Excel 格式化操作,并附带代码示例。 2. 基础格式设置(字…...
c# -01新属性-模式匹配、弃元、析构元组和其他类型
文章目录 **学习摘抄分享**模式匹配概述Null 检查类型测试比较离散值关系模型多个输入ObServation列表模式弃元元组和对象析构利用switch的模式进行匹配对于out的方法调用独立弃元析构元组和其他类型元组方法一方法二方法三方法四使用弃元元组的元素使用弃元的用户定义类型解构…...
银河麒麟V10SP1下qt5-12-12编译环境配置
下面的脚本在兆芯版kylin上试过,如果是本地编译,arm版应该也没有问题 a. 如果执行脚本安装有问题,读者可以拷贝命令多次安装 b. 建议在虚拟机环境下进行 #!/bin/bashsudo apt updatesudo apt-get install g gcc make cmake gperf bison flex libdrm-dev libxcompos…...
轻松搭建本地大语言模型(一)Ollama安装与使用
Ollama 是一款开源的本地大语言模型运行框架,支持在 Windows、macOS 和 Linux 系统上运行,能够帮助用户轻松下载和使用各种大语言模型(例如deepseek、llama、qwen)。本文将详细介绍 Ollama 的安装步骤,帮助你快速搭建本…...
【深度学习】Transformer入门:通俗易懂的介绍
【深度学习】Transformer入门:通俗易懂的介绍 一、引言二、从前的“读句子”方式三、Transformer的“超级阅读能力”四、Transformer是怎么做到的?五、Transformer的“多视角”能力六、Transformer的“位置记忆”七、Transformer的“翻译流程”八、Trans…...