首页 > 系统相关 >C高级(2)linux命令

C高级(2)linux命令

时间:2024-08-02 09:52:59浏览次数:17  
标签:解压 文件 高级 文件系统 命令 linux 进程 链接

目录

1系统维护命令

1.1man

1.2su

1.3sudo

1.4df命令

1.5mount命令

2用户管理命令

3进程管理命令

3.1ps

3.2top

3.3修改优先级

3.4grep命令

3.5kill命令

3.6前后台切换命令

4网络管理命令

4.1命令

5文件系统管理命令

5.1文件系统分类

5.2根文件系统结构

5.3文件内容显示

5.4链接文件

5.5文件压缩和解压


1系统维护命令

1.1man

man man:查看man手册

1 Executable programs or shell commands 可执行程序或shell命令

2 System calls (functions provided by the kernel) 系统调用

文件IO 函数 read write

3 Library calls (functions within program libraries) 库函数

标准IO 函数fread fwrite

1.2su

切换到超级用户

su

su root

sudo su

退出:exit

切换到其他普通目录:sudo su 用户名

1.3sudo

临时管理员权限,有时需要输入密码

1.4df命令

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

1.5mount命令

作用:文件系统的挂载

挂载设备:sudo mount -t 设备类型 设备名称 挂载点

卸载设备:sudo umount 挂载点

注意:卸载时不要在挂载点卸载

通过网络挂载:mount -t nfs 192.168.1.100:/mnt /home

2用户管理命令

添加用户:sudo adduser 用户名

删除用户并删除用户工作目录:sudo deluser --remove-home 用户名

3进程管理命令

3.1ps

ps -aux:显示系统中正在运行的进程

ps -ef:显示当前系统中运行的进程,包含PPID(父进程号)

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

用户 进程号 终端 进程状态 开启时间 命令

表头

含义

USER

该进程是由哪个用户产生的。

PID

进程的 ID。

%CPU

该进程占用 CPU 资源的百分比,占用的百分比越高,进程越耗费资源。

%MEM

该进程占用物理内存的百分比,占用的百分比越高,进程越耗费资源。

VSZ

该进程占用虚拟内存的大小,单位为 KB。

RSS

该进程占用实际物理内存的大小,单位为 KB。

TTY

该进程是在哪个终端运行的。其中,tty1 ~ tty7 代表本地控制台终端(可以通过 Alt+F1 ~ F7 快捷键切换不同的终端),tty1~tty6 是本地的字符界面终端,tty7 是图形终端。pts/0 ~ 255 代表虚拟终端,一般是远程连接的终端,第一个远程连接占用 pts/0,第二个远程连接占用 pts/1,依次増长。?是守护进程,也就是一开始启动时系统在后台运行的进程。(后面IO会讲)

STAT

  1. D uninterruptible sleep (usually IO) 不可中断的睡眠态
  2. R running or runnable (on run queue) 运行态
  3. S interruptible sleep (waiting for an event to complete) 可中断的睡眠态
  4. T stopped by job control signal 暂停态
  5. t stopped by debugger during the tracing 因为调试而暂停
  6. X dead (should never be seen) 死亡态
  7. Z defunct ("zombie") process, terminated but not reaped by its parent 僵尸态
  8. < high-priority (not nice to other users) 高优先级
  9. N low-priority (nice to other users) 低优先级
  10. L has pages locked into memory (for real-time and custom IO) 锁在内存中
  11. s is a session leader 会话组组长
  12. l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)多线程
  13. + is in the foreground process group 前台进程
  14. 没有+时,默认是后台进程
  15. I 空闲状态进程(大写i)
  16. *守护进程

START

该进程的启动时间。

TIME

该进程占用 CPU 的运算时间,注意不是系统时间。

COMMAND

产生此进程的命令名。

3.2top

动态查看系统中运行的进程

shift > : 向下翻页

shift < :向上翻页

