【Linux】基本指令 · 下

alias 指令

起别名

为什么 ls -l 指令等价于 ll 指令呢?

指令就是可执行程序和我们自己写的代码编译好的程序,没有本质区别
指令在系统的某一个位置存在!
执行指令前,现在系统中查找对应的指令

指令在根目录下 /usr/bin/

ll 指令没有在 /usr/bin/ 路径下


which 指令:查看对应指令的路径

ls  -l 指令等价于 ll 指令,是因为 ll 指令是 ls  -l 指令的别名

不想要了

如果关掉 Xshell

重命名目前是临时的
ll 这个重命名是写在配置文件里的,所以每次登录时都能用。(自己少重命名)

cat 指令

cat -n 文件名:对输出结果编号(空行也带编号)
cat -n 文件名:对输出结果编号(不给空行编号)
cat -s 文件名:如果连续多行空行,只显示1行空行


Linux 下一切皆文件

指令的本质就是可执行文件,直接安装到了系统的某种路径下

键盘、显示器等都是文件

显示器(向显示器打印:向显示器写入文件):提供写(fwirte())的方法,读(fread(){})的方法是空的
键盘(从键盘读取数据):提供读(fread())的方法,写(fwirte(){})的方法是空的
普通文件:有正常的读写方法



以前:echo指令把"Hello Linux"字符串打印到显示器上
现在:echo指令默认把"Hello Linux"字符串写到显示器文件中


现在:把本应写到显示器文件的内容,因为 > 符号的作用,写到了普通的磁盘文件中。这种行为叫重定向

cat  文件名:打印文件内容(把文件的内容数据写到显示器文件里)
ll  文件名:打印文件属性(把文件的属性数据写到显示器文件里)


echo 后面跟字符串,不是文件;或者 echo 认为自己后面跟的是字符串

输出重定向 > 有一个特点:
        向目标文件写入的时候,覆盖写入:1. 清空文件          2. 写入新内容

清空一个文件的简化写法:> 文件名

输出、追加重定向:如果写的目标文件不存在,默认会给你创建
所以想创建新文件,除了 touch 指令;也可以直接 > 新文件名

不想清空追加重定向 >>         append


cat 文件名:打印文件内容
cat 后面什么都没跟,我输什么就给我打印什么

cat 默认从输入设备读数据

本来应该从键盘文件读取数据,现在从指定的文件读取输入重定向 <

cat < out.txt 是另外一种打印文件内容的写法,与 cat out.txt 有区别,后面讲

more 指令

cat 只适合看小文本;more 只能向下翻,用的不多

cnt=1; while [ $cnt -le 10000 ]; do echo "hello Linux $cnt"; let cnt++; done > test.txt
test.txt 中现在有 10000 行数据

more  test.txt 只打印一屏,按 Enter 向下翻;q 退出
more  -n  test.txt 打印到第 n 行停下
/XXX:在more的场景下搜索

less 指令

less  test.txt 打印一屏,按 下/Enter 下翻;上 上翻;q退出
/XXX:文本查找

head 指令

提取一段文本的前 n 行,默认提取前10行

head test.txt
head -n test.txt

tail 指令

提取一段文本的后 n 行,默认提取后10行

tail test.txt
tail -n test.txt


有 head、tail、重定向,可以把文件任意片段截取出来

想看 1000-1020 行,并把文本截取出来

缺点:要创建临时文件,临时文件真真切切的在磁盘中

优化:管道

一种符号,后面会被“系统”解释为管道文件,这个管道文件不会在磁盘里存在,是内存级的文件

作用:把左侧程序的输出交给管道文件、让右侧的程序再从管道文件中把数据读到自己程序中

时间相关指令

date 指令查看 Linux 相关时间

1. 显示:date +标记


%F 相当于 %Y-%m-%d                 %X 相当于 %H:%M:%S

2. 设定

3. 时间戳:从1970.1.1 00:00 起经过的秒数

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


这里显示8时是考虑时差


