【linux】常见指令 -通配符,数据管道,重定向,压缩打包...

 

目录

前言

 基本指令

ls命令

常见选项

​编辑

 pwd命令 

cd 指令 

常见选项

touch指令

mkdir指令 

常见选项 

rm 指令

常见选项

 man指令

cp指令 

常用选项:

mv指令 

常用选项 

nano指令 

  如何写入且执行文件? 

 cat指令

 常用选项

more指令 

less指令 

head指令 

常用选项:

tail指令

常用选项

head 和 tail 如何结合使用?

时间相关的指令

 时间戳

find指令

常用选项

grep指令 

常用选项

zip/unzip指令 

常用选项

 tar指令

常用选项

 bc指令

uname –r指令

常用选项

拓展

重新认识指令

.和.. ,/和\

which指令

alias指令 

echo指令

 *  通配符

 > 和 >> ,<指令

输出重定向  

​编辑追加重定向

​编辑输入重定向

 | 数据传输管道


 

前言

像C语言有句C生万物,linux也有一句话,一切皆文件

linux文件是以树状结构存储

 基本指令

ls命令

对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息(罗列出当前路径下的文件名)

 

常见选项

-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

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

-l 列出文件的详细信息。

 pwd命令 

显示用户当前所在的目录

 

cd 指令 

Linux系统中,磁盘上的文件和目录被组成一棵目录树每个节点都是目录或文件。

 

功能:进入指定的“文件夹”  

常见选项

cd .. :         返回上级目录

cd    :      /home/litao/linux/ : 绝对路径

cd    :     ../day02/ : 相对路径

cd ~ :        进入用户家目

cd -  :        返回最近访问目录 

touch指令

新建一个不存在的文件(在当前目录下)。

 

mkdir指令 

在当前路径下,创建一个新的“文件夹”

常见选项 

-p --parents  即一次可以建立多个目录;

rm 指令

删除空目录

常见选项

-r : 递归式删除非空目录 (删除目录及其下所有文件 )。

-f : 不论文件是何属性,不会询问确定。直接删除。

-i  :删除前逐一询问确认。

 man指令

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。

面手册分为8章

1 是普通的命令

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

3 是库函数,如printf,fread

4是特殊文件,也就是/dev下的各种设备文件

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

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

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

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

cp指令 

cp [选项] 源文件或目录 目标文件或目录

复制文件或目录

常用选项:

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

-i 覆盖文件之前先询问用户

-r 递归处理,将指定目录下的文件与子目录一并处理

mv指令 

可以用来移动文件;

1.重命名: mv <旧文件名> <新文件名>

mv命令将文件重命名或将其移至一个新的 目录中。即将文件重命名为一个新的文件名

2.移动文件夹/剪切文件夹 

mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的 目录中

3.剪切的同时也重命名 

常用选项 

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

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

nano指令 

对目标文件进行写入数据

  如何写入且执行文件? 

第一步: nano 源文件

第二步 : ctrl x  ->y ->回车

第三步: gcc 源文件

第四步: ./a.out

 

 cat指令

查看目标文件的内容

 常用选项

-b 对非空输出行编号

-n 对输出的所有行编号

-s 不输出多行空行

 

more指令 

more命令,功能类似 cat

 

less指令 

less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前 不会加载整个文件。less可以查看大文本

head指令 

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行

常用选项:

-n 显示的行数  

tail指令

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件 

常用选项

-f 循环读取

-n 显示行数  

head 和 tail 如何结合使用?

假如我们有100行数据,可以head -n50 获取前五十行数据,然后存到一个临时文件中,在tail -n1 得到该数据 

方法1 head -n50 test > tmp #将前50行装入临时文件tmp tail -n1 tmp #得到

方法2 head -n50 test | tail -n1

时间相关的指令

date 指定格式显示时间: date +%Y:%m:%d

中间符号是自定义格式

%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 

 时间戳

date +%s

find指令

用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)

常用选项

 -name   按照文件名查找文件 

grep指令 

在文件中搜索字符串,将找到的行打印出来

常用选项

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

-n :顺便输出行号

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

 

zip/unzip指令 

将目录或文件压缩成zip格式

将压缩文件解压

常用选项

 -r 递 归处理,将指定目录下的所有文件和子目录一并处理 

 tar指令

 打包/解包,不打开它,直接看内容

常用选项

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

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

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

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

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

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

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

-C : 解压到指定目录 ;

