【Linux】基本指令的使用 and 面试常问

1、man 指令

使用方法:man + Linux指令。

功能:相当于字典,查找指令的用法。

常用选项:

-k:根据关键字搜索联机帮助。

num:只在第num章节查找。

-a:将所有章节的都显示出来,比如man printf它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

man 手册分为九章:

1:是普通的命令。

2:是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)。

3:是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件。

4:略。

5:是指文件的格式,比如passwd,就会说明这个文件中各个字段的含义。

6:是给游戏留的,由各个游戏自己定义。

7:是附件还有一些变量,比如像environ这种全局变量在这里就有说明。

8:是系统管理用的命令,这些命令只能由root使用,如:ifconfig。

9:略。 

 [whb@bite-alicloud test]$ man printf //查看printf指令(没错,printf也是一个指令[whb@bite-alicloud test]$ man fork //查看系统调用,默认没有这个指令,man就自动去2号手册查找

补充理论:Linux下一切皆文件!1、向显示器打印,相当于向显示器文件进行写入;2、从键盘scanf读取数据,相当于从键盘文件中读取数据。

2、echo 指令

使用方法1:

功能:相当于printf函数

使用方法2:

 功能:指定文件写入内容

注意:cat 指令是显示目标文件的内容。> 是输出重定项。,特点:指定文件没有就新创建一个,每一次写入都是将原来的内容清空,再写入;所以我们要想情况文件内容可以输入指令:>目标文件。

使用方法3:

功能:不用清空指定文件内容,继续写入指定文件。

注意:>>是追加重定项。

3、cat 指令

使用方法1:

功能:显示文件内容。

注意:< 输入重定项。

使用方法2:

功能:给文件内容带有行号。

使用方法3:

功能:倒过来显示内容

注意:cat 只能查看小文件的内容,内容过长,就会导致刷屏。 

常用选项:

-b:对非空输出行编号,空行不做编号

-n:对输出的所有行编号

-s:不输出多行空行

4、cp 指令

使用方法1:

功能:把hello.txt文件的内容拷贝到my.txt,即使没有my.txt也会自动新建一个my.txt文件。

使用方法2:

功能:拷贝目录

常用选项:

-f 或 --force:强行复制文件或目录,不论目的文件或目录是否已经存在

-i或 --interactive:覆盖文件之前先询问用

-r:递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理 

 5、mv指令

使用方法1:mv + 文件名/路径    路径/文件名

功能:剪切拷贝。

使用方法2:mv 文件名 文件名

功能:重命名

常用选项:

-f:force强制的意思,如果目标文件已经存在,不会询问而直接覆盖

-i:若目标文件(destination)已经存在时,就会询问是否覆盖! 

6、more 指令

使用方法:more + 文件名

功能:类似于cat,只不过能上下翻看内容,适用于查看大文件。

常用选项:

-n:指定输出行数

q:退出more

7、less 指令

        less工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。

        less的用法比起more更加的有弹性,在more的时候,我们并没有办法向前面翻,只能往后面看。

        但若使用了less时,就可以使用[pageup] [pagedown]等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容。

        除此之外,在less里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

使用方法:less + 文件名。

功能:查看大文件。

常用选项:

-i:忽略搜索时的大小写

-N:显示每行的行号

/字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与/或?有关)

N:反向重复前一个搜索(与/或?有关)

q : quit

8、head指令

使用方法:head+ -n(数字) + 文件名

功能:查看文件前n行内容。

9、tail 指令

使用方法:tail + -n(数字) 文件名

功能:查看倒是第n行的文件内容。

常用选项:

-f:循环读取

-n:<行数>显示行数 

10、| 指令

使用方法:

功能:查看文件内容的范围内容。

注意:| 是管道,它可以连接指令,执行一串指令。

11、date 指令

使用方法:

功能:显示时间。

1、在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下:

%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

2、在设定时间方面:

date -s // 设置当前时间,只有root权限才能设置,其他只能查看。

date -s 20080523/设置成20080523,这样会把具体时间设置成空00:00:00。

date -s 01:01:01//设置具体时间,不会对日期做更改。

date -s “01:01:012008-05-23”//这样可以设置全部时间。

date -s “01:01:0120080523”//这样可以设置全部时间。