cal 指令:查看日历

find 指令

任意文件、任意路径的查找,选项很多,功能强大

这里只看 -name 选项

find  路径名  -name  文件名

普通用户只有在自己家目录下 find  /home/qtw/  -name  XXX 进行操作时,才能正常查。因为从这个目录往下,整个一颗多叉树都是自己的
如果前缀不是,会受权限约束,有时候不让查。


补充:
which:在系统指令路径下,搜索指令文件
whereis:在系统特定路径下查找 可执行程序、手册、安装包、压缩包……

grep 指令

行文本过滤工具,在文件中搜索字符串,将找到的行打印出来

grep  选项  要搜索的字符串  文件(可以跟多个)

选项:
-v:反向选择(reverse)         -n:输出行号         -i:忽略大小写的不同(ignore)

指令可以通过携带文件的方式,对内容进行查找;也可以合并到管道


查 main 函数位置

递归的,在指定目录下过滤:grep  -Rn  'int main()'  /home/qtw/

zip / unzip 指令

打包、压缩文件

原因:
1. 能被打包,定是多个文件合并成一个文件 ==> 不易造成文件缺失
2. 压缩后体积小,下载时间短

于是有了打包压缩的工具

压缩目录要带 -r 选项

打包压缩目录:

打包压缩目录+文件、并解压到指定目录:

tar 指令

czf:creat创建 执行打包压缩的动作、zip的方式压缩、指明新形成的文档名称

.tgz 是 .tar.gz 的缩写                 .tar:打包后缀                 .gz:压缩后缀


tzf:文件不解包不解压,只看里面有什么(预览)

xzf:解包解压
tar xzf code.tgz:直接解包解压到当前路径

解包解压到指定路径:-C 选项


纯 Linux 下流转用 tar .tgz
想让 Windows 下解包解压软件也能识别,用 zip

遇见没见过的后缀,在网上搜对应指令

bc 指令

Linux 下计算器。quit 退出

bc 指令很方便浮点数计算

uname 指令

uname  选项

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

Linux VM-16-14-centos 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

x86_64==x64         x86==32

查体系结构:-r 选项

3.10.0-1160.119.1.el7.x86_64
内核版本   CentOS的简写


Linux 下查内存:free  或  free  选项

-k 选项:以 kb 的方式
-m 选项:
-g 选项

lsmem 也可以查内存


查磁盘:df  -h


查 CPU:lscpu

热键

Tab:命令补齐

Ctrl C:

Ctrl R:历史命令搜索 ==> Linux 系统一定记录了历史命令!!

Ctrl D:退出终端登录、退出用户

确认历史命令:history

二. 指令的运行原理(简单理解)

[qtw@VM-16-14-centos ~]$

用户名      主机名       当前目录       命令行提示符

统称为 bash命令行

指令输入的过程,本质是输入字符串。
指令的本质:编译好的程序和脚本。一定会在系统的特定路径下存放

所有的指令,最终都要在OS内部运行,但是OS使用难度大,用户不能直接和OS打交道

Windows下有图形化界面;Linux下有命令行解释器:命令行、bash、sh、shell

命令行解释器的工作:将用户的命令翻译给内核处理,将内核的处理结果翻译给使用者
命令行解释器存在的意义:1. 进行命令解释         2. 保护OS,对于用户的非法请求,直接拦截

本篇的分享就到这里了,感谢观看,如果对你有帮助,别忘了点赞+收藏+关注
小编会以自己学习过程中遇到的问题为素材,持续为您推送文章

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

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

相关文章

计算机视觉(opencv)实战二十二——指纹图像中提取特征点,计算两两指纹之间的相似度

指纹识别原理与代码实现详解指纹识别是一种常见的生物特征识别技术&#xff0c;广泛应用于门禁系统、手机解锁、考勤打卡、身份认证等场景。其核心思想是&#xff1a;从指纹图像中提取特征点&#xff0c;计算两幅指纹之间的相似度&#xff0c;并根据相似度判断是否为同一人。本…