该指令可以复合用; 

 组合使用: 打包 指令:tar -czf 【包名】.tgz 【文件】;可以用 cvzf 只是显示打包过程;

                    解包 指令: tar -xzf  【包名】.tgz  -C 【路径】;与上同理

 bc指令

可以很方便的进行浮点运算 

uname –r指令

uname用来获取电脑和操作系统的相关信息

常用选项

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

拓展

重新认识指令

指令的本质就是程序,指令 程序 可执行程序都是一回事 ;

安装和卸载就是把可执行程序拷贝/删除到系统路径下;

桌面也是文件夹,任何一个用户首次登陆,所处路径都是自己的家目录;

路径具有唯一性,访问任何文件必须先找到这个文件;

.和.. ,/和\

. :表示当前路径;

.. : 表示上层路径;

/ :是linux下的路径分隔符;

\ : 是windows下的路径分隔符

which指令

打印出我们所指的命令在系统中的路径;

alias指令 

给其他命令起一个别名(前期不介意使用)

echo指令

可以在显示器上显示一段文字,起到提示的作用

 

 *  通配符

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

 

 > 和 >> ,<指令

> :   输出重定向,会将原来的文件覆盖。则创建一个文件。

>> : 追加,追加到文件的末尾,不会覆盖。则创建一个文件。

< : 输入重定向; 本来应该从键盘文件中读取,但是会从文件中读取;

输出重定向  

追加重定向

输入重定向

 | 数据传输管道

表示管道,上一条命令的输出,作为下一条命令参数,通常用来过滤/汇总数据。

语法格式:  command1 |  command2  [ | command3 … ];

通常和find 、grep、wc等命令组合在一起使用 。

以上便是【linux】 基本指令简单的讲解,不足之处还望指点便以改正。 

 

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

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

相关文章

RPA超级自动化、AIGC大模型、低代码、流程挖掘四大热门峰会火热报名中!

由企智未来科技&#xff08;RPA中国、LowCode低码时代、AIGC开放社区&#xff09;主办的第四届「ISIG中国产业智能大会」将于2024年3月16日在上海召开&#xff0c;本届主题为“与科技共赢&#xff0c;与产业共进”。在此次大会中&#xff0c;我们将设立RPA超自动化、低代码/零代…

【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示

学习《OpenCV应用开发&#xff1a;入门、进阶与工程化实践》一书 做真正的OpenCV开发者&#xff0c;从入门到入职&#xff0c;一步到位&#xff01; OpenCV开发痛点 传统图像算法开发最好的开源解决方案是OpenCV视觉库&#xff0c;但是OpenCV中收录了2000的传统算法&#xf…

鸿蒙 渲染控制

前提&#xff1a;基于官网3.1/4.0文档。参考官网文档 基于Android开发体系来进行比较和思考。&#xff08;或有偏颇&#xff0c;自行斟酌&#xff09; 1.概念 ArkUI通过自定义组件的build()函数和builder装饰器中的声明式UI描述语句构建相应的UI。在声明式描述语句中开发者除了…

Linux笔记--硬链接与软链接

一、硬链接 1.inode和block 文件包含两部分数据&#xff1a;文件属性和实际内容&#xff0c;属性放在inode中&#xff0c;实际内容放在data block中。还有个超级区块&#xff08;superblock&#xff09;记录整个文件系统的整体信息&#xff0c;包括inode和block的总量&#x…

基于huggingface加载openai/clip-vit-large-patch14-336视觉模型demo

文章目录 引言一、模型加载二、huggingface梯度更新使用三、图像处理四、模型推理五、整体代码总结 引言 本文介绍如何使用huggingface加载视觉模型openai/clip-vit-large-patch14-336&#xff0c;我之所以记录此方法源于现有大模型基本采用huggingface库来加载视觉模型和大语…

【办公类-22-10】周计划系列(5-2)“周计划-02源文件docx读取5天“ (2024年调整版本)

背景需求 承接上文&#xff0c;继续制作周计划 【办公类-22-09】周计划系列&#xff08;5-1&#xff09;“周计划-01源文件统一名称“ &#xff08;2024年调整版本&#xff09;-CSDN博客文章浏览阅读76次。【办公类-22-09】周计划系列&#xff08;5-1&#xff09;“周计划-01…

LabVIEW燃料电池船舶电力推进监控系统

LabVIEW燃料电池船舶电力推进监控系统 随着全球经济一体化的推进&#xff0c;航运业的发展显得尤为重要&#xff0c;大约80%的世界贸易依靠海上运输实现。传统的船舶推进系统主要依赖于柴油机&#xff0c;这不仅耗能高&#xff0c;而且排放严重&#xff0c;对资源和环境的影响…

