首页 > 系统相关 >嵌入式开发学习---Linux所有命令、shell命令

嵌入式开发学习---Linux所有命令、shell命令

时间:2024-03-22 20:30:31浏览次数:39  
标签:解压 文件 shell tar --- 命令 进程 链接

Linux命令

系统维护命令

df命令
df -Th:查看磁盘使用情况

文件系统	       文件类型  大小  已使用   可用    使用比例   挂载点
Filesystem       Type    Size  Used   Avail    Use%    Mounted on
/dev/sda1        ext4    19G   6.6G   12G      38%         /

mount命令
作用:文件系统的挂载
挂载设备:sudo mount -t 设备类型 设备名称 挂载点
卸载设备:sudo umount 挂载点
注意:卸载时不要在挂载点卸载
通过网络挂载:mount -t nfs 192.168.1.100:/mnt /home
用户管理命令
添加用户:sudo adduser 用户名
删除用户并删除用户工作目录:sudo deluser --remove-home 用户名
进程管理命令
ps
ps -aux:显示系统中正在运行的进程
ps -ef:显示当前系统中运行的进程,包含PPID(父进程号)

USER       PID     %CPU   %MEM  VSZ  RSS   TTY     STAT START  TIME      COMMAND
用户	  进程号					          终端	    进程状态    开启时间   命令

在这里插入图片描述
top
动态查看系统中运行的进程
shift > : 向下翻页
shift < :向上翻页
退出:q
PR:优先级
VIRT:占用虚拟内存
RES:真正占用内存
SHR:共享内存
1.3.3修改优先级
PR=NI+20
NI 范围:-20~19 NI值越小,优先级越高
sudo renice NI值 PID :改变正在运行的进程的优先级
例如:sudo renice -5 5406
sudo nice -n NI值 启动进程的命令:以指定的优先级运行进程
例如:sudo nice -n -5 ./a.out
grep
grep:从文件中查找字符串
grep “要查找的字符串” 文件名
grep “<要查找的字符串>” 文件名:精确查找
从进程中查找a.out进程?ps -aux | grep “a.out”
grep -r “要查找的字符串” 路径:在指定目录中搜索字符串
补充
find 路径 -name “文件名” :查找xx路径下的某个文件
find /usr -name “name
发送信号kill
本质上来说kill只是用来向进程发送一个信号,至于信号是什么,是用户指定的
kill -l:查看系统中定义的信号

2:SIGINT  快捷方式:ctrl+c 结束进程
3:SIGQUIT 快捷方式:ctrl+\ 结束进程
9:SIGKILL 杀死进程
14:SIGALRM:在程序中可以定时,定时结束后产生SIGALRM信号结束进程
15:SIGTERM 结束进程 kill发信号时不加编号,默认信号为15号
18: SIGCONT 让暂停进程继续
19:SIGSTOP: 停止信号,如果发送19号信号也会结束进程
20:SIGTSTP 暂停信号 快捷方式:ctrl+z 暂停信号

kill -num PID : num:信号编号 PID:进程号
前后台进程
步骤:创建一个终端,运行进程
ctrl z:暂停进程
jobs:在当前终端查看前后台进程
bg 编号:切换到后台(&)
fg 编号:切换到前台
网络管理命令
命令
ifconfig:查看linux的ip地址
ipconfig:查看windows的ip地址
win+r打开运行窗口,输入cmd打开命令窗口,输ipconfig
ping 域名/ip地址:检查网络连通性(是否能通信)
例如:ping www.baidu.com
常见问题:
1.如果虚拟机无法ping通windows,再试一下windows ping 虚拟机,如果能ping通,说明是防火墙的问题,将防火墙关闭即可。
2.虚拟机配置网络找不到主机适配器的解决方法:
首先将虚拟机卸载,安装ccleaner软件,清理注册表;
把防火墙关闭、杀毒软件退出,右击以管理员身份运行虚拟机exe进行安装vmware
ubuntu网络配置

1.桥接模式:
1)桥接模式:编辑->虚拟网络编辑器->更改设置->选择vmnet0->桥接模式->桥接的网络适配器(根据主机的网络连接进行选择,当然选择自动也可以)->确定。
如果自动不行也可以找到对应的网络适配器。
2)虚拟机->设置->网络适配器->选择桥接模式
3)点击图标->Edit connections ->add可以添加->Ethernet->create->ipv4 settings->Method->(可以选择自动获取或手动设置)->save保存即可
如果是手动设置ip,需要点击Method里manual,手动设置ip地址
2.nat模式
1)编辑->虚拟网络编辑器->更改设置->选择vmnet8->nat模式->确定。
2)虚拟机->设置->网络适配器->选择nat模式
如果还不行就试试关闭虚拟机然后还原默认设置

文件管理系统

