常用Linux命令详细总结
一、文档编辑、过滤、查看命令
1、cp 复制文件和目录
-a 复制文件并保持文件属性
-d 若源文件为链接文件,则复制链接文件属性而非文件本身
-i 覆盖文件前提示,如果不要提示,在命令前加上\
-r 递归复制,通常用于目录的复制
-f 强制复制,
-p 连同文件的属性一起复制过去,而非使用默认属性
-u 若目标文件存在,则目标文件比源文件旧时才复制
例子:cp oldboy.txt /tmp/ 命令 参数 源文件 目标路径
cp –r /date /tmp
2、echo显示一行文本
-e :对反斜杠转义的解释
echo显示颜色:
语法:echo -e “\033[字背景颜色;文字颜色m字符串\033[0m”
Note:文字颜色后边有一个m
文字颜色:30---37
30:黑色。31:红色。32:绿色。33:黄色。34:蓝色。35:紫色
36:天蓝色。37:白色
背景颜色:40---47
40:黑色。41:红色。42:绿色。43:换色。44:蓝色。
45:紫色。46:天蓝色。47:白色
最后边控制选项说明:
0m:关闭所有属性。1m:设置高亮度
2m:下划线。5m:闪烁。7m:反显
8m:消隐。
3、mv 移动文件、重命名文件 不加参数也可以移动文件或者目录
移动文件: mv 源文件名 目标移动路径
-i 如果目的文件已存在,询问是否覆盖
-f 强制执行,不会询问
-u 若目的文件存在,则比源文件新,才会移动
重命名:mv 原文件名 修改后的名字 例如:mv file{4,6}.txt
多文件移动:mv 文件名 ……移动到的目录,最后一个参数必须是目录/
移动时源文件后边不要多斜线
例如:mv /date /root/
4、ls :显示目录、文件清单
选项:
-a:显示所有,包括隐藏文件目录
-l:以长格式显示,就是把详细信息列出来 简写方式:ll
-h:以人类已读的方式显示,人性化
-d:只显示目录
-F:为目录添加/
-r:反向排序
-t: 按照修改时间排序
-i :显示查找inode结点
生产案例:查找最近更新的文件 ls -lrt
5、rm 删除文件或者目录 此命令较危险,不能乱用,一般不用。
删除普通文件不加-r (递归删除) 删除目录则需要加-r
-f force 强制删除
-r –R recursive 递归删除,
正确删除文件的方法:
1、使用mv命令移动到/tmp (回收站)代替删除
2、cd 目的目录 ;find . –type f(d) –name ‘’|xargs rm 要到文件目录下去删,不能从根开始,
6、pwd print working directory 打印当前动作目录,就是查看当前在那个目录下
7、find 查找文件(支持通配符)
xargs 从标准输入(管道或者stdin 输入重定向)获取数据,并将数据转换成命令行的参数
输入重定向:多行输入变成单行输出
-i 后面是{ }
-I 后面是[ ]
-n 指定每个命令行最多的参数
支持使用文件权限Mode,文件属主属组,进行查找
8、touch 创建新文件或者更新时间戳,例如创建文件 touch /data/shiyouyuan.txt
创建文件也可以用cd进入目录,在touch 创建
创建多个文件方法:例如touch stu{1……1000}.txt,就会创建1.txt-1000.txt
touch 文件名 如果文件存在就更新时间戳,如果文件不存在就创建时间戳
vi 相当于windows的记事本,vim 高级编辑器
vi 要编辑的文件名 进入后按i进入insert状态,就可以输入内容了
输入完成后按esc,退回命令模式,然后输入:wq保持并退出
echo 命令,重定向
输入文本内容还可以这样做:echo 'my name is syy'>shiyouyuan.txt
如果文件不存在会创建文件,如果存在会清空、覆盖之前的内容,在插入新的内容,
在内容后面加>>(两个>)就会在原来内容的末尾添加内容,不会清空之前的内容。
还有一个较复杂不常用的类似命令printf
9、cat 查看文件内容 例如:cat shiyouyuan.txt 也可以输入内容,命令:cat >文件名 输入内容,按ctrl+c 或者ctrl+d两边结束输入
cat 的多行追加能力 内容中间用EOF 圈起来,可以用其他的,但是要完全是一对。
cat >>/data/shiyouyuan.txt 0<< EOF
I am studying linux
I am studying linux
I am studying linux
EOF
特殊符号:
>或1> 输出重定向:把前面的输出的东西输入到后边的文件中,会清除文件原有内容
>>或1>> 追加重定向:把前面输出的东西追加到后边的文件尾部,不会清除文件原有内容
0<或< 输入重定向:输入重定向用于改变命令的输入,后面指定输入内容,前面跟文件名
例如:echo 1 2 3 4 >shi.txt
cat shi.txt
1 2 3 4
xargs –n 2 <shi.txt
显示的结果就是
1 2
3 4
相当于把shi.txt交给xargs –n这个命令处理
0<<或<< 追加输入重定向:后跟字符串,用来表示“输入结束”,也可用ctrl +d 来结束输入
例如:cat >>/data/shiyouyuan.txt 0<< EOF
I am studying linux
I am studying linux
I am studying linux
EOF
2> 错误重定向:把错误信息输入到后边的文件中,会删除文件的原有内容
2>>错误追加重定向:把错误信息追加到后边的文件中,不会删除元件的原有内容
2>&1标准正常输出和标准错误输出一样,就相当于跟屁虫一样,1放到哪儿,2就放到哪儿
例如:echo ‘shi’ >a.txt 2>&1
说明:
1、箭头的指向就是数据的流向
2、数字说明:
1、标准输入stdin :代码为0 使用<或<<,数据流向从右往左
2、标准正常输出stdout :代码为1 ,使用>或>>,数据流向从左往右
3、标准错误输出stderr :代码为2 使用2>或2>>
关于find的企业面试题:http://oldboy.blog.51cto.com/2561410/1650380
|管道命令,键盘上按shift + \
相当于把前面命令的执行结果传送给后边的命令继续执行
.(一个点)当前目录,..(两个点)上级目录
10、grep文本过滤工具,相当于筛子一样,是一个管道命令,一般配合正则表达式和通配符使用
用法:grep 选项 文件
选项:
-v :排除选项,
-i :不区分大小写
-n :对匹配到的内容显示行号
-color=auto 对匹配到的内容高亮显示
-B :除了显示匹配到一行之外,并显示改行之前的n行
-A :除了显示匹配到的一行之外,并显示该行之后的n行
-C :除了显示匹配到的一行之外,并显示该行的前后各n行
11、head 读取文件的前n行,默认为前10行,
用法:head -n number file
例:head -n 6 123.txt 意思就是读取123.txt这个文件的前6行
12、tail读取文件的后n 行,与head是相对的,用法也是一样的
13、tree :目录树
如果linux上没有这个命令的话,可以使用yum -y install tree 进行安装
选项:
-a :显示所有文件,包括隐藏文件,隐藏文件以 “.”开头
-d :只显示目录
-L :层级,显示指定的层级:tree -L 1 tree -dL 2 显示两级目录
-f :为每个文件显示完整的路径,
-i:不显示压痕线,就是路径前面的横线
-F:区分文件和目录,目录后面有一根斜线
14、mkdir 创建目录 (make directory)
用法:mkdir 选项 需要创建的目录名称
选项:
-m :设置创建目录的权限(一般在后面用chmod设置)
-p :递归创建目录,例如可以mkdir -p test/a/b
-v :显示创建目录的过程,mkdir -pv test/a/b
例子:可以采用连续创建目录,如:mkdir test/dir{1……10}
创建出来的目录就是dir1 dir2…dir10
创建目录及多级子目录 mkdir test/{1..3}/{4..5}利用乘法分配律创建,
二、linux文件、目录属性及权限
389379 drwxr-xr-x. 22 root root 4096 Apr 5 02:52 var
inode节点号 文件的类型、权限 硬链接次数 属主 属组 文件大小 创建时间 文件名
1、indode节点和block
inode,中文意思是索引节点(index node),在每个linux存储设备或存储设备的分区被格式化文件系统后,一般生成两部分:inode和block,
block是实际存储数据的,inode是存储文件属性等信息,包含指向文件实体的指针,但是,inode唯独不包含文件名。查看inode的总量和使用量:inode -i。如果某个磁盘无法放文件,但实际还有空间,这个时候就可能是inode节点满了。
inoded的大小在分区被格式化创建文件系统后就无法更改了,在创建文件系统前可以更改,但实际用不到
inode 号相同的文件互为硬链接文件
一个文件创建后,至少要占用一个inode和block
block大小一般有1k、2k、4k几种,
例如:一个1000k的文件,block的大小为4k,那么就会占用250各block,如果block为1k,就要占用1000各block,消耗I/O分别为250次和1000次(读取一个block就会消耗一次磁盘I/O),但是如果block为4k,但是文件为1k,其余的3k就浪费了,所以block的大小应该根据需求设计。
2、其中drwxr-xr-x为文件的的类型和权限
第一位为文件的类型;后九尾为文件的权限
文件的类型一共有七类:
1、d :代表文件类型为目录
2、f或者-:代表文件类型为普通文件
3、s :代表文件类型是套接字
4、b :代表文件类型是块设备
5、l :代表文件类型是链接文件
6、p :代表文件类型是管道文件
7、c :代表文件类型是字符设备文件
文件权限最后一位后面有一个点(.)适合selinux相关的,实际中没有什么用
1、stat 查看文件或者文件系统的状态
选项:
-L:显示文件链接
-f:显示文件系统状态而不是文件状态
-c:使用指定的格式文件
2、diff比较两个文件的差异
选项:
-q:只在比较的两个文件不同时报告
-s:两个文件相同时报告
-C,-c:复制上下文输出的N行,默认三行
-U,-u:统一上下文的输出NUM(默认3)行,将两个文件的的前N行变为相同
三、Linux三剑客:sed流编辑器 stream editor
是一个行编辑器,一次只能处理一行文本。
用法:
Sed 选项………scropt inputfile
选项:
-n :不输出模式中的内容至屏幕
-e :多点编辑
-f :脚本文件路径,从指定文件读取脚本命令
-r :使用扩展的正则表达式
-i :原处编辑(一定要测试正确才用,慎用)
地址定界
(1)
不给地址,对全文进行 处理
(2)单地址
a:指定的行
/pattren/:被次模式所能匹配到的每一行
(3)地址范围:
#,#
#,+#
/pat1/ ,/pat2/
#,/pat1/
编辑命令
-d :删除命令
eg;sed ‘/^$/d’/etc/fstab 删除空白行
sed ‘/^#/d’/etc/fstab 删除以#号开头的行
sed ‘/1,4d/’/etc/fstabse
p :显示模式空间中的内容,会显示两行,跟-n 可以只显示一行
eg ; sed ‘/^UUID/p’/etc/fstab
a \‘text’:在行后面追加文本,支持多行\n追加
sed '/^#/a \# hello world' /tmp/httpd.conf
i \在行后面插入文本,支持多行\n多行插入
c \text 替换行为单行或多行文本
w /path/to/somefile :保存模式空间中匹配到的内容至指定文件中
sed '/^#/w /tmp/1.txt' /tmp/httpd.conf
r :/path/from/somefile:读取指定文件的文本流至指定文件中
=:为模式空间中行打印行号
!:取反,对没有匹配到的行之外的所有行进行操作
s/// :查找替换,支持其他分隔符如:s@@@,s###
替换标记:
g:全局替换
i :忽略字符大小写
P :显示替换成功的行
w :/path/to/somefile,将替换成功的结果保存至指定文件中
sed 's/^#/789/g' /tmp/httpd.conf
sed 's/^#/&syy/g' /tmp/httpd.conf 后项引用
高级编辑命令
h:用模式空间的内容覆盖至保持空间中,源源保持空间中内容将被清除
H:把模式空间内容追加至保持空间中
g:从保持空间中取出看数据覆盖至模式空间
G;从保持空间取出内容追加至模式空间
x;把模式空间的内容与保持空间中的内容进行互换
n :读取匹配到的行下一行至模式空间
N :追加匹配到的行的下一行至模式空间
D :删除多行模式空间中行
d :删除模式空间中的行
eg:sed –n ‘n;p’ file 显示偶数行
sed ‘n;d’ file 显示奇数行
sed ‘1!G;h ;$!d’ file 逆向显示文件内容
sed ‘$!N;$!D’ FIEL 取出文件后两行
sed ‘$!d’ fle 取出文件最后一行
步进:~
显示所有奇数行 sed ‘1~2p’ /tmp/httpd.conf
显示所有偶数行 sed ‘2~2p’ /tmp/httpd.conf
sed ‘1~2p’ 表示从1 开始,步进为2,显示奇数行,偶数行同理。
四、杂类(网络、系统、文件上传下载)
1、dmesg 打印或控制内核环缓冲区,默认显示所有消息
选项:
-K:显示内核消息、信息
2、rs sz上传下载文件,依赖于lrzsz这个软件包
3、traceroute 追踪路由
选项:
-4:使用IPv4
-6:使用IPv6
-T:使用TCP协议,默认80端口
-I:使用ICMP协议
-p:端口
-i:指定网卡出口
4、uptime显示系统运行时间及负载。
5、nmap 网络探测工具和安全/端口扫描器
6、mpstat 报告处理器相关统计
7、nc 一款强大的网络工具
选项:
-4:使用IPV4
-6使用IPV6
-u:使用UDP协议
-U:使用Unix套接字
-h:目标地址
-p:目标端口
8、tcpdump 命令行抓包工具
选项:
-A:用ASCII格式打印每个包(减去它的链接级别头)。方便捕捉网页。
-c:接受多个包后退出
9、Auditd工具:是Linux中一个审计守护进程,其负责将审计记录写入磁盘,其中包含如下工具:
auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等。
/etc/audit/audit.rules : 记录审计规则的文件。
aureport : 查看和生成审计报告的工具。
ausearch : 查找审计事件的工具
auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中。
autrace : 一个用于跟踪进程的命令。
/etc/audit/auditd.conf : auditd工具的配置文件。
使用auditd可以用来监控文件或者目录是否被修改过。可以追踪进程。
相关文章:

常用Linux命令详细总结
一、文档编辑、过滤、查看命令 1、cp 复制文件和目录 -a 复制文件并保持文件属性 -d 若源文件为链接文件,则复制链接文件属性而非文件本身 -i 覆盖文件前提示,如果不要提示,在命令前加上\ -r 递归复制,通常用于目录的复制 …...

基于SpringBoot的竹宣非遗宣传网站
摘要 随着互联网的普及和数字化时代的到来,竹编等非物质文化遗产的保护与传承面临新的机遇和挑战。该研究旨在使用SpringBoot后端框架与Vue前端框架,构建一个竹编非遗宣传网站,通过丰富的展示形式和交互体验,提升公众对竹编这一非…...

怎么清理服务器的C盘?
有时候我们经常会遇到C盘被占满的情况,C盘被占满的原因有很多,下面我们就来分析下有可能导致C盘占满的原因: 第一种情况:中毒 打开服务器任务管理器选择进程,并且勾选显示所有用户的进程,我们可以点击映像…...

动态规划----股票买卖问题(详解)
目录 一.买卖股票的最佳时机: 二.买卖股票的最佳时机含冷冻期: 三.买卖股票的最佳时期含⼿续费: 四.买卖股票的最佳时机III: 五.买卖股票的最佳时机IV: 买卖股票的最佳时机问题介绍:动态规划买卖股票的最佳时机是一个经典的…...

Unity射线检测不到MeshCollider的原因
当我们构建的模型是单面模型时,就会出现射线检测不到MeshCollider的问题,对于渲染,我们可以Cull Off来实现双面渲染,而在射线检测时,Unity提供了一个API来控制是否检测背面:Physics.queriesHitBackfaces 案…...

ssrf初步
一,简介 全称:Server-Side Request Forgery(中文:服务器端请求伪造) 攻击者从服务端发起请求,让服务器连接任意外部系统,从而泄露敏感数据。主要利用各种协议的请求伪造,例如php协…...

linux 安装 mangodb 并设置服务开机自启
1、下载 wget http://mosquitto.org/files/source/mosquitto-1.6.8.tar.gz 2、解压 tar -zxvf mosquitto-1.6.8.tar.gz 3、编译安装cd mosquitto-1.6.8 make sudo make install4、在当前目录。进入mosquitto服务文件存放的文件夹 cd service/systemd可以看到3个文件 点击read…...

Virtualbox7.0.10+Ubuntu20.04网络配置
虚拟机部署在服务器上时,需要进行网络配置,使虚拟机和服务器在同网段下,以保证内网的终端可以访问到虚拟机 1. 设置虚拟机 打开虚拟机设置,选择“网络”,将网卡设为桥接网卡 注:设置前,需要先…...

设计模式之服务定位器模式
想象一下,你的Java应用是一座庞大的迷宫,里面藏着无数宝贵的服务宝藏,而你正需要一张精确的藏宝图来指引方向,迅速找到并利用这些宝藏。服务定位器模式,正是这样一张神奇的地图,它帮你动态定位并获取应用中…...

冯喜运:5.12黄金回撤继续上涨,下周原油走势分析
【黄金消息面分析】:本周,黄金市场迎来了自4月中旬以来的最佳单周表现。周五(3月9日),金价攀升至2360.54美元/盎司,涨幅0.62%,而纽约商品交易所6月交割的黄金期货价格上涨1.5%,收报2…...

JavaEE企业级开发中常用的JDK7和JDK8的时间类
JDK7时间类 全世界的时间有一个统一的计算标准 在同一条经线上的时间是一样的 格林威治时间 简称GMT 计算核心 地球自转一天是24小时 太阳直射正好是12小时 但是误差太大 现在用原子钟来代替 用铯原子震动的频率来计算时间,作为世界的标准时间UTC 中国标准时间…...

leetcode 2316.统计无向图中无法互相到达点对数
思路:并查集 其实就是连通块的一个变形题目,一般的连通块题目要我们求的是连通个数,或者能不能到达,这里反过来问了。 首先,我们用dfs也是可以做到的,在dfs中统计每一个连通块的个数,然后用乘…...

WPS二次开发系列:如何使用WPS返回的FileUri
作者持续关注 WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397) 目录 什么是FileUri 在SDK中的使用场景 打开文档时…...

python删除一个文件夹所有文件
在Python中,可以使用os模块来删除一个文件夹中的所有文件,但保留文件夹本身。以下是一个简单的例子: import osdef delete_files_in_folder(folder_path):for filename in os.listdir(folder_path):file_path os.path.join(folder_path, fi…...

overflow:hidden对解决外边距塌陷的个人理解
外边距塌陷: 子元素的上外边距大于父元素的上外边距,导致边距折叠,取两者之间最大值,即子元素外边距,导致父元素上外边距失效。 解决办法:在父元素样式添加overflow:hidden;或者border:1px solid black;(不…...

【linux软件基础知识】- 文件的概念:Linux 中的文件
Linux 中的文件 在 Linux 中,文件是存储在存储设备(例如硬盘驱动器或固态驱动器)上的数据项的集合。 文件被组织为字节序列,并由文件系统中的唯一名称来标识。 以下是 Linux 中文件的一些关键特征: 字节序列:Linux 中的文件被视为字节序列。 每个字节可以表示一个字符…...
Context capture/Pix4Dmapper/AutoCAD/CASS/EPS软件的安装流程与使用方法;土方量计算;无人机摄影测量数据处理
目录 专题一 无人机摄影测量技术应用现状及其发展 专题二 基本原理和关键技术讲解 专题三 无人机影像外业数据获取 专题四 数据处理环境建立与软件熟悉 专题五 GNSS数据土方量计算 专题六 基于无人机影像数据的正射影像制作 专题七 基于无人机影像数据的三维模型制作 专…...

算法系列之堆排序实践哪家强
1.概念 堆排序是一种树形选择排序,是对简单选择排序的有效改进和优化。 堆(heap),这里所说的堆是数据结构中的堆(对应于算法),而不是内存模型中的堆(数据存储形式,还比如:栈&#…...

01-win10安装Qt5
Qt5安装教程 下载Qt5官网下载(下载很慢)镜像网站下载(有些版本没有资源)迅雷下载(推荐)百度网盘下载(推荐)安装Qt5下载Qt5 官网下载(下载很慢) 【注意】:官网下载非常慢,没有镜像下载时常20+ Qt 官网有一个专门的资源下载网站,所有的开发环境和相关工具都可以从这…...

mybatis使用及配置相关,仅做个人记录
在spring-boot项目中mybatis的配置文件在yml文件中,并没有mybatisconfig.xml文件 yml文件中配置:(来源:https://blog.51cto.com/u_16213723/8747999) mybatis:# XML文件路径,可配置多个,逗号分…...

【STM32 |新建一个工程】基于标准库(库函数)新建工程
目录 STM32开发方式 库函数文件夹 建工程步骤 库函数工程建立 建立工程总结 STM32开发方式 目前stm32的开发方式主要有基于寄存器的方式、基于标准库的方式(库函数的方式)、基于HAL库的方式基于库函数的方式是使用ST官方提供的封装好的函数&…...

C#利用ClearScript执行Javascript脚本
1,新建.netframework winform工程 2,打开nuget程序包管理界面,安装Microsoft.ClearScript.V8,Microsoft.ClearScript.V8.Native.win-x64. 3,编写Javascript脚本,另存为demo.js function testFunc(t) {return t "…...

住宅ip与数据中心ip代理的区别是什么
代理通常意味着“替代”。它是用户设备和目标服务器之间的中介,允许在不同的IP地址下上网。代理ip根据来源分类可分住宅ip与数据中心ip,二者之间区别是什么呢? 住宅ip是由互联网服务提供商(ISP)提供给家庭的IP地址。出于这个原因,…...

【计算机网络】数据链路层的功能
数据链路层的基本功能: 封装成帧透明传输差错检测 数据链路层使用的信道主要有两种 点对点信道——PPP协议广播信道——CSMA/CD协议(有线局域网)、CSMA/CA协议(无线局域网) 数据链路层所处的地位 从图中可以看出,数据从主机H1送到主机H2需要在路径中…...

信号线电路串联电阻
简介 两芯片端串联一个电阻,在靠近发送端或接收端。 一般串联的是0Ω, 22Ω, 33Ω的电阻,也可能更大。 目的 1.解决信号反射问题,吸收反射。 问题如下: pcb单端阻抗过大,而接收端是cmos输入,使得接收端…...

手机App防沉迷系统-算法
import java.util.*; public class Main{public static void main(String[] args){Scanner innew Scanner(System.in);int nInteger.parseInt(in.nextLine());//已注册app列表List<Log> listnew ArrayList<>();for(int k0;k<n;k){String[] strin.nextLine().spl…...

day3_prefixSum
一、前缀和技巧 重点 前缀和技巧适用于快速、频繁地计算一个索引区间内的元素之和 个人理解;预计算,空间换时间 1.(一维数组的前缀和)303区域和检索-数组不可变 获取闭区间值 [left,right] -> preSum[right 1] - preSum[left],其中preSum[right…...

Redis过期删除策略和内存淘汰策略有什么区别?
Redis过期删除策略和内存淘汰策略有什么区别? 前言过期删除策略如何设置过期时间?如何判定 key 已过期了?过期删除策略有哪些?Redis 过期删除策略是什么? 内存淘汰策略如何设置 Redis 最大运行内存?Redis 内…...

【计算机网络】物理层传输介质 习题3
双绞线是用两根绝缘导线绞合而成的,绞合的目的是( )。 A.减少干扰 B.提高传输速度 C.增大传输距离 D.增大抗拉强度 在电缆中采用屏蔽技术带来的好处主要是( ) A.减少信号衰减 B. 减少电磁干扰辐射 C.减少物理损坏 D. 减少电缆的阻抗 利用一根同轴电缆互连主机构成…...

智能座舱语音助手产品方案
一、用户调研与痛点分析 1.目标用户分析 用户画像 性别女性年龄50地域2-3线城市职业退休或退居二线教育中专、 大专、 本科财务家庭财务管理者爱好享受生活、 照顾家庭标签有闲有小钱二、产品定位与卖点提炼 购车目的 愉悦自我, 专属于自己的座驾: 家…...