Linux基础指令大汇总

Linux的指令比较多,在学习的过程中要学会总结和归纳,同时结合实践多多使用,就像学数学一样,不是背过公式就等于掌握的,而是要知道在什么时候用,怎么用才是关键。

这篇文章会列举一系列常用的指令,如果是初学者只需要混个眼熟就好了,没有必要像背大事年表那样去背,重点在于实践,多用肯定会记住的。

但也不仅仅是学指令,其中也会补充很多 Linux 相关的基础知识,有种螺旋式上升的感觉。

基础指令

whoami:显示当前用户的用户名

clear:清屏

1. ls 指令

ls 目录:可显示对应目录下的所有文件和子目录,仅显示文件名及其后缀

ls -l: 列出文件的详细信息,可简写为ll

ls -a:多显示隐藏文件

ls -d 目录:仅显示目录本身

*这里的-l和-a是选项, 是指令的一些特殊化功能的实现,不同选项可叠加使用

*隐藏文件包括 . .. 分别表示当前路径和上级路径

注:选项是可以组合使用的例如:ls -al

2. pwd 指令

显示当前所在目录

3. cd 指令

cd .. :返回上级目录

cd /home/csdn/ :绝对路径

cd ../linux/ :相对路径

cd - :跳转到最近一次所处的路径下

cd ~:进入用户家目录(可类比Windows)

*root 账号默认家目录 /root

 普通用户默认家目录 /home/xxx

*区分 Linux 和 Windows 的路径分隔符,分别为 /\ 

4. touch 指令

touch 文件名:创建新文件

5. mkdir 指令

mkdir 目录名:在当前路径下创建目录

-p:建立多个目录

例如:mkdir -p exa/exa1/exa2

6. rm 指令

大家最喜欢的指令来了

rm 文件名:删除某个文件

rmdir 目录名:删除某个目录

-f:强制

-r:递归处理,删除目录下所有文件      

补充知识:通配符

* 是一个通配符,匹配任意文件

例如:在某个目录下有文件 data11,data12,data13,data21,data22,data23

使用指令 rm data1* 指的就是删除data11,data12,data13,留下data21,data22,data23

7. man 指令

man 指令名:查看对应指令的用法,当然 man man 也是可以的

man 手册编号:查找对应编号的手册

*手册前3章比较常用

 分别为1 普通指令和可执行程序指令 2 系统调用(调用函数需要的头文件) 3 库函数

8. cp 指令

cp src dst:把 src 复制到 dst

*src 和 dst 既可以表示文件也可以表示目录

  src 和 dst 都可以带绝对路径和相对路径进行拷贝

-r:递归处理,复制目录,指定目录下的文件和子目录也复制过去

-f:强制复制,不论目的文件或目录是否存在(若对应目录不存在,则在对应路径创建新目录)

9. mv 指令

cp 指令对应复制,mv 指令对应剪切

mv src dst:将 src 复制到 dst

选项和 cp 类似,也有 cp 不具备的功能,就是重命名

*当 dst 不存在时,则重命名目录或是文件

  当 dst 存在时,可将多个原文件传到目标目录

10. cat 指令

cat 选项 文件:查看目标文件内容

-b 对非空输出行编号

-n 对输出的所有行编号

-s 不输出多行空行

其他输入输出指令

nano 文件名:以记事本的形式打开(若该文件不存在则创建新文件)

注意:退出要用ctrl + x

echo xxx:把xxx打印到屏幕上

echo xxx > 文件名:把xxx写到该文件中

echo xxx >> 文件名:在该文件内追加xxx

cat < 文件名:表示将该文件的内容输出

简写成 cat 文件名

> 表示的是输出重定向的意思,而>>是追加重定向的意思

有两种用法:创建文件/清空文件

>文件名:若此文件不存在,则创建文件,否则清空文件

11. more 指令

不推荐使用

more 文件:方便阅读大文件(只显示满整个屏幕的内容,按回车可下翻,按q退出)

/某数据:可查找数据对应位置

12. less 指令

【推荐使用】

less 文件:比more灵活,按上下可以上下翻动,按q退出

/某数据:可查找数据对应位置

13. head 指令

head -n 文件名:显示文件的前n行,若没有-n则输出前10行

14. tail 指令

tail -n 文件名:显示文件的后n行,若没有-n则输出后10行

【思考】

有机智的小伙伴就想到了如果我想看中间的某几行怎么办?

有两种方式,一种是创建临时文件,另一种是使用管道

举例:看第100~110行

方式一:

head -110 tmp.txt

tail -11 tmp.txt

方式二:

head -110 src.txt | tail -11

补充指令:

wc -l file.txt   :  统计file.txt中的行数

逆向打印:tac

管道的应用:级联多条指令

输出指定内容的行数

head -110 src.txt | tail -11 | wc -l

逆向打印对应行

head -110 src.txt | tail -11 | tac

时间相关指令(15-16)

15. date 指令