date -s “2008-05-2301:01:01”//这样可以设置全部时间。

date -s “2008052301:01:01”//这样可以设置全部时间。

3、时间戳

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

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

Unix时间戳(英文为Unix epoch,Unix time,POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。

12、cal 指令

使用方法:

 

功能:显示当年日历

 

常用选项:

-3:显示系统前一个月,当前月,下一个月的月历

-j:显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)

-y:显示当前年份的日历 

 13、find 指令

使用方法:find + 路径+-name+*.后缀或者文件

功能:在指定路径下查找文件。

注意:*.c是指查找以.c为后缀的文件。

 

补充知识:Linux大部分指令本质都是Linux系统下固定目录下的可执行文件!

14、which 指令

使用方法:

 

功能:查看文件(针对命令)路径

 

 15、file 指令

使用方法:file + 文件名

 

注意:也可以指定目录去查看。 

功能:查看文件类型

 

 16、whereis 指令

使用方法:

功能:查找文件或者指令

 

17、alias 指令 

使用方法:

 

功能:给指令取别名

 

注意:取消别名的指令:

 

 注意:当我们退出XShell的时候会自动取消别名,建议别用。

18、grep 指令

使用方法1:

功能:显示文件包含指定关键字的内容。

 

 使用方法2:

功能:显示文件不包含关键字的内容

 

使用方法3:

功能:显示文件包含关键字的内容并且带上行号。

 

使用方法4:

 功能:显示包含关键字(忽略关键字的大小写)的文件内容。

常用选项:

-i:忽略大小写的不同,所以大小写视为相同

-n:顺便输出行号

-v:反向选择,亦即显示出没有“搜寻字符串”内容的那一行 

 19、top 指令

使用方法:

功能:查看进程

 注意:q退出进程,htop指令可以显示彩色的进程。

20、打包和压缩指令

打包压缩的原因:方便网络运输,提高下载效率。

1)zip 指令

使用方法:

功能:给指定文件打包和压缩

 

2)unzip 指令

使用方法:

 

功能:解压

 

 注意:如果压缩文件是目录文件就要执行指令:

21、sz 指令

使用方法 :

功能:指定文件发送到我们的电脑(Windows)。

注意:如果想把电脑的文件发送到Linux,可以输入指令:rz

22、tar 指令

使用方法1:

 功能:打包并且压缩

注意:也可以打包到指定目录下:tar czf 文件.tgz -c 路径 

 使用方法2:

功能:解压

 

注意:解压到指定目录下:tar xzf 文件.tgz -C 路径

注意:如果想把压缩文件从LinuxB机器发送到另外一台LinuxA机器,可以B机器输入指令:scp 压缩文件名 有户名@公网 :A机器的目录,然后B机器要输入用户的密码;这时候A机器要验证B机器的身份要输入B机器用户的密码。

常用选项:

-c:建立一个压缩文件的参数指令(create的意思);

-x:解开一个压缩文件的参数指令!

-t:查看 tarfile 里面的文件!

-z:是否同时具有gzip的属性?亦即是否需要用gzip压缩?

-j:是否同时具有bzip2的属性? 亦即是否需要用bzip2压缩?

-v:压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f:使用档名,请留意,在f之后要立即接档名喔!不要再加参数!

-C:解压到指定目录

23、bc 指令

使用方法:

功能:计算器

注意:输入quit退出计算器,也可以ctl+z强制退出。

面试题:如何查看你的Linux机器的体系结构?

答:就是在问你CPU的架构,输入命令:uname -r 或者 uname -a就能看到:

X86_64就是你的CPU架构。 

23、uname -r 指令

功能:uname 用来获取电脑和操作系统的相关信息(操作系统的版本、硬件的名称等基本信息)。

常用选项:

-a或-all:详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。

lsb_release -a:查看操作系统版本。

24、热键

        ctrl+r:搜索历史命令。

        !+历史命令的第一个字母:执行上一次命令。

        [Ctrl]-c按键:让当前的程序停掉

        [Ctrl]-d按键:通常代表着: 键盘输入结束(End Of File,EOF戒End Oflnput)的意思;另外,他也可以用来取代exit。

关机

使用方法:shutdown+选项

常用选项:

-h:将系统的服务停掉后,立即关机。

-r:在将系统的服务停掉之后就重新启动。