文件系统管理命令
用于组织和管理计算机存储的大量文件,并提供用户交互接口
文件系统分类
1)磁盘文件系统
2)网络文件系统
3)专有/虚拟文件系统
根文件系统结构

/bin:存放系统常用的命令或可执行文件(二进制文件)
/sbin:存放更多的可执行文件(二进制),包括系统管理、目录查询等关键命令文件
/boot:存放Linux内核和系统启动文件,包括Grub、lilo启动器程序
/opt: 与系统无关的安装程序
/etc: 放的一些配置文件。Linux开机自启动脚本存放在/etc/rc.d或/etc/init.d目录下。这些目录是Linux系统中用于存放启动脚本的标准目录
/dev : 存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等
/lib : 存放共享的库文件,包含许多被/bin和/sbin中程序使用的库文件
/mnt : 该目录通常用于作为被挂载的文件系统的挂载点
/proc : 存放所有标志为文件的进程,它们是通过进程号或其他的系统动态信息进行标识,例如cpuinfo文件存放CPU当前工作状态的数据
/usr : 用于存放与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。以下罗列了/usr中部分重要的目录。
/usr/lib: 库文件,系统默认搜索的库路径
/usr/include: 头文件,系统默认搜索的头文件路径

文件内容显示
1)cat 文件名:显示文件的全部内容到终端
2)head
head 文件名:默认显示前10行
head -n 文件名:显示文件前n行
3)tail:
tail文件名:默认显示后10行
tail -n 文件名:显示文件后n行
链接文件
1)文件类型7种:
b : 块设备文件 硬盘、sd /dev
s : 套接字文件 网络编程
p:管道文件 IO进程
-:普通文件 .c .h .txt .jpg
l : 软链接文件 类似于windows的快捷方式
c:字符设备文件 鼠标、键盘 /dev/input/mouse
d:目录文件
硬链接
利用linux为每个文件分配的物理编号–inode号建立连接。因此,硬链接不能跨越文件系统
软链接(符号链接)
利用文件的路径名建立链接。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性;类似于windows的快捷方式
2)命令:
创建硬链接
ln 源文件名 链接文件名
例:ln file1.c file
修改一个文件,另一个也会随之修改
创建软链接
ln -s 绝对路径/源文件 链接文件名
3)注意
硬链接:删除或移动目标文件链接依然有效,只能操作普通文件
软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性。
硬链接和软链接的区别?

1.创建链接:硬链接利用linux为每个文件分配的物理编号--inode号建立链接;软链接利用文件的路径名建立链接
2.硬链接只能操作普通文件
3.硬链接:删除或移动目标文件链接依然有效
  软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效

文件压缩和解压

1)zip命令用于将一个或多个文件压缩成一个压缩文件
unzip 命令用于将zip压缩文件进行解压
注意:
1)具有归档功能,并进行压缩
2)可以压缩文件夹,后缀为.zip
3)压缩或解压后原文件依然存在
2)gzip命令用于将一个文件进行压缩。
gunzip命令用于将gzip压缩文件进行解压。
注意:
1)只能对一个文件进行压缩,并自后缀为.gz
2)没有归档功能
3)压缩或解压后源文件不存在
举例:
$gzip a*.c //路径中有a1.c a2.c a3.c,压缩后生成a1.c.gz a2.c.gz a3.c.gz
$gunzip a1.c.gz
3)bzip2:功能、特点与gzip相同,只是后缀为.bz2
bunzip2:解压
4)tar
选项:

-x : 释放归档文件,解压
			-c : 创建一个新的归档文件,压缩
			-v : 显示归档和释放的过程信息
			-f : 用户指定归档文件的文件名,否则使用默认名称
			-j : 由tar生成归档,然后由bzip2压缩  .tar.bz2
			-z : 由tar生成归档,然后由gzip压缩   .tar.gz

注意:
1)具有归档功能,并通过选项可以进行压缩或解压
2)压缩或解压后源文件存在
3)需要写全压缩或解压的文件名格式:
格式:
tar 选项 压缩(解压)文件名 [要压缩的文件列表]
组合:
-cjf:以bz2的格式压缩文件
-czf:以gz的格式压缩文件
-xvf:解压一个压缩包,解压后压缩包依然存在
举例:
$tar -cjf file.tar.bz2 *.c
$tar -czf file.tar.gz *.c
$tar -xvf file.tar.gz

shell脚本

shell的基础概念:
概念
shell的使用方式:手动命令和脚本
shell脚本的本质:shell命令的有序集合,扩展名可以为.sh,也可以没有
shell不仅是一个应用程序还是一种脚本语言
1)编译型语言:c ,java ,c++ ,当中间出错,err直接结束,修改重新编译运行
2)解释型语言:shell python,不需要编译直接执行,当中间出粗偶,智慧在错误的地方报错,但是不会影响后面的内容;解析一条指令,执行一条指令
创建和执行
创建shell脚本:
touch test.sh
第一行写:#!/bin/bash
解释性信息,意思是使用/bin/bash来解释执行
执行方式:
1.chmod 777 test.sh :是脚本具有执行权限
./test.sh
2.sh test.sh
例如:
#!/bin/bash
touch file34.c
变量
用户自定义变量
一般用大写
进行赋值时用=,左右两边不能有空格
引用变量前面加$
位置变量