date +%Y-%m-%d_%H:%M:%S:表示按对应格式输出日期时间

Y(year)        m(month)          d(day)          H(hour)        M(minute)        S(second)

时间戳

格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数

时间->时间戳:date +%s

时间戳->时间:date -d@1508749502

16. cal 指令

效果如下图:

17. find 指令

find 寻找路径 -name 文件名:在该路径中寻找对应文件名的文件(-name是后缀)

显示的是对应文件的绝对路径

18. grep 指令

grep 字符串 文件名 -n:在对应文件中搜该字符串,输出行号

-i:忽略大小写差异

-v:反向选择,输出没有该字符串的行号

grep常常通过管道和其他指令配合使用

例如:

cat /var/log/message* | grep -i 'error'   表示显示该路径下含有'error'字符的文件

打包压缩相关指令(19-20)

19. zip/unzip 指令

zip 压缩后文件名.zip file1 file2:压缩文件

zip -r 压缩后文件名.zip 目录:压缩目录

unzip src.zip (-d 对应目录):解压到当前目录/对应目录,若解压成目录还需加-r

20. tar 指令

用法跟zip类似

tar -cvzf name.tgz file1 file2:压缩文件

tar -xzvf name.tgz (-C path):解压,注意此处C是大写,表示解压到指定目录

tar的选项比较多,但入门阶段其实懂这两个指令就可以

*为什么要打包压缩?

利于传输,传输过程中不易损坏

缩小体积,方便下载

21. uname 指令

uname -r:显示Linux主机所用的操作系统的版本和硬件名称等基本信息

-a:详细信息

22. shutdown 指令

-h:立即关机

-r:重启

-t 数字:过几秒后关机

热键

Tab 命令补全、档案补全

Ctrl  c 停掉当前进程

Ctrl  d 退出当前用户​​​​​​​

注意Linux中的复制粘贴不能用常用的快捷键,可用鼠标操作代替

扩展指令

which 指令名:指令所在文件夹

alias:给指令起别名 例如: alias pdd='ls -al'

感谢你能看完,喜欢不妨点个赞! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/350473.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springblade框架实现多数据源

文章目录 前言1、 application-dev.yml配置文件2、service层3、修改 spring.datasource.dynamic.enabled 备注总结 前言 公司要求使用springblade框架开发&#xff0c;需要用到多数据源的场景 1、 application-dev.yml配置文件 #数据源配置 spring:datasource:dynamic:primar…

腾讯云服务器一键部署幻兽帕鲁联机服务器详细教程(Linux系统)

腾讯云作为国内领先的云计算服务商&#xff0c;为广大用户提供了稳定、高效的云计算服务。本文将详细介绍如何在腾讯云服务器&#xff08;Linux系统&#xff09;实现一键部署幻兽帕鲁联机服务器&#xff0c;帮助大家快速搭建自己的游戏联机服务器。 第一步&#xff1a;购买服务…

初识数据库

数据库技术的基础术语 在学习数据库技术之前&#xff0c;我们先认识与该技术密切相关的基本术语&#xff0c;分别是数据库 (Database, DB)、数据库管理系统(Database Management System, DBMS)和数据库 系统(Database System, DBS)&#xff0c;具体介绍如下。 1. 数据库 数…

【Linux install】详细的Ubuntu和win双系统安装指南

文章目录 1.前期准备1.1 制作启动盘1.2关闭快速启动、安全启动、bitlocker1.2.1 原因1.2.2 进入BIOSshell命令行进入BIOSwindows设置中高级启动在开机时狂按某个键进入BIOS 1.2.3 关闭Fast boot和Secure boot 1.3 划分磁盘空间1.3.1 查看目前的虚拟内存大小 2.开始安装2.1 使用…

代码随想录 Leetcode102. 二叉树的层序遍历

题目&#xff1a; 代码(首刷看解析 2024年1月24日&#xff09;&#xff1a; class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> res;if(root nullptr) return res;queue<TreeNode*> que;TreeNode…

智能充电桩,机器人 wifi蓝牙 解决方案

新联鑫威低功耗高性价比sdio wifi/蓝牙combo的模块单频2.4g的CYWL6208&#xff0c;双频2.4g/5g CYWL6312可以应用到一些低延时 高性能 低功耗 联网需求的交流直流充电桩&#xff0c;扭力扳手&#xff0c;agv机器人&#xff0c;目前支持主流的stm32F4/GD32F4 瑞萨 psoc的主控&am…

博弈论(牛客练习赛)

思路&#xff1a;我们考虑小念赢 1、如果n>1并且p0&#xff0c;小念可以连续取两次&#xff0c;相当于小念有挂&#xff0c;可以从必败态转为必胜态&#xff0c;必赢。 2、如果n>1并且m>n-1&#xff0c;小念第一次取n-1个&#xff0c;小念必赢。 代码&#xff1a; …

(大众金融)SQL server面试题(2)-游戏打包销售折扣