-t sec:-t后面加秒数,亦即过几秒后关机的意思。

25、shell命令和以及运行原理

        Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel) “,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)主要包含:将使用者的命令翻译给核心(kernel)处理。同时,将核心的处理结果翻译给使用者。

        对比windows GUI,我们操作windows不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。

        shell对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

注意:shell也是变相保护内核,shell通过bash(命令解释器)来翻译指令给内核。

完!!!

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

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

相关文章

零基础 “入坑” Java--- 十六、字符串String 异常

文章目录一、String1.字符串的不可变性2.字符串的修改3.StringBuilder和StringBuffer4.【字符串练习】4.1 字符串中的第一个唯一字符4.2 字符串最后一个单词的长度4.3 验证回文串二、异常1.初识异常2.异常的分类3.异常的处理4.异常处理流程总结5.自定义异常在上一章节中&#x…

梯度下降在大模型训练中的作用与实现

梯度下降&#xff08;Gradient Descent&#xff09;是深度学习中最核心的优化算法之一。大模型&#xff08;如GPT、BERT&#xff09;在训练时需要优化数十亿甚至上千亿的参数&#xff0c;而梯度下降及其变体&#xff08;如SGD、Adam&#xff09;正是实现这一优化的关键工具。它…

【JVS更新日志】开源框架、APS排产、企业计划、物联网、逻辑引擎7.30更新说明!

项目介绍 JVS是企业级数字化服务构建的基础脚手架&#xff0c;主要解决企业信息化项目交付难、实施效率低、开发成本高的问题&#xff0c;采用微服务配置化的方式&#xff0c;提供了低代码数据分析物联网的核心能力产品&#xff0c;并构建了协同办公、企业常用的管理工具等&…

Eclipse中导入新项目,右键项目没有Run on Server,Tomcat的add and remove找不到项目

原因分析没有勾选Dynamic Web Module、Java、JavaScriptDynamic Web Module版本问题解决方法Eclipse中右键项目选择Properties左侧点击project facets勾选Dynamic Web Module、Java、JavaScript&#xff0c;注意Dynamic Web Module版本问题,要和tomcat版本对应。- Dynamic Web …

IntelliJ IDEA 2025系列通用软件安装教程(Windows版)

前言 JetBrains系列开发工具&#xff08;如IntelliJ IDEA、PyCharm、WebStorm等&#xff09;是程序员们非常喜爱的集成开发环境。2025年最新版本带来了更多强大的功能和改进。本教程将详细介绍如何在Windows系统上安装JetBrains 2025系列软件。 最近挖到一个宝藏级人工智能学习…

乌鸫科技前端二面

1. 你能给我介绍一下你参与的重要项目&#xff0c;并重点介绍一下做的内容?通俗解释&#xff1a; 挑一个你觉得最拿得出手、技术含量最高的项目&#xff0c;说说这个项目是干什么的&#xff08;比如一个电商网站、一个后台管理系统&#xff09;&#xff0c;你在里面具体负责了…

《c++面向对象入门与实战》笔记

前年的书&#xff0c;翻出来整理一下7章.指针指针 sizeof为4*指针 sizeof为 所指类型的sizeof注意free后置空&#xff0c;避免野指针11章.类

easyExcel生成多个sheet的动态表头的实现

在使用 EasyExcel 实现“多个 Sheet 且每个 Sheet 表头是动态的”需求时&#xff0c;思路如下&#xff1a;✅ 实现思路概述 EasyExcel 的 ExcelWriter 支持多个 Sheet 写入。每个 Sheet&#xff1a; 使用 WriteSheet 创建&#xff1b;可以绑定一个动态生成的表头 List<List&…

SQL 连接类型示例:内连接与外连接

SQL 连接类型示例&#xff1a;内连接与外连接 示例数据表 假设我们有两个表&#xff1a; employees 表:emp_idemp_namedept_id1张三1012李四1023王五1034赵六NULLdepartments 表:dept_iddept_name101销售部102技术部104财务部1. 内连接 (INNER JOIN) 内连接只返回两个表中匹配的…

Ubuntu安装gpu驱动,cuda

系统初始化 1、安装基础软件 apt-get update apt-get -y install openssh-server openssh-client apt-utils freeipmi ipmitool sshpass ethtool zip unzip nano less git netplan.io iputils-ping mtr ipvsadm smartmontools python3-pip socat conntrack libvirt-clients li…

