Linux 系统常用命令大全

系统信息

命令 说明
# arch 显示机器的处理器架构(1)
# cal 2007 显示2007年的日历表
# 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 显示已加载的文件系统
# clock -w 将时间修改保存到 BIOS
# date 显示系统日期
# date 041217002007.00 设置日期和时间 - 月日时分年.秒
# dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
# hdparm -i /dev/hda 罗列一个磁盘的架构特性
# hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
# lspci -tv 罗列 PCI 设备
# lsusb -tv 显示 USB 设备
# uname -m 显示机器的处理器架构(2)
# uname -r 显示正在使用的内核版本
返回顶部

关机

命令 说明
# init 0 关闭系统(2)
# logout 注销
# reboot 重启(2)
# shutdown -h now 关闭系统(1)
# shutdown -h 16:30 & 按预定时间关闭系统
# shutdown -c 取消按预定时间关闭系统
# shutdown -r now 重启(1)
# telinit 0 关闭系统(3)
返回顶部

文件和目录

命令 说明
# cd /home 进入 '/ home' 目录'
# cd .. 返回上一级目录
# cd ../.. 返回上两级目录
# cd 进入个人的主目录
# cd ~user1 进入个人的主目录
# cd - 返回上次所在的目录
# cp file1 file2 复制一个文件
# cp dir/* . 复制一个目录下的所有文件到当前工作目录
# cp -a /tmp/dir1 . 复制一个目录到当前工作目录
# cp -a dir1 dir2 复制一个目录
# cp file file1 将file复制为file1
# iconv -l 列出已知的编码
# iconv -f fromEncoding -t toEncoding inputFile > outputFile 改变字符的编码
# find . -maxdepth 1 -name *.jpg -print -exec convert batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)
# ln -s file1 lnk1 创建一个指向文件或目录的软链接
# ln file1 lnk1 创建一个指向文件或目录的物理链接
# ls 查看目录中的文件
# ls -F 查看目录中的文件
# ls -l 显示文件和目录的详细资料
# ls -a 显示隐藏文件
# ls *[0-9]* 显示包含数字的文件名和目录名
# lstree 显示文件和目录由根目录开始的树形结构(2)
# mkdir dir1 创建一个叫做 'dir1' 的目录'
# mkdir dir1 dir2 同时创建两个目录
# mkdir -p /tmp/dir1/dir2 创建一个目录树
# mv dir1 new_dir 重命名/移动 一个目录
# pwd 显示工作路径
# rm -f file1 删除一个叫做 'file1' 的文件'
# rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容
# rm -rf dir1 dir2 同时删除两个目录及它们的内容
# rmdir dir1 删除一个叫做 'dir1' 的目录'
# touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm)
# tree 显示文件和目录由根目录开始的树形结构(1)
返回顶部

文件搜索

命令 说明
# 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 显示一个二进制文件或可执行文件的完整路径
返回顶部

挂载一个文件系统

命令 说明
# fuser -km /mnt/hda2 当设备繁忙时强制卸载
# mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在
# 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网络共享
# umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出
# umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用
返回顶部

磁盘空间

命令 说明
# df -h 显示已经挂载的分区列表
# dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)
# du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间'
# du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小
# ls -lSr |more 以尺寸大小排列文件和目录
# rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)
返回顶部

用户和群组

命令 说明
# chage -E 2005-12-31 user1 设置用户口令的失效期限
# groupadd [group] 创建一个新用户组
# groupdel [group] 删除一个用户组
# groupmod -n moon sun 重命名一个用户组
# grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组
# newgrp - [group] 登陆进一个新的群组以改变新创建文件的预设群组