linux常用命令

git

git fetch --all  # 将会从远程仓库获取最新的代码和分支信息,但不会进行合并

git reset --hard origin/<branch> # 将会重置本地仓库,并使用远程仓库中指定分支的代码替换本地仓库中对应分支的代码。注意,该命令会删除本地未提交的所有改动和文件,慎重使用。

软连接

ln -s <目标文件或目录> <软链接文件名>

ls -l <软链接文件名>

rm <软链接文件名>

快捷键

esc+d: 删除光标后的一个词

esc+f: 往右跳一个词

esc+b: 往左跳一个词

esc+t: 交换光标位置前的两个单词。

ctrl + a 光标切换到命令行行首

ctrl + e 光标切换到命令行末尾

ctrl + l 清屏 等同于 clear

ctrl + u 清除剪切光标之前的内容

ctrl + k 清楚剪切光标之后的内容

ctrl + w 清除剪切光标之前的一个word

alt + d 清除剪切光标之后的一个word

ctrl + y 粘贴刚才删除字符

ctrl + h 向行首删除一个字符

ctrl + d 向行尾删除一个字符,空行时等于 exit 和 logout

ctrl + _ 恢复刚操作的命令 xshell无法使用

ctrl + b 光标向行首移动一个字符 ( backwards )

ctrl + f 光标向行尾移动一个字符( forwards )

ctrl + ← 光标向行首移动一个word

ctrl + → 光标向行尾移动一个word

ctrl + r 历史命令中查找 (关键字可用)

ctrl + z 转入后台运行

history 10 显示最近使用过的10个命令

Vi

整页翻页 ctrl-f ctrl-b

f就是forword b就是backward

翻半页

ctrl-d ctlr-u

d=down u=up

滚一行

ctrl-e ctrl-y

zz 让光标所杂的行居屏幕中央

zt 让光标所杂的行居屏幕最上一行 t=top

zb 让光标所杂的行居屏幕最下一行 b=bottom

     --> 上下左右方向键 ↑↓← →

      --> 翻页 pagedown / pageup 按键

      --> 数字 0 : 将光标移动到当前行首

      --> $ :   将光标移动到当前行尾

      --> G :       移动到这个文件的最后一行  nG :  n 为数字,移动到这个文件的第n行.

      --> gg:      移动到这个文件的第一行 相当于 1G

TPU

bm-smi --recovery --dev=0

gdb

gdb --args ./segformer_sail.pcie --input=../../datasets/test_car_person_1080P.mp4

1)gdb 直接进入调试模式,再输入file + xxx 跟踪; 或直接 gdb xxx

2)run (r) 运行

3break(b) 断点,可以break mian 直接在函数处增加断点,也可以 break:10 在第几行增加断点

4)next (n) 继续执行下一步

5)step(s) 单步调试

6continue (c) 继续执行

7)info(i)显示信息, i b 显示断点信息

8)delete (d)删除断点,删除单个断点添加断点号,删除全部断点直接d指令

9)print(p)显示变量的值或者数组的值,数组支持索引

10)quit(q)退出gdb

0、解压缩

unzip filename.zip

zip -r filename.zip directory/

unzip filename.zip -d /path/to/destination

tar -xvf filename.tar

tar -xzvf filename.tar.gz

tar -xvf filename.tar -C /path/to/destination

tar -xzvf filename.tar.gz -C /path/to/destination

//使用 -d 或 -C 参数时,指定的路径必须是已经存在的目录

tar -cvf filename.tar directory/

tar -czvf filename.tar.gz directory/

- c 表示创建归档文件

- z 表示使用 gzip 压缩

v 表示显示详细信息

- f 表示指定文件名

1、显示环境变量

//显示所有环境变量

printenv

//显示名为PATH的环境变量及其值

echo $PATH

2、设置环境变量

//只对当前shell有用,关了重启会消失

export MY_VAR=hello

//追加环境变量

export PATH=$PATH:/path/to/new/directory

//永久方法

vi ~/.bashrc

export MY_VAR=value

source ~/.bashrc

3、显示当前使用的whoami用户名

whoami

which

history

man mkdir

uname -a

4、cat

//显示文件内容

cat /etc/passwd

//显示多个文件内容

cat test test1

//创建文件,我们将使用以下命令创建一个名为test2文件的文件。

cat >test2

//等待用户输入,键入所需的文本,然后按CTRL + D(按住Ctrl键并键入" d ")退出。文本将写入test2文件中。您可以使用以下cat命令查看文件的内容。

cat test2

hello everyone, how do you do?

5、tail

//cat类似,tail打印文件内容时有一个主要警告:它只输出最后几行。默认情况下,它打印最后10行,但您可以使用-n修改该数字。,例如,要打印大型文本文件的最后几行,可以使用:

tail long.txt

tail -n 4 long.txt

6、查找命令

find \[flags\] \[path\] -name \[expression\]

//查找当前目录及其子目录中以 .txt 结尾的所有文件

find . -name "*.txt"

//查找 /home/user/documents 目录下所有以 .docx 结尾的文件

