跳转至

Linux自带工具

  • linux
  • command

《The Linux Command Line 中文版》

https://www.kancloud.cn/thinkphp/linux-command-line/39431


mkdir 创建目录 cp 拷贝 cat 输出文件内容 stat 查看文件属性 wc 获取文件长度、字符数、行数 ll 罗列当前目录内容(-h 以K,M,G单位表示文件大小) chmod 修改权限,常用开关-R递归,例子 chmod -R a+wr * mv 移动文件 rm 删除,常用开关-f强制-r递归 ps 查看进程 常用开关-aux kill 杀进程,用进程号

killall 杀进程,用程序名字

nohup 后台运行进程 nohup ./xx.sh >output 2>&1 & find /home -name "abc.txt" tail 查看指定文件末尾几行 which 获取指定文件的完整路径($PATH中的) shred 粉碎文件 tail 看文件尾部 -f参数看实时log日志(追加文件内容) lsusb 查看usb设备 lsof 列出被打开的文件、被哪个应用打开

lspci 查看pci设备

file 查看文件类型(比如ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, not stripped) htop 查看哪个程序占用了cpu/ram资源 iotop 查看哪个程序阻塞了io资源

whereis 找二进制文件、其帮助文档的位置

hexdump 16进制查看(-C参数增加ASCII文本显示)

man 使用手册 info 比使用手册更详细的“电子书”

nano 文本编辑器

ssh 远程登入工具

diff 对比工具,diff -r对比文件夹

grep 筛选,-A显示筛选后若干行,-B显示筛选前若干行

cat

cat拼接文件,连接文件,合并文件

$ cat file1.bin file2.bin

mount ISO文件

$ sudo mount /path/to/image.iso /media/iso -o loop

压缩包转换 例如gz转bz2压缩包

gunzip --to-stdout foo.gz | bzip2 > foo.bz2

直接用流实现, 不用解压到磁盘上再处理

tar 解压压缩

.tar文件本身只是“归档”文件,把多个文件打包,而不带压缩;而.tar.gz文件是先把一些文件打包,然后用gzip压缩。

commands:

c  压缩
x  解压
t  列表
v  繁琐地打印一些信息
z  gzip
f  使用归档文件

创建/解压归档文件
$ tar -cf xxx.tar foo1 foo2
$ tar -xf xxx.tar

解压部分文件
$ tar -xf xxx.tar fileA

创建归档gzip压缩文件
$ tar -czf xxx.tar.gz foo1 foo2
$ tar -xzf xxx.tar.gz

查看文件列表:
$ tar -tvf xxx.tar

linux校验值计算命令

# cd /usr/bin && find -name "*sum"
./cksum
./md5sum
./sha1sum
./sha256sum
./sha3sum
./sha512sum

cksum是CRC32

以别的用户身份执行命令

su - username -c "command" 
crontab -e -u username

ps

查看实际使用内存

ps -o pid,comm,rss

du

统计文件夹大小

例,深度1:

$ du --max-depth=1 -h /usr/

watch

linux循环执行命令 2s执行一次

wait -n 2 “xxx”

dmsg

设备相关log,常用于诊断设备故障,比如查看加载了哪些驱动、把什么硬件资源分配给了什么驱动。

例如usb设备的插拔信息、给pci设备加载了什么驱动。

lsblk

lsblk - list block devices

通过网络更新系统时间

linux网络授时,使用NTP客户端完成;使用hwclock命令将时间写入主板:

$ sudo ntpdate -u ntp.api.bz
$ sudo hwclock -w

install命令

在安装程序时比cp更方便的实用命令

相当于mkdir -p path/to/dst && cp src path/to/dst
$ install -D src path/to/dst

网络命令

arp = ip neighbor
ifconfig = ip address, ip link
netstat = ss
route = ip route

ifconfig等命令的package:

pacman -S net-tools dnsutils inetutils iproute2

ifconfig设置ip:

ifconfig eth0 192.168.10.199

route设置路由:

设置默认路由
# route add default gw 192.168.1.1 enp0s8 

dd命令测试磁盘写入速度

oflag=direct参数将跳过内存缓存,conv=fsync参数,dd在完成拷贝后执行一次sync。

参考:https://www.cnblogs.com/kongzhongqijing/articles/9049336.html

dd if=/dev/zero of=/yourdisk/abc bs=1M count=1024 oflag=direct

Linux下强制重启

echo b > /proc/sysrq-trigger

crontab(每天5点):

00 5 * * * sleep 5 && echo b > /proc/sysrq-trigger

待分类

archivemount 利用FUSE(用户层文件系统框架)将归档文件mount到文件系统中 gdb-multiarch 多架构gdb, 工具链中的gdb有问题的时候可以用