工具
- starce 有用的诊断、指导和调试工具,查看某个可执行文件的系统函数调用情况
基本命令
uname -m
显示机器的处理器架构
uname -r
显示正在使用的内核版本
dmidecode -q
显示硬件系统部件
hdparm -tT /dev/sda
在磁盘上执行测试性读取操作系统信息
arch
显示机器的处理器架构
uname -m
显示机器的处理器架构
hdparm -i /dev/hda
罗列一个磁盘的架构特性
cat /proc/cpuinfo
显示CPU info的信息
cat /proc/interrupts
显示中断
cat /proc/meminfo
校验内存使用
cat /proc/swaps
显示哪些swap被使用
cat /proc/version
显示内核的版本
cat /proc/net/dev
显示网络适配器及统计
cat /proc/mounts
显示已加载的文件系统
lspci -tv
罗列 PCI 设备
lsusb -tv
显示 USB 设备
date
显示系统日期
cal 2007
显示2007年的日历表
date 041217002007.00
设置日期和时间 - 月日时分年.秒
clock -w
将时间修改保存到 BIOS
关机
shutdown -h now
关闭系统(1)
init 0
关闭系统(2)
telinit 0
关闭系统(3)
shutdown -h hours:minutes &
按预定时间关闭系统
shutdown -c
取消按预定时间关闭系统
shutdown -r now
重启(1)
reboot
重启(2)
logout
注销
文件搜索
find / -name file1
从 '/' 开始进入根文件系统搜索文件和目录
find / -user user1
搜索属于用户 'user1' 的文件和目录
find /home/user1 -name \*.bin
在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
find /usr/bin -type f -atime +100
搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10
搜索在10天内被创建或者修改过的文件
find / -name \*.rpm -exec chmod 755 '{}' \;
搜索以 '.rpm' 结尾的文件并定义其权限
find / -xdev -name \*.rpm
搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备
locate \*.ps
寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令
whereis halt
显示一个二进制文件、源码或man的位置
which halt
显示一个二进制文件或可执行文件的完整路径
挂载文件系统
mount /dev/hda2 /mnt/hda2
挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在
umount /dev/hda2
卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出
fuser -km /mnt/hda2
当设备繁忙时强制卸载
umount -n /mnt/hda2
运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用
mount /dev/fd0 /mnt/floppy
挂载一个软盘
mount /dev/cdrom /mnt/cdrom
挂载一个cdrom或dvdrom
mount /dev/hdc /mnt/cdrecorder
挂载一个cdrw或dvdrom
mount /dev/hdb /mnt/cdrecorder
挂载一个cdrw或dvdrom
mount -o loop file.iso /mnt/cdrom
挂载一个文件或ISO镜像文件
mount -t vfat /dev/hda5 /mnt/hda5
挂载一个Windows FAT32文件系统
mount /dev/sda1 /mnt/usbdisk
挂载一个usb 捷盘或闪存设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
挂载一个windows网络共享
磁盘空间相关
df -h
显示已经挂载的分区列表
ls -lSr |more
以尺寸大小排列文件和目录
du -sh dir1
估算目录 'dir1' 已经使用的磁盘空间'
du -sk * | sort -rn
以容量大小为依据依次显示文件和目录的大小
打包和压缩文件
bunzip2 file1.bz2
解压一个叫做 'file1.bz2'的文件
bzip2 file1
压缩一个叫做 'file1' 的文件
gunzip file1.gz
解压一个叫做 'file1.gz'的文件
gzip file1
压缩一个叫做 'file1'的文件
gzip -9 file1
最大程度压缩
rar a file1.rar test_file
创建一个叫做 'file1.rar' 的包
rar a file1.rar file1 file2 dir1
同时压缩 'file1', 'file2' 以及目录 'dir1'
rar x file1.rar
解压rar包
unrar x file1.rar
解压rar包
tar -cvf archive.tar file1
创建一个非压缩的 tarball
tar -cvf archive.tar file1 file2 dir1
创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件
tar -tf archive.tar
显示一个包中的内容
tar -xvf archive.tar
释放一个包
tar -xvf archive.tar -C /tmp
将压缩包释放到 /tmp目录下
tar -cvfj archive.tar.bz2 dir1
创建一个bzip2格式的压缩包
tar -xvfj archive.tar.bz2
解压一个bzip2格式的压缩包
tar -cvfz archive.tar.gz dir1
创建一个gzip格式的压缩包
tar -xvfz archive.tar.gz
解压一个gzip格式的压缩包
zip file1.zip file1
创建一个zip格式的压缩包
zip -r file1.zip file1 file2 dir1
将几个文件和目录同时压缩成一个zip格式的压缩包
unzip file1.zip
解压一个zip格式压缩包
查看文件内容
cat file1
从第一个字节开始正向查看文件的内容
tac file1
从最后一行开始反向查看一个文件的内容
more file1
查看一个长文件的内容
less file1
类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作
head -2 file1
查看一个文件的前两行
tail -2 file1
查看一个文件的最后两行
tail -f /var/log/messages
实时查看被添加到一个文件中的内容
文本处理
cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt
使用PIPE, STDIN和STDOUT进行文本操作的通用语法
cat file1 | command( sed, grep, awk, grep, etc...) > result.txt
合并一个文件的详细说明文本,并将简介写入一个新文件中
cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt
合并一个文件的详细说明文本,并将简介写入一个已有的文件中
grep Aug /var/log/messages
在文件 '/var/log/messages'中查找关键词"Aug"
grep ^Aug /var/log/messages
在文件 '/var/log/messages'中查找以"Aug"开始的词汇
grep [0-9] /var/log/messages
选择 '/var/log/messages' 文件中所有包含数字的行
grep Aug -R /var/log/*
在目录 '/var/log' 及随后的目录中搜索字符串"Aug"
sed 's/stringa1/stringa2/g' example.txt
将example.txt文件中的 "string1" 替换成 "string2"
sed '/^$/d' example.txt 从example.txt
文件中删除所有空白行
sed '/ *#/d; /^$/d' example.txt
从example.txt文件中删除所有注释和空白行
echo 'esempio' | tr '[:lower:]' '[:upper:]'
合并上下单元格内容
sed -e '1d' result.txt
从文件example.txt 中排除第一行
sed -n '/stringa1/p'
查看只包含词汇 "string1"的行
sed -e 's/ *$//' example.txt
删除每一行最后的空白字符
sed -e 's/stringa1//g' example.txt
从文档中只删除词汇 "string1" 并保留剩余全部
sed -n '1,5p;5q' example.txt
查看从第一行到第5行内容
sed -n '5p;5q' example.txt
查看第5行
sed -e 's/00*/0/g' example.txt
用单个零替换多个零
cat -n file1
标示文件的行数
cat example.txt | awk 'NR%2==1'
删除example.txt文件中的所有偶数行
echo a b c | awk '{print $1}'
查看一行第一栏
echo a b c | awk '{print $1,$3}'
查看一行的第一和第三栏
paste file1 file2
合并两个文件或两栏的内容
paste -d '+' file1 file2
合并两个文件或两栏的内容,中间用"+"区分
sort file1 file2
排序两个文件的内容
sort file1 file2 | uniq
取出两个文件的并集(重复的行只保留一份)
sort file1 file2 | uniq -u
删除交集,留下其他的行
sort file1 file2 | uniq -d
取出两个文件的交集(只留下同时存在于两个文件中的文件)
comm -1 file1 file2
比较两个文件的内容只删除 'file1' 所包含的内容
comm -2 file1 file2
比较两个文件的内容只删除 'file2' 所包含的内容
comm -3 file1 file2
比较两个文件的内容只删除两个文件共有的部分
文件系统
mkfs /dev/hda1
在hda1分区创建一个文件系统
mke2fs /dev/hda1
在hda1分区创建一个linux ext2的文件系统
mke2fs -j /dev/hda1
在hda1分区创建一个linux ext3(日志型)的文件系统
mkfs -t vfat 32 -F /dev/hda1
创建一个 FAT32 文件系统
fdformat -n /dev/fd0
格式化一个软盘
mkswap /dev/hda3
创建一个swap文件系统
网络
ifconfig eth0
显示一个以太网卡的配置
ifup eth0
启用一个 'eth0' 网络设备
ifdown eth0
禁用一个 'eth0' 网络设备
ifconfig eth0 192.168.1.1 netmask 255.255.255.0
控制IP地址
ifconfig eth0 promisc
设置 'eth0' 成混杂模式以嗅探数据包 (sniffing)
dhclient eth0
以dhcp模式启用 'eth0'
route -n
展示路由表
route add -net 0/0 gw
IP Gateway配置默认网关
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1
配置静态路由到达网络“192.168.0.0/16”
route del 0/0 gw
IP网关删除静态路由
echo "1" > /proc/sys/net/ipv4/ip_forward
激活路由
ethtool eth0
显示网卡“eth0”的统计信息
netstat -tup
显示所有活跃的网络连接及其PID
netstat -tupl
显示在系统上侦听的所有网络服务及其PID
tcpdump tcp port 80
显示所有HTTP流量
其他
export TERM=linux -
把TERM的环境变量设置为linux,对于Linux的终端显示非常有用
export LD_LIBRARY_PATH=. - LD_LIBRARY_PATH
是一个环境变量,它告诉动态链接器(dynamic linker)在哪里寻找共享库(shared library)文件。例如,如果将 export LD_LIBRARY_PATH=. 添加到环境变量中,那么动态链接器将在当前目录中搜索共享库文件。
posted @
2023-04-03 10:06
KylinZhuang
阅读(
24)
评论()
编辑
收藏
举报