[Linux] Linux入门必备的基本指令(不全你打我)

news2024/12/23 1:28:18

一:ls指令

语法 ls  [选项] [目录或文件]
功能 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

ls不带选项就是显示当前目录下存在的子目录和文件 

常用选项:

(1). ls -l

功能: 列出文件的详细信息.

可以简写为ll

补充 : 文件=文件内容+文件属性

名字前所显示的就是文件的一些属性

(2). ls -a

功能: 列出目录下的所有文件,包括以 . 开头的隐含文件

-开头表示普通文件

d开头表示目录

.开头表示隐藏文件,所以我们在创建文件时在文件名前加个.就表示创建了一个隐藏文件

补充:

在Linux的任何一个目录里都存在两个隐藏文件,一个是 另一个是 ..  

  • 一个点的表示当前路径,方便我们找到当前目录的文件(可执行文件)
  • 两个点表示上级路径,方便路径的回退,可以用它回退到上一级

(3). ls -d

功能: -d 将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录

(4). ls -1

功能: 一行只输出一个文件

二:pwd指令

语法 : pwd
功能 :显示用户当前所在的目录

三:cd指令

语法 : cd 目录名
功能 :改变工作目录。将当前工作目录改变到指定的目录下。
选项:
cd .. : 返回上级目录
cd /home/user/linux/ : 绝对路径
cd ../day02/ : 相对路径
cd ~ :进入用户家目
cd - :返回最近访问目录
补充:
Linux 系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件,所以对文件的增删查改其实是对多叉树的修改
  • 绝对路径: 从根目录开始定位到指定位置 
        例如: /etc/rc.d/rc5.d 就是一条绝对路径,定位到了rc.5文件
  • 相对路径: 以当前目录为参考点,进行定位
        例如:当前位置为var, ./ftp/etc就是一条相对路径,定位到了etc
  • 家目录:

        对于root账号: 默认家目录为/root  root表示超级管理员账号

        对于普通用户账号:/home/XXX  XXX为新建用户名

四:touch命令

语法 : touch [选项]... 文件...
功能 新建一个不存在的文件。

五:mkdir指令

语法 mkdir [ 选项 ] dirname...
功能 :在当前目录下创建一个名为 “dirname” 的目录
选项:
   mkdir -p
功能:递归建立多个目录
创建了一个目录a, 目录a中有目录b,目录b中有目录c
          

六:rmdir指令

rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。

语法: rmdir [目录名]

功能: 删除空目录

选项:

rmdir -p [目录名]

当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除

七:rm指令

rm 命令可以同时删除文件或目录
语法 rm [-f-i-r-v][dirName/dir]
适用对象 :所有使用者
功能 :删除文件或目录
使用rm删除文件时,会提示是否要删除文件,y表示同意,n表示不同意
选项:

(1). rm -f

f 表示force强制的,不需要询问直接给我删掉这个文件

(2). rm -r

-r表示递归删除,删除目录时要加-r选项,不然不能删,但是这样还是会被提问是否真的删除

所以当要删除一个目录时直接:

rm -rf 

表示强制递归删除,这个指令也是最实用的

八:man指令