$0,与输入的命令行一样,包含脚本名字  xx.sh
$1 , $2 .... $9 :分别包含第一个到第九个命令行参数
$#:命令行参数的个数,不包含脚本文件
$@:所有命令行参数
$*:所有命令行参数

标签:解压,文件,shell,tar,---,命令,进程,链接
From: https://blog.csdn.net/qq_52407428/article/details/136949258

相关文章

  • 越野e族-综合门户
    越野e族-综合门户是越野e族公司推出的一款汽车和摩托车相关的综合性手机应用程序。汽车和摩托车作为交通工具,拥有庞大的用户群体和市场需求。随着智能手机的普及和移动互联网的发展,用户对于便捷的汽车和摩托车相关信息的需求也越来越高。传统的汽车和摩托车相关信息的获取方式......
  • How to survive in ISSCC -- 下
    上次讲了day.0到day.3的故事,现在继续更新哈哈。day.4这次ISSCC我们报了demosession,所以除了pre之外还得去演示demo,我们在demosession2,也就是pre的前一天进行演示。demosession的时间是下午5点到7点,主办方会提供一个展位和banner,展位上有桌子,展板,还有电源。作者需要自己准......
  • 01-Spark的Local模式与应用开发入门
    1Spark的local模式Spark运行模式之一,用于在本地机器上单机模拟分布式计算的环境。在local模式下,Spark会使用单个JVM进程来模拟分布式集群行为,所有Spark组件(如SparkContext、Executor等)都运行在同一个JVM进程中,不涉及集群间通信,适用本地开发、测试和调试。1.1重......
  • tree --help 最新版 v2.1.1
    tree--helpusage:tree[-acdfghilnpqrstuvxACDFJQNSUX][-Llevel[-R]][-H baseHREF]    [-Ttitle][-ofilename][-Ppattern][-Ipattern][--gitignore]    [--gitfile[=]file][--matchdirs][--metafirst][--ignore-case]    [--nolinks]......
  • 用ffmpeg命令行将图片转为JPEG XL
    多的就不说了,直接上命令:ffmpeg-iinput.jpgoutput.jxl还可以设置转换的质量(下面那个90就是保留百分之多少画质的意思)ffmpeg-iinput.jpg-q:v90output.jxljpegxl介绍JPEGXL是一种自由的图像文件格式,支持有损和无损压缩(下面简称jxl).他在保留高画质的情况......
  • Macbook air M2 16G 用cpu跑同大模型知识库文档系统(Langchain-chatchat+llama2-7B量化
    MacbookairM216G用cpu跑同大模型知识库文档系统(Langchain-chatchat+llama2-7B量化模型)经过了5个夜晚的煎熬,终于从一个完全不知大模型为何物的小白身份把知识库问答大模型搞起来,一路尝试几斤辛酸,特别记录下来踩过的各种坑,供大家借鉴!本人的目标:在我自己的Macbookair......
  • 机试重点题-2021/2023
    20215:由二叉树前々序列和中々序列得到后々序列列 #include<iostream>#include<unordered_map>usingnamespacestd;constintN=50010;intn;inta[N],b[N];//前序,中序unordered_map<int,int>p;voidbuild(intal,intar,intbl,intbr){if(al......
  • CCF软件能力认证202312-1——仓库规划
    问题描述西西艾弗岛上共有个仓库,依次编号为。每个仓库均有一个维向量的位置编码,用来表示仓库间的物流运转关系。具体来说,每个仓库均可能有一个上级仓库,满足:仓库位置编码的每一维均大于仓库位置编码的对应元素。比如编码为的仓库可以成为的上级,但不能成为的上级。如......
  • .lastUpdated:The POM for mysql:mysql-connector-java:jar:8.1.0 is missing, no depe
    描述:在IDEA中,出现该类报错,查看本地仓库中项目对应的jar包存在,却无法获取时,可能是文件中生成.lastUpdated文件或有remote.repositories文件导致的。.lastUpdated:在更新maven项目的时候,每一个jar包路径下的_remote.repositories文件都会同setting.xml中设置的仓库地址id......
  • CF938G-动态连通图最短xor路(线段树分治、并查集、线性基)
    link:https://codeforces.com/contest/938/problem/G[!Description]有一张连通的无向图简单图,三种操作:1、加边\((x,y,d)\)2、删边\((x,y)\)3、询问\(x\toy\)的路径中异或最小的路径(不一定是简单路径)保证每次操作后图是连通的\(1\leqn,m,q\leq2\times10^5\).这......