Linux基础之部署mysql数据库

文章目录一、环境准备二、源码解压与依赖三、CMake 编译配置四、配置 MySQL权限管理修改配置文件 /etc/my.cnf五、环境变量设置六、数据库初始化七、服务管理八、账号密码管理一、环境准备 yum -y install gcc gcc-c ncurses ncurses-devel bison cmakegcc / gcc-c&#xff1a…

代码审计-PHP专题原生开发文件上传删除包含文件操作监控Zend源码解密1day分析

快速分析脆弱&#xff1a;1、看文件路径2、看代码里面的变量&#xff08;可控&#xff09;3、看变量前后的过滤文件安全挖掘点&#xff1a;1、脚本文件名2、应用功能点3、操作关键字文件上传&#xff0c;文件下载(读取)&#xff0c;文件包含&#xff0c;文件删除等emlog-文件上…

零基础搭建 Hexo 博客:从本地到 GitHub Pages 全流程指南

零基础搭建 Hexo 博客&#xff1a;从本地到 GitHub Pages 全流程指南 Hexo 是一个快速、简洁且高效的博客框架&#xff0c;支持使用 Markdown 来编写文章&#xff0c;并能快速生成静态网页&#xff0c;非常适合想要搭建个人博客的同学。本文将带你从零开始&#xff0c;本地搭建…

Git 简介

Git 是目前全球最流行的分布式版本控制系统&#xff08;Distributed Version Control System, DVCS&#xff09;&#xff0c;核心作用是追踪文件修改历史、支持多人协同开发&#xff0c;并能高效管理代码&#xff08;或任何文本类文件&#xff09;的版本迭代。它由 Linux 内核创…

后端Web实战-Spring原理

目录 1. 配置优先级 2. Bean管理 2.1 获取Bean 2.2 Bean作用域 面试题&#xff1a;Lazy是如何解决循环依赖问题的&#xff1f; 2.3 第三方Bean 3. SpringBoot原理 3.1 起步依赖 3.2 自动配置 3.2.1 概述 3.2.2 自动配置的原理及常见方案 3.2.2.1 概述 3.2.2.2 方案…

在 Qoder 等 AI 二创 IDE 里用 VS Code Remote-SSH 的“曲线连接”实战

目标&#xff1a;让你在 Qoder 等在线/AI 辅助 IDE 中&#xff0c;也能像本地 VS Code 一样通过 Remote-SSH 连接到自己的远程服务器进行开发。 前提&#xff1a;只在你拥有或被授权的服务器上使用&#xff0c;遵守所用平台的条款与限制。两句话说清楚 先用本地 VS Code 正常连…

python发送请求SSL验证设置

这个错误通常是由于SSL/TLS握手失败导致的&#xff0c;可能原因包括证书验证问题、不兼容的加密协议或网络连接中断。以下是几种解决方案&#xff0c;按推荐顺序排列&#xff1a; 方案一&#xff1a;临时禁用SSL验证&#xff08;快速测试&#xff09; response requests.get(u…

工厂自动化正从 “人工堆叠” 向 “设备替代” 快速转变

​人工进行零件排列&#xff0c;虽在操作灵活性上有一定表现&#xff0c;但实际应用中存在明显短板&#xff0c;对工厂自动化转型形成制约。从成本来看&#xff0c;一名工人日均工资约数百元&#xff0c;若需 5-6 名工人协同作业&#xff0c;月均人力成本易突破万元&#xff0c…

中标麒麟7.4部署gitlab-runner

1. 部署环境 本次部署环境完全断网。需要离线下载gitlab-runner及其依赖。 本次部署环境为中标麒麟7.4。目前机器上部署了gitlab&#xff0c;安装了maven。 2. 部署步骤 2.1 在外部下载好依赖 我首先在腾讯云上布置了一个centos7.9的虚拟机&#xff0c;没有安装任何东西。 …

在 IDEA 2024 创建 Vue 项目(保姆级)