2.25 day5 QT

闹钟 .h代码 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> #include <QTime> #include <QTextToSpeech>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJ…

【Linux操作系统】死锁 | 预防、避免死锁

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;Linux系列专栏&#xff1a;Linux基础 &#x1f525; 给大家…

Codeforces Round 881 (Div. 3) F2. Omsk Metro (hard version)(倍增+最大子段和)

原题链接&#xff1a;F2. Omsk Metro (hard version) 题目大意&#xff1a; 最初开始时&#xff0c;你有一个根节点 1 1 1 且权值为 1 1 1 。 接下来会有 n n n 个操作&#xff0c;每次操作按照如下格式给出&#xff1a; 设操作开始前节点总数为 c n t cnt cnt&#xff1…

小型内衣裤洗衣机哪个牌子好?四大顶尖内衣洗衣机测评分享

要知道&#xff0c;内衣裤可能会残留我们身体分泌的尿液&#xff0c;或者是没有擦干净的便便&#xff0c;以及其他的一些分泌物&#xff0c;据科学家研究发现&#xff0c;内衣裤是含有很多细菌和病毒的地方&#xff0c;如果将内衣裤和衣服放在一起洗&#xff0c;导致这些细菌附…

golang学习1,dea的golang-1.22.0

参考&#xff1a;使用IDEA配置GO的开发环境备忘录-CSDN博客 1.下载All releases - The Go Programming Language (google.cn) 2.直接next 3.window环境变量配置 4.idea的go插件安装 5.新建go项目找不到jdk解决 https://blog.csdn.net/ouyang111222/article/details/1361657…

MySQL数据库集群技术主从复制 一主一从详细讲解

集群技术 集群概述 MySQL复制技术 集群目的 负载均衡 解决高并发 高可用HA 服务可用性 远程灾备 数据有效性 类型 一主一从 一主双从 双主双从 原理 概念 在主库上把数据更改&#xff08;DDL DML DCL&#xff09;记录到二进制日志&#xff08;Binary Log&#xff09;中…

AngularJS安装版本问题

一、安装 Angular CLI 脚手架安装命令&#xff1a; npm install -g angular/cli 在安装前请确保自己安装NodeJS环境版本为V18及以上&#xff0c;否则会因node版本问题导致项目无法正常运行。 脚手架安装后&#xff0c;已提示了当前node版本必须为18.13.0或大于20.9.0版本&…

Linux网卡安装好后自启动

Linux系统配置网卡Wifi博客 https://developer.aliyun.com/article/704878 1、插入网卡iwconfig&#xff0c;查看id是wlxec607385c827 2、创建一个脚本文件 创建一个脚本文件&#xff0c;比如 /usr/local/bin/start_wifi.sh&#xff0c;并添加以下内容&#xff0c;id请根据自…

多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型

多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型 目录 多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.多维时序 | Matlab实现GRU-MATT门控循环单元融…

【Java核心能力】为什么不建议在高并发场景下使用 synchronized?

欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;及时收到 AI 前沿项目工具及新技术的推送&#xff01; 在我后台回复 「资料」 可领取编程高频电子书&#xff01; 在我后台回复「面试」可领取硬核面试笔记&#xff01; 文章导读地址…

关注国外开源技术文档的中文版的朋友进来看一下

是否还在为技术文档全是英文而烦恼&#xff1f; 是否还在为国外网站访问慢甚至需要翻墙才能查看上面的文档而烦恼&#xff1f; 是否还在为翻译文档晦涩难懂、无法和作者交流而烦恼&#xff1f; 我创建了一个分享技术文档的网站&#xff0c;还在逐步完善&#xff0c;小伙…

大型电商日志离线分析系统(一)

一、项目需求分析 某大型网站日志离线分析系统 1.1 概述 该部分的主要目标就是描述本次项目最终七个分析模块的页面展示。 1.2 工作流 在我们的demo展示中&#xff0c;我们使用jqueryecharts的方式调用程序后台提供的rest api接口&#xff0c;获取json数据&#xff0c;然后…

【PostgreSQL】Windows安装PostgreSQL数据库图文详细教程

Windows安装PostgreSQL数据库图文详细教程 一、前言二、PostgreSQL简介三、软件下载四、安装步骤4.1 安装向导4.2 选择安装目录4.3 选择组件4.4 选择数据存放目录4.5 选择密码4.6 选择端口号4.7 等待安装完成4.8 取消勾选&#xff0c;安装完成 五、启动教程5.1 搜索pgAdmin4&am…