ctfshow_源码压缩包泄露

根据题目信息直接dirsearch解压下来一个.txt文件&#xff0c;一个index.phpflag{flag_here}不对那么就去看index.php也没有东西&#xff0c;于是查看wp发现是访问/fl000g.txt这才是对的还有很多源码泄露需要去了解• git源码泄露• svn源码泄露• DS_Store 文件泄露• 网站备份…

Python 程序设计讲义(54):Python 的函数——函数概述

Python 程序设计讲义&#xff08;54&#xff09;&#xff1a;Python 的函数——函数概述 目录Python 程序设计讲义&#xff08;54&#xff09;&#xff1a;Python 的函数——函数概述一、函数的类型1、内置函数2、自定义函数二、调用函数Python 提供了函数机制&#xff0c;把实…

学习Python中Selenium模块的基本用法(3:下载浏览器驱动续)

前一篇文章主要介绍下载针对火狐浏览器的WebDriver&#xff0c;写那篇文章时才找到能够下最新版本Chrome的WebDriver地址&#xff08;参考文献6&#xff09;&#xff0c;本文继续学习并验证针对Chrome浏览器的WebDriver下载和使用方法。Chrome的WebDriver版本与操作系统相关&am…

AIDL当Parcelable序列化的数据类通信时报“Class not found when unmarshalling“找不到该类时的解决方案

1. 报错栈 &#xff1a;cusText这个类找不到 2 16:01:29.796 1044 5718 E Parcel : Class not found when unmarshalling: com.cus.sdk.cusText 08-02 16:01:29.796 1044 5718 E Parcel : java.lang.ClassNotFoundException: com.cus.sdk.cusText 08-02 16:01:29.796 1…

Django模型查询与性能调优:告别N+1问题

文章目录一、查询基础QuerySet 详解一对多关联查询多对多关联查询二、N1查询问题问题分析检测方法解决方案三、高级查询优化values()values_list()values()和values_list()对比Q() 对象复杂查询查看生成的 SQL四、项目实战场景实战一、查询基础 QuerySet 详解 Django 中通过模…

PyTorch 中 Tensor 统计学函数及相关概念

文章目录PyTorch 中 Tensor 统计学函数及相关概念一、引言二、基础统计学函数&#xff08;一&#xff09;torch.mean()——均值计算&#xff08;二&#xff09;torch.sum()——总和计算&#xff08;三&#xff09;torch.prod()——元素积计算&#xff08;四&#xff09;torch.m…

浅拷贝与深拷贝的区别

浅拷贝和深拷贝是两种不同的对象复制方式&#xff0c;主要区别在于它们如何处理对象内部的引用类型字段。浅拷贝 (Shallow Copy)特点&#xff1a;只复制对象本身&#xff08;基本类型字段&#xff09;和对象中的引用&#xff08;地址&#xff09;不复制引用指向的实际对象原始对…

脚本统计MongoDB集合表数据量

脚本&#xff1a; #!/bin/bashipxxx.xx.xx.xx portxxxx dbxxxdb #user #passwmongo -host ${ip}:${port} <<EOF 2>/dev/null|grep -vE version|not match|session|compressors||Warning|delivers|upcoming|installation|https|switched|bye >collec use ${db}; sho…

图漾AGV行业常用相机使用文档

文章目录1.图漾相机设置IP1.1 前期准备2.FM851-E2相机2.1 FM851-E2适用场景2.2 FM851-E2 IO线和数据线定义2.2.1 IO接口定义2.2.2 数据接口线2.2.3 相机正面安装方向2.2.4 相机IO指示灯2.3 FM851-E2/FM855-E2-7相机RGB颜色异常【解决措施1】&#xff1a;【解决措施2】&#xff…

电力系统分析学习笔记(二)- 标幺值计算与变压器建模

电力系统分析学习笔记&#xff08;二&#xff09;- 标幺值计算与变压器建模 1. 电力系统参数计算的基本原理 1.1 基本级的概念与选择 基本级定义&#xff1a; 在多电压等级的电力系统中&#xff0c;需要将所有参数归算到同一个电压等级这个统一的电压等级称为基本级 基本级选择…