今天&#xff0c;面试了一家公司&#xff0c;什么也不说先来三道面试题做做&#xff0c;第二题。 那么&#xff0c;我们就开始做题吧&#xff0c;谁叫我们是打工人呢。 题目是这样的&#xff1a; 销售平台进行游戏打包促销。将任意个游戏打包为一组&#xff0c;根据游戏数量…

RabbitMQ之死信交换机

前言 消息队列是分布式系统中常用的组件&#xff0c;用于异步通信、解耦和提高系统可靠性。然而&#xff0c;在实际应用中&#xff0c;难免会遇到一些异常情况&#xff0c;例如消息处理失败、超时等。为了更好地处理这些异常情况&#xff0c;死信交换机&#xff08;Dead Lette…

C++:组合、继承与多态

面向对象设计的重要目的之一就是代码重用&#xff0c;这也是C的重要特性之一。代码重用鼓励人们使用已有的&#xff0c;得到认可并经过测试的高质量代码。多态允许以常规方式书写代码来访问多种现有的且已专门化了的相关类。继承和多态是面向对象程序设计方法的两个最主要的特性…

使用vs2022将c语言文件打包成exe可执行程序分享给朋友(详解)

目录 1.给vs2022安装打包插件 2.新建打包项目 找到自己想要打包好的项目 3.拷贝必要的资源 3.1拷贝素材 3.2***导入输出文件***** 4.设置项目在桌面显示的图标 4.1找好图标素材&#xff0c;利用在线工具生成图标格式 4.2将图标放到桌面显示中来 5.最终生成打包 1.给vs…

鸿蒙ArkUI开发-实现增删Tab页签

场景介绍 部分应用在使用过程中需要自定义添加或删除标签的场景&#xff0c;比如在浏览器中的顶部标签栏中需要新打开或关闭网页页签&#xff0c;而这种场景与Tabs组件效果类似&#xff0c;但Tabs组件不提供增加或删除页签的功能&#xff0c;不能自由的增加删除页签&#xff0…

C语言实现希尔排序算法(附带源代码)

希尔排序 希尔排序&#xff0c;也称递减增量排序算法&#xff0c;是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的&#xff1a; 插入排序在对几乎已经排好序的数据操作时&#xff0c;效率高&#xff0…

如何轻松实现一键转发微信好友的朋友圈文案?

随着朋友圈日渐流行&#xff0c;我们越来越希望能够快速方便地与朋友们分享我们的想法和感受。然而&#xff0c;每次都需要保存图片、复制粘贴文案&#xff0c;这无疑增加了我们的工作量和时间成本。 现在&#xff0c;我将和大家分享一款神奇的工具——微信管理系统&#xff0…

【C++中STL】map/multimap容器

map/multimap容器 map基本概念map构造和赋值map的大小和交换map插入和删除map的查找和统计 map排序 map基本概念 map中的所有元素都是pair对组&#xff0c;高效率&#xff0c;pair中的第一个元素为key&#xff08;键值&#xff09;&#xff0c;起到索引作用&#xff0c;第二个…

硬件基础:存储器

之前对存储器做过简单的汇总&#xff0c;参考这篇文章&#xff1a; 计算机/微机存储技术_路溪非溪的博客-CSDN博客 这次&#xff0c;我们从数字集成电路的角度再次补充学习一下存储器的知识。 定义和分类 从这里面我们能知道一些关键词。 存储介质主要是半导体器件和磁性材料。…

C语言指针进阶之一字符指针

目录 1.指针知识回顾 2.字符指针 2.1字符指针的一般使用 2.2字符指针的另外一种使用 1.指针知识回顾 ①.指针就是个变量&#xff0c;用来存放地址&#xff0c;地址唯一标识了一片空间。 内存会划分成一个个的内存单元&#xff0c;每个内存单元都有一个独立的编号&#xff0…

Vue深入学习3—数据响应式原理

1、数据响应式原理 1.1、MVVM是什么&#xff1f; 简单来说&#xff0c;就是数据变了&#xff0c;视图也会跟着变&#xff0c;首先你得定义一个带有{{ }}的模板Model&#xff0c;当数据中的值变化了&#xff0c;视图View就会跟着变化&#xff1b;视图模型View-model是模板Model和…

C++ 类的初始化列表

C 中的类必须使用初始化列表的 4 种情况&#xff1a; 一&#xff0c;继承于一个基类&#xff0c;这个基类的构造函数有参数时。 #include <stdio.h> #include <stdlib.h>#pragma pack(4) class CBase { public:CBase(int value): bBaseValue(value){}~CBase(){}p…

代码随想录算法训练营31期day4,力扣24+19+02.07+142

24&#xff0c;动指针 class Solution { public:ListNode* swapPairs(ListNode* head) {//建立虚拟头结点auto dummynew ListNode(-1);dummy->nexthead;for(auto pdummy;p->next&&p->next->next;){auto ap->next;auto ba->next;p->nextb;a->n…