c高级学习笔记

news/2024/11/24 11:38:27/

输入输出重定向

输出重定向

命令 > file :将file作为输出源,file文件不存在创建

命令 >> file 如果文件不存在创建如果文件存在内容则会追加

命令 &> file 或者命令 2> file :将由命令产生的错误信息输入到文件当中

命令 &>> file 或者命令 2>> file :将由命令产生的错误信息输入到文件当中

输入重定向

输出重定向>换成<即可

命令置换符` `或者$(

将一个命令的输出作为另一个命令的参数

例:echo "my name is 'hostname'"

输出my name is ubantu

系统维护命令

  1. man man 查看man手册

第一个章节:shell命令

第二个章节:系统调用

第三个章节:C库

  1. sudo passwd 用户名修改用户密码
  2. su 切换用户

su默认切换到超级管理员用户

sudo su 用户名

exit退出切换用户

  1. echo "输出内容"终端输出内容默认换行

echo -n输出不换行

  1. date查看当前系统日期
  2. clear 清屏
  3. df -Th 或者 df -h : 查看磁盘空间

用户管理命令

用户相关配置文件
  1. /etc/passwd: 存储用户的详细信息
  2. /etc/group: 存储已有的用户组信息
  3. /etc/shadow: 存储用户的密码

新建用户

sudo adduser 用户名

给新建用户添加sudo权限
切换到超级管理员用户:su
给用户添加sudo权限:vi /etc/sudoers
添加:用户名 ALL=(ALL:ALL) ALL

删除用户

sudo deluser 用户名 ---> 删除用户,但是不会删除用户的主目录(残留的主目录可以直接使用rm -r删除)

sudo userdel -r 用户名 ---> 删除用户的同时,删除用户的主目录

sudo userdel -rf 用户名 ---> 强制删除

进程管理命令

进程是程序运行一次的过程动态的

程序存放在磁盘空间的可执行文件静态的

  1. ps 查看进程状态

ps-aux

USER(用户) PID(进程id) %CPU %MEM VSZ RSS TTY(终端 ?:不依赖终端) STAT(状态) START TIME COMMAND

PID 唯一标识id

ps -ef: 查看父进程id

ps -ajx: PPID PID PGID(组id) SID(会话id)

可以通过 man ps 查看关于进程状态信息

进程状态:
  D    uninterruptible sleep (usually IO)不可中断睡眠态
  R    running or runnable (on run queue)运行态
  S    interruptible sleep (waiting for an event to complete)可中断睡眠态
  T    stopped by job control signal停止态
  t    stopped by debugger during the tracing调试器打断X    dead (should never be seen)死亡态Z    defunct ("zombie") process, terminated but not reaped by its
       parent僵尸态<    high-priority (not nice to other users)高优先级
 N    low-priority (nice to other users)低优先级
 L    has pages locked into memory (for real-time and custom I
      锁定到内存中
 s    is a session leader 会话组组长
 l    is multi-threaded (using CLONE_THREAD, like NPTL pthreaddo)线程+    is in the foreground process group前台进程

./a.out &a.out 后台运行

fg 数字后台运行进程拉到前台运行

ctrl z前台运行进程暂停同时放在后台

bg 数字后台暂停进程后台运行起来

  1. top 动态显示进程状态

在进程管理中,NI通常表示进程的Nice值(Nice Value)。Nice值是用来调整进程优先级的参数,它可以影响进程在系统中的调度顺序

Nice值通常是一个整数,在大多数操作系统中,它的范围通常是-20到+19。较小的Nice值表示进程的优先级较高,而较大的Nice值表示进程的优先级较低

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

PR:20 + NI

在进程管理中,PR通常表示进程的优先级(Priority)。进程优先级是操作系统用来管理和调度进程的一种机制。每个进程都有一个与之相关联的优先级,用于确定进程在系统中的调度顺序。

  1. renice 修改正在运行进程优先级

sudo renice -n num PID

num:要修改的nice

PID要修改进程

2. nice 定制运行的优先级

sudo nice -n num ./可执行文件

3. kill发送信号

kill -l查看linux信号

2) SIGINT ctrl+c 结束进程

3) SIGQUIT 退出

4) SIGILL 结束进程

9) SIGKILL 杀死进程 不可忽略信号

10) SIGUSR1 未定义功能

12) SIGUSR2 未定义功能

13) SIGPIPE 管道破裂信号

14) SIGALRM 时钟信号

17) SIGCHLD 子进程状态发生改变会给父进程发送

19) SIGSTOP 停止 不可忽略信号

kill num PID给指定进程发送num信号

kill PID默认执行9信号

文件系统命令

文件系统leix

磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见文件系统格式有:autofs、coda、Ext(Extended File sytem,扩展文件系统)、Ext2、Ext3、VFAT、ISO9660(通常是CD-ROM)、UFS(Unix File System,Unix文件系统)、ReiserFS、XFS、JFS、FAT(File Allocation Table,文件分配表)、FAT16、FAT32、NTFS(New Technology File System)等;

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

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

Linux 文件

/bin:存放系统中最常用的可执行文件

/dev:存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等

/home:用户主目录的默认位置

/mnt:该目录通常用于作为被挂载的文件系统的挂载点

/usr:用于存放与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件

文件操作相关命令

  1. file 文件名查找文件属性信息

a.out:文件名
ELF:类型
64-bit LSB shared object:小端存储
x86-64:64位操作系统
version 1 (SYSV):版本
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2:动态链接的库
BuildID[sha1]=929170c6441faf1ed8244921a012c77550a8584a:动态ID
for GNU/Linux 3.2.0:gcc编译器的版本
not stripped: 文件没有被压缩

2.cat 文件名 将文件内容输出终端(无行号)

cat -n 文件名输出显示行号

3.find :查找文件

格式find 路径 -name “文件名” ----> 路径往后查找文件

find ./ *.c

4.grep 查询指定字符串

grep "字符串" 文件一个文件查找

grep "字符串" 路径 -nR递归从路径往后查找,找到所有用这个字符串的文件

-n回显查找行数

-R查找路径可以是目录-R进行递归查找

rm -f 文件名强制删除文件存不存在都会删除

rm -rf 目录名强制删除文件文件夹不存在也会删除

head 文件名默认输出文件内容10

head -num 文件名默认输出文件内容num

tail 文件名默认输出文件内容10

tail -num 文件名默认输出文件内容后num

                                                                                                                   未完待续……


http://www.ppmy.cn/news/1549531.html

相关文章

如何调试 chrome 崩溃日志(MAC)

引言 在使用 Chrome 浏览器的过程中&#xff0c;偶尔会遇到浏览器崩溃的情况。为了找出崩溃的原因并修复问题&#xff0c;我们需要对崩溃后的 .dmp 文件进行详细分析。本文将详细介绍如何从用户的系统中获取崩溃日志文件&#xff0c;使用 minidump_stackwalk 查看浏览器版本信…

Arcgis 地图制作

地图如下,不同历史时期&#xff1a;

安卓应用安装过程学习

声明&#xff1a;此文章来自http://shuwoom.com/?p60的学习记录 启动式安装 public static final IPackageManager main(Context context, Installer installer,boolean factoryTest, boolean onlyCore) {PackageManagerService m new PackageManagerService(context, inst…

STL——string类常用接口说明

目录 一、string类的介绍 二、string类常用接口的使用说明 1.成员函数 ​编辑 2.迭代器 3.容量 一、string类的介绍 下面是string类的文档对string类的介绍 1.string类是表示字符序列的对象 2.标准字符串类通过类似于标准字符容器的接口为此类对象提供支持&#xff0c…

uniapp将图片url转换成base64支持app和h5

uniapp将图片url转换成base64支持app和h5 imageToBase64支持app和h5, app内使用plus.io.resolveLocalFileSystemURL方法转换 h5内使用uni.request方法转换 // 图片转base64 export const imageToBase64 (path) > {// #ifdef APP-PLUSreturn new Promise((resolve, rejec…

数据结构C语言描述5(图文结合)--队列,数组、链式、优先队列的实现

前言 这个专栏将会用纯C实现常用的数据结构和简单的算法&#xff1b;有C基础即可跟着学习&#xff0c;代码均可运行&#xff1b;准备考研的也可跟着写&#xff0c;个人感觉&#xff0c;如果时间充裕&#xff0c;手写一遍比看书、刷题管用很多&#xff0c;这也是本人采用纯C语言…

【H2O2|全栈】JS进阶知识(八)ES6(4)

目录 前言 开篇语 准备工作 浅拷贝和深拷贝 浅拷贝 概念 常见方法 弊端 案例 深拷贝 概念 常见方法 弊端 逐层拷贝 原型 构造函数 概念 形式 成员 弊端 显式原型和隐式原型 概念 形式 constructor 概念 形式 原型链 概念 形式 结束语 前言 开篇语…

PyTorch——从入门到精通:PyTorch基础知识(normal 函数)【PyTorch系统学习】

torch.normal() 的用法 该函数的参数如下&#xff1a; normal(mean, std, *, generatorNone, outNone) 参数说明 mean: 均值&#xff0c;可以是一个数值&#xff08;标量&#xff09;或者张量。如果是张量&#xff0c;则指定生成正态分布的均值&#xff0c;形状需与标准差匹配…