目录 一、 前后端分离 1. 简介 2. 实现前后端分离的常用前端框架 3. 前后端分离和动静分离 3.1 前后端分离: 3.2 动静分离: 二、 Vue.js概述 1. 简介 2. SPA介绍 2.1 优点 2.2 缺点 3. MVVM介绍 3.1 示例 三、 名词解释 1. Node.js 2. npm 3. webpack 4. Vue…

Coze源码分析-资源库-创建知识库-后端源码-应用/领域/数据访问

3. 应用服务层 3.1 知识库应用服务 文件位置: backend/application/knowledge/knowledge.go func (k *KnowledgeApplicationService) CreateKnowledge(ctx context.Context, req *dataset.CreateDatasetRequest) (*dataset.CreateDatasetResponse, error) {// 1. 转换文档类型d…

Shopify指纹手机矩阵:无限扩店,横扫FB/GG广告封号风险

一、 为什么需要为Shopify使用指纹手机&#xff1f;虽然Shopify不会因为你多开店而封号&#xff0c;但以下场景需要隔离环境&#xff1a;规避广告平台关联&#xff1a;这是最核心的用途。你会用Facebook、Google、TikTok等广告平台为你的Shopify店铺引流。这些广告平台严格禁止…

【Python】家庭用电数据分析Prophet预测

数据集&#xff1a;Household Electricity Consumption | Kaggle 目录 数据集简介 探索性分析 Prophet预测 Prophet模型 Prophet理念 Prophet优点 数据集简介 240000-household-electricity-consumption-records数据集包含了一个家庭6个月的用电数据&#xff0c;收集于2…

信息系统运维管理

运行维护服务指的是采用信息技术手段及方法&#xff0c;依据客户提出的服务要求&#xff0c;为其在使用信息系统过程中提出的需求提供的综合服务是信息技术服务中的一种主要类型。运行维护服务对象是指信息系统工程建设项目交付的内容&#xff0c;包括机房基础设施&#xff0c;…

系统编程完结整理以及补充

Shell&#xff08;命令与脚本语法&#xff09; 系统编程&#xff08;一&#xff09;shell的学习-CSDN博客 功能/概念语法/关键字参数/用法说明返回值/效果难易点注意事项示例/实验提示定义函数func_name() { commands; }无参数或通过 $1 $2 ... 传参函数执行参数传递、全局变…

第十四届蓝桥杯青少组C++选拔赛[2022.12.18]第二部分编程题(2、字符翻转)

参考程序&#xff1a;#include <bits/stdc.h> using namespace std;int main() {string s;cin >> s; // 读取输入字符串&#xff0c;若无输入则结束for (int i 0; i < (int)s.size(); i) {// i 从 0 开始&#xff0c;位置是 i1&#xff1b;如果 i 是奇数&#…

Django基础环境入门

熟悉过程 搭建环境&#xff0c;运行起来基础请求到服务接口跟java web对比 说明先不纠结细节先跑起来再说 1. 环境搭建 python已经安装&#xff0c;使用conda管理 django安装 django官方文档 pip install django也可以命令创建 mkdir djangotutorial django-admin startp…

408学习之c语言(结构体)

今天给大家分享C语言中结构体的几种常见使用方法&#xff0c;包括基础结构体定义与初始化&#xff0c;结构体指针的两种访问方式&#xff0c;结构体数组的遍历&#xff0c;动态内存分配与结构体使用&#xff0c;typedef简化结构体类型基础结构体定义与使用#define _CRT_SECURE_…

Navicat中设计表格默认值时,如何不设置成NULL,而是设置成空文本?

在 Navicat 中设计表时&#xff0c;将字段的默认值设置为空文本而不是 NULL 是一个非常常见的需求。操作很简单&#xff0c;但有几个细节需要注意。■ 方法一&#xff1a;通过“设计表”界面设置&#xff08;最常用&#xff09;1. 连接数据库并找到表&#xff1a;在左侧连接导…