当前位置: 首页 > news >正文

linux常用命令备忘录

一、常用命令

查看被占用进程:ps ef|grep 11612

查看当前目录:pwd

查看文件的md5

(linux)md5sum 文件名

(windows)certutil -hashfile some_file MD5

查看当前目录的文件大小:du -h -d1

删除文件名乱码的文件

ls -i

find -inum 434896936 -delete

find -inum 434896936 -exec rm -rf {} \;

ubuntu安装卸载库包:

sudo apt-get update

sudo apt-get install ***

sudo apt-get --purge remove ***

文本三剑客:

awk、grep、sed是linux操作文本的三大利器,合成文本三剑客。三者功能都是处理文本,但侧重点不同。

  • awk 功能最强大,但也最复杂。更适合格式化文本,对文本进行复杂格式处理。
  • grep更适合单纯的查找或匹配文本
  • sed 更适合编辑匹配到的文本

参考:

https://www.cnblogs.com/along21/p/10366886.html

示例:grep '^info' 文件A | awk '{print $5}' | sort -n | uniq     将文件A中以info开头的信息的第五个字段按数值排序并去重

二、增删改用户

  • 创建用户

sudo useradd -r -m -d 用户主目录 -s /bin/bash 用户名

示例:sudo useradd -r -m -d /home/users/chagee -s /bin/bash chagee

  • 设置密码

sudo passwd 用户名

按照提示输入密码

  • 为新用户增加sudo权限

sudo vim /etc/sudoers

为chagee增加sudo权限:

chagee ALL=(ALL:ALL) ALL

  • 删除用户

执行userdel命令:sudo userdel chagee

删除用户目录命令:sudo rm -rf /home/users/chagee

删除用户权限相关配置:删除或注释掉/etc/sudoers中关于该用户的配置,否则无法再次创建同名用户。

  • 将指定文件的拥有者改为特定的用户或组

sudo chown -R chagee:chagee filename

三、云盘挂载

查看所有硬盘和大小:fdisk -l

使用 mkfs.ext4 /dev/vdb 命令格式化磁盘(仅针对新创建云盘)

挂载云盘:mount -t ext4 /dev/vdb(云盘) /home(挂载的目的地址)

云盘挂载好之后,可root权限下修改/etc/fstab,实现机器的自动挂载,避免机器重启后总是还需要手动挂载:

vim /etc/fstab

/dev/vdb /home ext4 defaults 0 0

四、git操作

  • 查看当前所在分支:git branch
  • 查看修改的代码的文件:git status
  • 添加修改的代码文件到暂存区:git add ***
  • 提交暂存区代码到本地仓库:git commit -m "描述"
  • 提交本地分支版本提交到远程仓库:
    • git push <远程主机名> <本地分支名> : <远程分支名>
    • git push origin HEAD:refs/for/branch***
    • refs/for :意义在于我们提交代码到服务器之后是需要经过 code review 之后才能进行merge的
  • 显示每个提交简单的哈希值和提交说明,适合查看历史记录:git log --oneline
  • 切换到指定分支/提交:git checkout branch/hashid
  • 将A分支代码合入B分支:
    • git checkout B
    • git merge A
  • 删除本地分支:git branch -D ***
  • 创建并切换到本地临时分支:git chekout -b ***
  • 本地代码commit之后,发现有问题,想要撤回commit,且保留已经更改的本地代码:git reset --soft HEAD^(HEAD^ 是上一版本,也可以写成HEAD~1;如果撤回2次提交,可以使用HEAD~2)
  • 不想保留本地代码,还原到修改代码之前的代码:git reset --hard
  • 当前分支branch1开发到一半,不想commit,但需要临时切换到分支branch2做一些处理,之后再切换回分支branch1
    • 当前分支branch1代码保存
    • git status
    • git stash
    • 切换到分支branch2,做处理***
    • 切换回分支branch1
    • git stash pop
  •  将master分支完全覆盖develop分支
    • 切换到要覆盖的分支:git checkout develop
    • 执行覆盖命令:git reset --hard origin/master
    • 覆盖成功后,将本地分支强行推到远程分支:git push origin develop --force

五、gdb简单调试core文件

gdb exe core文件btf 6l

core文件找不到

# 放开文件大小限制
ulimit -c unlimited# 若执行工具目录下还未生成core,再执行以下命令# 查看core_pattern
cat /proc/sys/kernel/core_pattern
# 切换root
su root
# 将core文件统一生成到./下 (也可以写成core-%e-%p-%t,代码产生的文件名为core-命令名-pid-实践戳)
echo './core.%p' > /proc/sys/kernel/core_pattern
# 切换回原用户名
su chagee

六、unbuntu中python使用rtree、mod_spatialite需安装

安装python3、pip3

sudo apt-get install python3

sudo apt-get install python3-pip

python 使用rtee,需安装:

sudo apt-get install libspatialindex-dev

pip install Rtree

python 使用conn.load_extension('mod_spatialite.so'),需安装:

sudo apt-get install libsqlite3-mod-spatialite

http://www.lryc.cn/news/418363.html

相关文章:

  • 【C++进阶学习】第十二弹——C++ 异常处理:深入解析与实践应用
  • 《算法竞赛进阶指南》0x23剪枝
  • 同态加密和SEAL库的介绍(三)BFV - Batch Encoder
  • Docker 环境下使用 Traefik v3 和 MinIO 快速搭建私有化对象存储服务
  • 玛雅房产系统源码开发与技术功能解析
  • c++----初识模板
  • SpringBoot3热部署
  • J. 二进制与、平方和
  • LVS中NAT模式和DR模式实战讲解
  • 写给小白程序员的一封信
  • Leaf分布式ID
  • Starrocks解析json数组
  • 安卓基本布局(下)
  • Python中使用正则表达式
  • 三大口诀不一样的代码,小小的制表符和换行符玩的溜呀
  • [qt] 线程等待与唤醒
  • Springboot 实现 Modbus Rtu 协议接入物联网设备
  • 鸿蒙笔记--装饰器
  • 不同环境下RabbitMQ的安装-3 操作RabbitMQ
  • postgregSQL配置vector插件
  • PUMA论文阅读
  • 算法学习day31(动态规划)
  • 嵌入式学Day25---Linux软件编程---线程间通信
  • 【实现100个unity特效之17】在unity中使用shader和ShaderGraph分别实现模糊特定层,高斯模糊效果
  • Unity补完计划 之 SpriteEditer Multiple
  • C++ IOStream
  • 2024/8/8训练
  • 项目的小结
  • 【目标检测实验系列】YOLOv5高效涨点:基于NAMAttention规范化注意力模块,调整权重因子关注有效特征(文内附源码)
  • LSPatch制作内置模块应用软件无需root 教你制作内置应用