退出:q

PR:优先级

VIRT:占用虚拟内存

RES:真正占用内存

SHR:共享内存

3.3修改优先级

PR=NI+20

NI 范围:-20~19 NI值越小,优先级越高

sudo renice NI值 PID :改变正在运行的进程的优先级

例如:sudo renice -5 4381

sudo nice -n NI值 启动进程的命令:以指定的优先级运行进程

例如:sudo nice -n -5 ./a.out

3.4grep命令

grep:从文件中查找字符串

grep "要查找的字符串" 文件名

grep "\<要查找的字符串\>" 文件名:精确查找

从进程中查找a.out进程:

ps -aux | grep "a.out"

grep -r "要查找的字符串" 路径:在指定目录中搜索字符串

补充:

find 路径 -name "文件名" :查找xx路径下的某个文件

3.5kill命令

本质上来说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:进程号

3.6前后台切换命令

步骤:先运行进程

ctrl + z: 将进程暂停

jobs: 在当前终端查看前后台进程

bg 编号:切换到后台

fg 编号:将后台进程切换到前台

注意需要在同一终端执行

4网络管理命令

4.1命令

ifconfig:查看linux的ip地址

ipconfig:查看windows的ip地址

win+r打开运行窗口,输入cmd打开命令窗口,输ipconfig

ping 域名/ip地址:检查网络连通性(是否能通信)

例如:ping www.baidu.com

5文件系统管理命令

用于组织和管理计算机存储的大量文件,并提供用户交互接口

5.1文件系统分类

1)磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见文件系统格式有:Ext2、Ext3、Ext4、VFAT等

2)网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。常见文件系统格式有:NFS(Network File System,网络文件系统)、Samba(SMB/CIFS)等

3)专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见格式有:TMPFS(临时文件系统)、PROCFS(Process File System,进程文件系统)和LOOPBACKFS(Loopback File System,回送文件系统)。

5.2根文件系统结构

/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: 头文件,系统默认搜索的头文件路径

5.3文件内容显示

  1. cat 文件名 :显示文件的内容到终端
  2. head

head 文件名 : 默认显示前10行

head -n 文件名:显示文件前n行

  1. tail:

tail文件名:默认显示后10行

tail -n 文件名:显示文件后n行

5.4链接文件

bsp-lcd

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 -s 绝对路径/源文件 链接文件名

3)注意:

硬链接:删除或移动目标文件链接依然有效

只能操作普通文件

软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效

通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性

硬链接和软链接的区别?

  1. 创建链接:硬链接利用linux为每个文件分配的物理编号--inode号建立链接;

软链接利用文件的路径名建立链接

  1. 硬链接只能操作普通文件
  2. 硬链接:删除或移动目标文件链接依然有效

软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效

5.5文件压缩和解压

1)zip命令用于将一个或多个文件压缩成一个压缩文件

unzip 命令用于将zip压缩文件进行解压

注意:

1)具有归档功能,并进行压缩

2)可以压缩文件夹,后缀为.zip

3)压缩或解压后原文件依然存在

例子:

zip c.zip *.c

unzip c.zip

2)gzip命令用于将一个文件进行压缩。

gunzip命令用于将gzip压缩文件进行解压。

注意:

1)只能对一个文件进行压缩,并自后缀为.gz

2)没有归档功能

3)压缩或解压后源文件不存在

例如:gzip test.c

gunzip test.c.gz

3)bzip2:功能、特点与gzip相同,只是后缀为.bz2

bunzip2:解压

  1. 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

标签:解压,文件,高级,文件系统,命令,linux,进程,链接
From: https://blog.csdn.net/thh135/article/details/140816875