find /home/user/documents -name "*.docx"

//查找 /home/user/documents 目录下大小超过 1MB 的文件

find /home/user/documents -size +1M

7、磁盘相关

mount \[-hV\]

mount -a \[-fFnrsvw\] \[-t vfstype\]

mount \[-fnrsvw\] \[-o options \[,...\]\] device | dir

mount \[-fnrsvw\] \[-t vfstype\] \[-o options\] device dir

//将把 /dev/sdb1 这个设备挂载到 /mnt/usb 这个目录下

sudo mount /dev/sdb1 /mnt/usb

//把 /dev/sdc1 这个 NTFS 格式的设备挂载到 /mnt/windows 这个目录下。-t ntfs 表示设备的文件系统类型是 NTFS。挂载一个网络共享目录(NFS):

sudo mount -t ntfs /dev/sdc1 /mnt/windows

//挂载所有在 /etc/fstab 文件中定义的文件系统

sudo mount -a

//查看已挂载的文件系统

mount

lsblk: 显示块设备信息,包括硬盘、分区和挂载点。

fdisk: 管理磁盘分区的命令行工具,可以创建、删除和查看分区。

sudo fdisk -l           # 列出所有磁盘和分区

sudo fdisk /dev/sdX     # 进入磁盘sdX的分区管理界面(用实际设备代替X)

parted: 另一个用于磁盘分区的命令行工具,功能比fdisk更强大。

sudo parted -l         # 列出所有磁盘和分区

sudo parted /dev/sdX   # 进入磁盘sdX的分区管理界面(用实际设备代替X)

mkfs: 创建文件系统。常见的文件系统包括ext4、NTFS等。

sudo mkfs.ext4 /dev/sdXY   # 创建ext4文件系统(用实际设备和分区代替X和Y)

mount: 挂载文件系统到指定的挂载点。

sudo mount /dev/sdXY /mnt   # 将sdXY分区挂载到/mnt目录(用实际设备和分区代替X和Y)

umount: 卸载挂载的文件系统。

sudo umount /mnt   # 卸载/mnt目录下的文件系统

df: 显示文件系统的磁盘使用情况。

df -h   # 以人类可读的方式显示磁盘使用情况

du: 显示指定目录或文件的磁盘使用情况。

du -h /path/to/directory   # 以人类可读的方式显示目录的磁盘使用情况

8、进程相关

ps:显示当前用户的进程状态。常用选项如下:

ps aux:显示所有用户的所有进程信息。ps -aux | grep mediamtx

ps -ef:显示所有进程信息。

ps aux | grep <进程名>:根据进程名过滤显示相关进程。

top:实时显示进程状态,按 CPU 占用排序。可按 q 键退出。

htop:类似于 top 命令,但提供更友好的交互界面和更多功能。需要先安装 htop 包。

kill:终止进程。常用选项如下:

kill <进程ID>:通过进程ID终止指定进程。

kill -9 <进程ID>:使用强制终止信号(SIGKILL)终止进程。

killall:根据进程名终止进程。使用时需谨慎,因为它会终止所有匹配进程。

killall <进程名>:终止所有指定名称的进程。

pgrep:通过进程名查找进程ID。

pgrep <进程名>:查找匹配进程名的进程ID。

pkill:根据进程名终止进程。

pkill <进程名>:终止所有指定名称的进程。

jobs:显示在后台运行的作业。

9、网络相关

ifconfig:查看和配置网络接口信息,如IP地址、子网掩码等。不过在较新的Linux发行版中,ifconfig已被弃用,建议使用ip命令代替。

ip:一个强大的工具,用于管理网络接口和路由。它可以执行ifconfig的功能,还支持更多高级功能。

示例:

ip address show:查看所有网络接口的IP地址信息。

ip link:列出网络接口及其状态。

ip route:显示路由表。

ping:用于测试与目标主机之间的连通性。它发送ICMP回显请求并等待回复。

示例:ping google.com

traceroute(或tracert):跟踪数据包从本地到目标主机的路径。

示例:traceroute google.com

netstat:显示网络统计信息,如网络连接、路由表、接口状态等。

示例:netstat -tuln(查看所有TCP和UDP端口的监听情况)

ss:netstat的替代工具,用于显示套接字信息,如网络连接、路由表等。

示例:ss -tuln(查看所有TCP和UDP端口的监听情况)

nslookup(或dig):用于查询DNS(域名系统)记录,获取主机名对应的IP地址和反向查询等。

示例:nslookup google.com

route:查看和管理内核IP路由表。

示例:route -n(显示数字格式的路由表)

wget:用于从网络下载文件。

示例:wget http://example.com/file.txt

curl:通过URL方式传输数据,支持多种协议。

示例:curl http://example.com

ssh:用于通过安全的加密方式远程登录到其他Linux服务器。

示例:ssh username@remote_host

scp:用于通过SSH安全地复制文件和目录。

示例:scp file.txt username@remote_host:/path/to/destination

查看监听端口:

sudo netstat -lnp | grep nginx

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南叔先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值