Linux 的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助
如果是第一次用man指令的话,应该先安装一下,安装指令: yum install -y man-pages
语法 : man [选项] 命令
输入 man ls,就会显示ls的信息
可以通过上下键翻阅,按q就会关闭手册
如果用man指令取搜索man指令
可以发现man手册分为八章
1 是普通的命令
2 是系统调用 , open,write 之类的 ( 通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
3 是库函数 , printf,fread
4 是特殊文件 , 也就是 /dev 下的各种设备文件
5 是指文件的格式 , 比如 passwd, 就会说明这个文件中各个字段的含义
6 是给游戏留的 , 由各个游戏自己定义
7 是附件还有一些变量 , 比如向 environ 这种全局变量在这里就有说明
8 是系统管理用的命令 , 这些命令只能由 root 使用 , ifconfig

那么这些章节该怎么用呢?

比如我想在man手册中搜索C语言中的printf函数,那应该在第3章中查找

指令: man 3 printf

ps.如果不加章节会默认从第一章从头往后搜,但是碰到叫printf的指令就会停止搜索,搜索到的不一定是第三章中的printf

九:cp指令

语法 cp [选项] 源文件或目录目标文件或目录
功能 : 复制文件或目录
说明 : cp 指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
常用选项
-f --force  强行复制文件或目录,不论目的文件或目录是否已经存在
-i --interactive 覆盖文件之前先询问用户
-r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链
接,则一律视为普通文件处理
-R --recursive 递归处理,将指定目录下的文件及子目录一并处理

举例:

当前目录中只存在一个叫test.c的文件

复制出一个文件并且重命名为了data


cp src dst

其中src和dst都可以是绝对路径或者相对路径

比如我当前在/root目录下,我想把其子目录mydir目录中的data文件复制到当前目录下

cp ./mydir/data .

十:mv指令

 mv 命令是 move 的缩写,可以用来移动文件或者将文件改名( move (rename) files ),是 Linux 系统下常用的命令,经常用来备份文件或者目录。
语法 : mv [选项] 源文件或目录 目标文件或目录

功能:

(1).重命名     mv  文件名  新的名字

(2)移动文件  mv 文件名  新的路径 

将文件移动到新的路径下

具体是实现哪个功能要看第二个参数,如果是一个文件名的话就是重命名,如果是一个目录或者路径的话就是移动文件

选项:

-f  force  强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i  :若目标文件  (destination)  已经存在时,就会询问是否覆盖!

 十一:cat指令

语法 cat [选项][文件]
功能 :查看目标文件的内容

常用选项

-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行
补充1: 如何在文件中快速写一段代码
cat可以查看文件内容,所以怎么可以在文件中快速写一段代码呢?    ------- nano指令
在使用nano前要先安装一下: 在命令行打 yum install -y nano
演示:
先创建一个test.c的源文件,在nano 源文件 就可以写代码了
写完代码以后按ctrl+x 再按y即可退出
写完代码以后就可以用cat指令查看了
扩充:代码都写出了怎么运行呢?(了解一下即可)
第一步:gcc 源文件(编译)
编译完成后会生成一个a.out文件
第二部: ./a.out(相当于执行)
补充二: 输出重定向
Linux有个理念是:  万物皆文件
当我们输入echo+字符串时,会发现字符串被打印到了显示器上,打印在显示器的过程实际相当于在显示器文件中写入内容
但是当我们在后面加一个大于号和文件名,发现字符串并没有打印在显示器上,反而多出了一个叫log.txt的文件
我们用cat查看这个文件的内容,会发现本应该打印在屏幕上的字符串被保存到了文件里,这就是输出重定向,但是每次重定向时文件的内容会被先清空在写入(相当于c语言中的以'w'方式打开文件)
甚至直接  >文件名就可以创建出一个空文件,如果改文件有内容的话还可以达到清空文件的效果

 补充三:追加重定向

加两个大于号可以在文件内容后面继续追加内容,相当于c语言中的以'a'方式打开文件

补充四:输入重定向

cat指令后面什么都不加的话,默认是从键盘读取数据,再把数据显示到屏幕上

如果加一个 <文件名的话,就会从这个文件中读取数据,在显示在屏幕上,这就叫输入重定向

可以发现这样也能是实现cat 文件名的效果,但是两者的实现方法是完全不同的

十二:more指令

cat指令虽然可以查看文件内容,但是如果用它查看大文件时,会从头开始迅速显示到文件末尾,并且不能翻阅查看,more指令比cat指令更人性化一点,more 文件后,它会将文件从开开始铺满屏幕,可以按回车向下逐行阅读,缺点是不能向上翻阅查看

语法 more [选项][文件]
功能 more 命令,功能类似 cat,可以查看文件内容

十三:less指令

less指令是最适合翻阅大文件的指令,它可以通过上下键上下翻阅

语法: less [参数] 文件
功能
less more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

十四:head指令

head   tail  就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块, head  用来显示档案的开头至标准输出中,而 tail  想当然尔就是看档案的结尾。  
语法: head [参数]... [文件]... 
功能
head  用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。  
选项 -n< 行数 显示的行数

十五:tail指令

语法: tail[必要参数][选择参数][文件] 
功能: 用于显示指定文件末尾内容
选项:

-n<行数显示的行数

补充:

通过head可以查看文件开头的内容,通过tail可以查看文件末尾的内容,那如何查看文件中间的内容呢?这里就要讲解一下管道:将数据从一端运输到另一端

比如有一个大文件有一万行,想查看9000行到9010行的内容怎么办?

head -9010 文件名 | tail -10

解读:

head -9010 文件名将文件前9010行内容筛选出来了,|就相当于管道,tail -10,查看运输过来的数据的后十行

十六:和时间相关的指令

date

使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%H : 小时 (00..23)
%M : 分钟 (00..59)
%S : (00..61)
%X : 相当于 %H:%M:%S
%d : (01..31)
%m : 月份 (01..12)
%Y : 完整年份 (0000..9999)
%F : 相当于 %Y-%m-%d

 

十七:cal指令

命令格式 cal [参数][月份][年份]
功能 :用于查看日历等时间信息,如只有一个参数,则表示年份 (1-9999) ,如有两个参数,则表示月份和年份
常用选项
-3  显示系统前一个月,当前月,下一个月的月历
-j   显示在当年中的第几天(一年日期按天算,从 1 1 号算起,默认显示当前月在一年中的天数)
-y   显示当前年份的日历

十八: Find指令

语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name   按照文件名查找文件

十九:grep指令

语法: grep [选项] 搜寻字符串文件

功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
- i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ' 搜寻字符串 ' 内容的那一行

在test.txt文件中储存了如下信息

现在想搜索除带bit的数据,并显示行号,不区分大小写

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3-toRaw 和 markRaw 函数

Vue3-toRaw 和 markRaw 函数 toRaw(转换为原始)&#xff1a;将响应式对象转换为普通对象&#xff0c;只适用于 reactive 生成的响应式对象。markRaw(标记为原始)&#xff1a;标记某个对象&#xff0c;让这个对象永远都不具备响应式。一些集成的第三方库&#xff0c;会有大量的…

【解决方案】基于边缘计算技术的安科瑞综合管廊能效管理平台

平台背景 综合管廊一般是建于城市地下用于容纳两类及以上城市工程管线的构筑物及附属设施&#xff0c;将电力、自来水、热力、煤气、电信、网络等市政公用管线根据规划要求集中敷设在同一个构建物内&#xff0c;实施统一设计、施工、管理的市政公用隧道空间&#xff0c;并且还…

短剧小程序开发,短剧视频火热程序

近期&#xff0c;短剧以其独特的魅力在快节奏、忙碌的生活中迅速走红。在匆忙等待食物间隙&#xff0c;或想放松身心的片刻&#xff0c;短句成为人们难得的片刻宁静。 短剧小程序应运而生&#xff0c;在这个小巧的应用中&#xff0c;汇聚了多部丰富多样的正版短剧&#xff0c;为…

ELK---filebeat日志收集工具

filebeat也是日志收集工具&#xff0c;和logstash相同。 filebeat的特点 filebeat是一个轻量级的日志收集工具&#xff0c;所使用的系统资源比logstash部署和启动时使用的资源小的多。 filebeat可以运行在非java环境&#xff0c;他可以代替logstash在非java环境上收集日志 缺…

电脑如何定时关机?

电脑如何定时关机&#xff1f;我承认自己是个相当粗心的人&#xff0c;尤其是在急于离开时经常会忘记关闭电脑&#xff0c;结果就是电量耗尽&#xff0c;导致电脑自动关机。而且&#xff0c;在我使用电脑的时候&#xff0c;经常需要进行软件下载、更新等任务。如果我一直坐等任…

ArkTS-共享元素转场动画

共享元素转场动画 在不同页面间&#xff0c;有使用相同的元素&#xff08;例如同一幅图&#xff09;的场景&#xff0c;可以使用共享元素转场动画衔接。为了突出不同页面间相同元素的关联性&#xff0c;可为它们添加共享元素转场动画。如果相同元素在不同页面间的大小有明显差异…

零信任安全:远程浏览器隔离(RBI)的重要性

引言 在当今数字化时代&#xff0c;网络安全已成为个人和企业关注的焦点。随着网络攻击和恶意软件的不断增加&#xff0c;远程浏览器隔离(RBI)SAAS系统变得至关重要。本文将深入探讨远程浏览器隔离系统的重要性&#xff0c;以及它如何帮助用户保护其网络免受恶意软件和网络攻击…

【傻瓜级JS-DLL-WINCC-PLC交互】1.C#用windows窗体控件创建.net控件

思路 JS-DLL-WINCC-PLC之间进行交互&#xff0c;思路&#xff0c;先用Visual Studio创建一个C#的DLL控件&#xff0c;然后这个控件里面嵌入浏览器组件&#xff0c;实现JS与DLL通信&#xff0c;然后DLL放入到WINCC里面的图形编辑器中&#xff0c;实现DLL与WINCC的通信。然后PLC与…

台式机加独显引发的故事

弄到一块NVIDIA1660显卡&#xff0c;想要加到台式机&#xff0c;枯树逢春&#xff1b;中间引发不少事情&#xff0c;记录下来共勉 1.台式机插入显卡 1&#xff09;拆开主机后部的接口片 2&#xff09;显卡插入显卡巢&#xff0c;很内存条结构类似&#xff08;长短布局&#xff…

zblog插件-zblog采集插件下载

在当今数字化的时代&#xff0c;博客已经成为人们分享思想、经验和知识的重要平台。而对于使用zblog博客系统的用户来说&#xff0c;充实博客内容是提高用户体验和吸引读者的不二法门。然而&#xff0c;手动收集内容对于博主来说既费时又繁琐。在这个背景下&#xff0c;zblog插…

线程为什么比进程的切换效率高

1.进程切换为什么比线程切换效率低呢? 进程都有自己的虚拟地址空间&#xff0c;把虚拟地址转换为物理地址需要查找页表&#xff0c;页表查找是一个很慢的过程&#xff0c;因此通常使用Cache来缓存常用的地址映射&#xff0c;这样可以加速页表查找&#xff0c;这个Cache就是TL…

【Cmake】Cmake基础学习

CMake学习 一、基础学习 1. 利用Cmake进行单个源代码构建可执行文件 (1)基础命令 最基本的 CMake项目是由单个源代码文件构建的可执行文件。对于这样的简单项目,只需要一个包含三个命令的 CMakeLists.txt 文件。 注意: 虽然 CMake 支持大写、小写和混合大小写命令,但是…

【Unity3D】MAX聚合广告SDK——Pangle广告接入(成了!成了!)

Pangle, App Monetization Simplified 注册 登录 创建应用 创建广告单元 将其应用ID和广告ID关联到MAX广告。 下载Pangle Unity Plugin包&#xff0c;新建一个空工程&#xff08;很重要&#xff09; Unity版本2019.4.0f1 gradle plugin 4.2.0 gradle版本6.7.1 build_tools 34.…

【Java】7. 类型转换和类型判断

7. 类型转换 7.1 基本类型转换 顺箭头&#xff1a;隐式转换&#xff08;自动&#xff09; 逆箭头&#xff1a;强制转换&#xff08;可能造成精度丢失&#xff09; byte a 10; int b a; int c 1000; byte d (byte) c; System.out.println(d); // -24 7.2 包装类型与基…

GPTS-生成一个动漫图像GPT

介绍 GPTs是ChatGPT的定制版本,用户可以通过组合指令、知识和功能来定制用于特定任务或主题的GPT。它们可以根据需要简单或复杂,解决从语言学习到技术支持等各种事情。 创建GPTs Plus和Enterprise用户可以在chat.openai.com/create上开始创建GPTs。 您可以通过在ChatGPT上的…

印刷企业建设数字工厂管理系统的工作内容有哪些

随着科技的不断进步&#xff0c;数字工厂管理系统在印刷企业中的应用越来越广泛。这种系统可以有效地整合企业内外资源&#xff0c;提高生产效率&#xff0c;降低生产成本&#xff0c;并为印刷企业提供更好的业务运营与管理模式。本文将从以下几个方面探讨印刷企业建设数字工厂…

搭建一个可以发送邮箱验证码的接口,内含前端处理 接口返回、请求处理

环境搭建 在node安装好的情况下&#xff08;一般vue环境有的node也有 没有可以使用winr回车输入node -v 有版本号则已经安装好 找一个空文件夹作为此项目文件夹 点击上面的地址栏输入cmd回车 输入npm init -y 再输入npm install nodemailer安装发送邮件的插件 环境配置 使用v…

别做无用功!了解伦敦银交易指标的分类

在伦敦银投资中&#xff0c;我们都喜欢使用技术指标来帮助我们判断市场行情、预测银价点位。其实&#xff0c;伦敦银的技术指标是有不同分类的&#xff0c;我们了解主要的几类&#xff0c;这样在交易中才不至于将相同类型的叠加在一起&#xff0c;这样容易降低决策效率。 分类一…

运维 | 四层和七层负载均衡介绍

关注: CodingTechWork 负载均衡 负载均衡介绍 概念 负载均衡是建立在现有的网络结构之上&#xff0c;提供一种廉价且透明的方式进行网络设备和服务器带宽的扩展&#xff0c;从而增加吞吐量&#xff0c;加强应用服务的数据处理能力&#xff0c;有效提高网络的灵活性和可用性。…

【问题系列】消费者与MQ连接断开问题解决方案(二)

1. 问题描述 当使用RabbitMQ作为中间件&#xff0c;而消费者为服务时&#xff0c;可能会出现以下情况&#xff1a;在长时间没有消息传递后&#xff0c;消费者与RabbitMQ之间出现连接断开&#xff0c;导致无法处理新消息。解决这一问题的方法是重启Python消费者服务&#xff0c;…