相关文章

  • Linux 命令,cat说明与使用
    1:grep命令功用:读一个或多个文件并显示到标准输出上,如果没有指定files或是指定一个文件,则从标准输入读取,输入以EOF结束。可以使用操作符>把几个文件组合为一个新文件,或者是使用>>在已经存在的文件里添加文件内容。2:命令构件:cat[options][files]3:参数选项:-A,--show-all......
  • 连载|浅谈红队中的权限维持(六)-Linux 主机后门与Linux 隐藏文件
    本文来源无问社区,更多实战内容,渗透思路可前往查看http://www.wwlib.cn/index.php/artread/artid/11584.html0x01Linux主机后门1、添加用户一句话添加用户useraddtest;echo-e"123456n123456n"|passwdtest或者使用openssluseradd-popensslpasswd-1-salt'salt'12......
  • 如何在Linux上配置虚拟主机
    在Linux上配置虚拟主机可以通过使用ApacheHTTP服务器来实现。Apache是一个开源的跨平台的Web服务器软件,可以在多种操作系统上运行并支持虚拟主机的配置。以下是在Linux上配置虚拟主机的步骤:安装ApacheHTTP服务器在终端中运行以下命令来安装Apache:sudoapt-getupdatesu......
  • Java编译和运行的命令
    1.3Java编译和运行的命令目录1.3Java编译和运行的命令1.3.1Java编译和运行的基础概念1.3.2基本步骤1.编译Java代码2.运行编译后的代码1.3.3详细解释1.3.4常见问题1.3.5常用Java命令javacjavajar1.3.1Java编译和运行的基础概念源代码文件(.java):这是你写的Java代......
  • linux系统下find查找特定的文件或目录路径
    linux系统下find查找特定的文件或目录路径#find:可以实时查询,不需要更新数据库#在特定路径/下递归查询特定的目录名test相应的路径#特定路径支持绝对/相对路径,#如果输入的特定查找路径为绝对路径,那么输出的路径也是绝对路径#类似地,输入为相对路径,输出也为相对路径......
  • Linux系统编程-临时文件
    临时文件:1、如何不冲突  2、及时销毁创建临时文件有两种方法:1、tmpnam  2、tmpfiletmpnam函数tmpnam的用法为一个临时文件创建一个名字。该方法创建临时文件,需要两步:1、产生文件名字   2、创建文件。所以从并发的角度,可能有两个用户获取同一个文件名字,因此......
  • 学linux小记(1)
    1.SELinux上下文就是所谓的标签由SElinux分配2.setenforce0是更改SELinux的模式一般0是改到Permissive模式 1是改到enforcing 3.对于定义SELinux文件上下文规则时 采用semanagefcontext命令举例semanagefcontext-a-t你写的上下文  '/某个目录或文件+(/.......
  • Gromacs-2024.1 GPU版本编译,--以RockyLinux系统为例
    1、首先安装好gcc套件、gcc-toolset-9、cmake、nvidia_driver、cuda、openmpi等软件;2、解压gromacs的源码包;3、编译:a.节点内并行多线程版本,首先sclenablegcc-toolset-9bash加载gcc9以支持C++17特性,cdgromacs-2024.2&&mkdirbuild&&cmake…/-DGMX_BUILD_OWN_FF......
  • SQL命令详解
    countCOUNT()函数COUNT()函数进行计数。可利用COUNT()确定表中行的数目或符合特定条件的行的数目。COUNT()函数有两种使用方式:使用COUNT(*)对表中行的数目进行计数,不管表列中包含的是空值(NULL)还是非空值。使用COUNT(column)对特定列中具有值的行进行计数,忽略NULL值。下面......
  • VMware虚拟机 Linux配置一切正常 但依然不能上网
    VMware虚拟机Linux配置一切正常但依然不能上网最近因为装了Linux真机,很久没有使用VMware,今天装了manjaro虚拟机体验体验,像往常一样配置好了静态IP,却发现无论如何都不能上网。排查后,发现ipa命令会输出下面的信息:2:ens33:<NO-CARRIER,BROADCAST,MULTICAST,UP>mtu1500qdi......