文档库

最新最全的文档下载
当前位置:文档库 > linux命令大全--分类汇总版

linux命令大全--分类汇总版

LINUX命令大全

一、通用命令

1、date :打印或者设置系统的日期和时间

2、stty -a:可以查看或者打印控制字符(Ctrl-C、Ctrl-D、Ctrl-Z等)

3、passwd:用passwd -h查看

4、logout,login:登录shell的登录和注销命令

5、more,less,head tail:显示或部分显示文件内容

6、lp/lpstat/cancel,lpr/lpq/lprm:打印文件

7、chmod u+x:更改文件权限

8、rm -fr dir:删除非空目录

9、cp -R dir:拷贝目录

10、fg jobid :可以将一个后台进程放到前台

11、kill 的作用:send a signal to a process、eg:kill -9 发送的是SIG_KILL信号,具体发送什么信号可以通过man kill 查看、

12、ps 的用法,ps -e 或ps -o pid,ppid,session,tpgid,comm (其中session显示的sessionid,tpgid显示前台进程组id,comm显示命令名称)

二、常用命令

1、dpkg:package manager for Debian

* 安装:dpkg -i package

* 卸载:dpkg -r package

* 卸载并删除配置文件:dpkg -P |--purge package

* 如果安装一个包时、说依赖某些库、可以先apt-get install somelib

* 查看软件包安装内容:dpkg -L package

* 查看文件由哪个软件包提供:dpkg -S filename

* 另外dpkg还有dselect和aptitude 两个frontend

2、apt

* 安装:apt-get install packs

* 更新源:apt-get update

* 升级系统:apt-get upgrade

* 智能升级、安装新软件包,删除废弃的软件包:apt-get dist-upgrade

* f --fix broken 修复依赖:apt-get -f install

* 自动删除无用的软件:apt-get autoremove

* 删除软件:apt-get remove packages

* 删除包并清除配置文件:apt-get remove package --purge

* 清除所以删除包的残余配置文件:dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P

* 安装软件时候包的临时存放目录:/var/cache/apt/archives * 清除该目录:apt-get clean

* 清除该目录的旧版本的软件缓存:apt-get autoclean

* 查询软件some的依赖包:apt-cache depends some

* 查询软件some被哪些包依赖:apt-get rdepends some

* 搜索软件:apt-cache search name|regexp

* 查看软件包的作用:apt-cache show package

* 查看一个软件的编译依赖库:apt-cache showsrc packagename|grep Build-Depends

* 下载软件的源代码:apt-get source packagename (注:sources、list 中应该有deb-src 源)

* 安装软件包源码的同时,安装其编译环境:apt-get build-dep packagename (有deb-src源)

* 如何将本地光盘加入安装源列表:apt-cdrom add

3、系统命令:

* 查看内核版本:uname -a

* 查看ubuntu 版本:cat /etc/issue

* 查看网卡状态:ethtool eth0

* 查看内存,cpu的信息:cat /proc/meminfo ; cat /proc/cpuinfo * 打印文件系统空间使用情况:df -h

* 查看硬盘分区情况:fdisk

* 产看文件大小:du -h filename;

* 查看目录大小:du -hs dirname ; du -h dirname是查看目录下所有文件的大小

* 查看内存的使用:free -m/-g/-k

* 查看进程:ps -e 或ps -aux -->显示用户

* 杀掉进程:kill pid

* 强制杀掉:killall -9 processname

4、网络相关:

* 配置ADSL:sudo pppoeconf

* ADSL手工拨号:sudo pon dsl-provider

* 激活ADSL :sudo /etc/ppp/pppoe_on_boot

* 断开ADSL:sudo poff

* 根据IP查网卡地址:arping IP地址

* 产看本地网络信息(包括ip等):ifconfig | ifconfig eth0

* 查看路由信息:netstat -r

* 关闭网卡:sudo ifconfig eth0 down

* 启用网卡:sudo ifconfig eth0 up

* 添加一个服务:sudo update-rc、d 服务名defaults 99

* 删除一个服务:sudo update-rc、d 服务名remove

* 临时重启一个服务:/etc/init、d/服务名restart

* 临时关闭一个服务:/etc/init、d/服务名stop

* 临时启动一个服务:/etc/init、d/服务名start

* 控制台下显示中文:sudo apt-get install zhcon

* 查找某个文件:whereis filename 或find 目录-name 文件名

*通过ssh传输文件

5、压缩:

*解压缩a、tar、gz:tar zxvf a、tar、gz

*解压缩a、tar、bz2:tar jxvf a、tar、bz2

*压缩aaa bbb目录为xxx、tar、gz:tar zcvf xxx、tar、gz aaa bbb *压缩aaa bbb目录为xxx、tar、bz2:tar jcvf xxx、tar、bz2 aaa bbb 6、Nautilus:

特殊URI 地址

* computer:/// - 全部挂载的设备和网络

* network:/// - 浏览可用的网络

* burn:/// - 一个刻录CDs/DVDs 的数据虚拟目录

* smb:/// - 可用的windows/samba 网络资源

* x-nautilus-desktop:/// - 桌面项目和图标

* file:/// - 本地文件

* trash:/// - 本地回收站目录

* ftp:// - FTP 文件夹

* ssh:// - SSH 文件夹

* fonts:/// - 字体文件夹,可将字体文件拖到此处以完成安装

* themes:/// - 系统主题文件夹

7、补充部分:

* 查看本地所有的tpc,udp监听端口:netstat -tupln (t=tcp,u=udp,p=program,l=listen,n=numric)

* 通过man搜说相关命令:man -k keyword 、eg:man -k user

* 或者用apropos

* 统计文件所占用的实际磁盘空间:du (du - estimate file space usage)

* 统计文件中的字符,字节数:wc -c/-l/-w (wc - print the number of newlines,words,and bytes in files)

* 查看文件的内容:od -x/-c/ (od - dump files in octal and other formats)

查看文件的Ascii 码形式:od -t c filename (其中统计信息最左边的是:字节数)

* 查找命令所在文件的位置:which od 输出:/usr/bin/od

查看该文件由哪个包提供:dpkg -S /usr/bin/od 输出:coreutils:/usr/bin/od

再查看coreutils包的全部内容就知道了linux的核心命令:dpkg -L coreutils

* 快速粘贴:先在一个地方选中文字,在欲粘贴的地方按鼠标中键即可、

* 等效中键:a 、按下滑轮等效于中键、b、同时按下鼠标左右键,等效于中键

* 快速重启X服务:同时按下:Alt + Ctrl + Backspace 三个键、* 打开"运行"窗口:同时按下Alt + F2 键

* 截屏:

a、全屏:直接按下PrtScr 键

b、当前窗口:同时按下Alt + PrtScr 键

c、延时截屏:在终端或"运行"窗口中输入命令:gnome-screenshot --delay 3 ,将延时3 秒后截屏、

8、ulimit

ulimit:显示(或设置)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程序在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止

ulimited 不限制用户可以使用的资源,但本设置对可打开的最大文件数(max open files)和可同时运行的最大进程数(max user processes)无效

-a 列出所有当前资源极限

-c 设置core文件的最大值、单位:blocks

-d 设置一个进程的数据段的最大值、单位:kbytes

-f Shell 创建文件的文件大小的最大值,单位:blocks

-h 指定设置某个给定资源的硬极限、如果用户拥有root 用户权限,可以增大硬极限、任何用户均可减少硬极限

-l 可以锁住的物理内存的最大值

-m 可以使用的常驻内存的最大值,单位:kbytes

-n 每个进程可以同时打开的最大文件数

-p 设置管道的最大值,单位为block,1block=512bytes

-s 指定堆栈的最大值:单位:kbytes

-S 指定为给定的资源设置软极限、软极限可增大到硬极限的值、如果-H 和-S 标志均未指定,极限适用于以上二者

-t 指定每个进程所使用的秒数,单位:seconds

-u 可以运行的最大并发进程数

-v Shell可使用的最大的虚拟内存,单位:kbytes

eg:ulimit -c 1000(可以先通过ulimit -c 查看原来的值)

9、systemctl disable lightdm 设置启动模式是字符还是图形

三、按作用分类

1、系统信息

arch 显示机器的处理器架构

uname -m 显示机器的处理器架构

uname -r 显示正在使用的内核版本

dmidecode -q 显示硬件系统部件- (SMBIOS / DMI)

hdparm -i /dev/hda 罗列一个磁盘的架构特性

hdparm -tT /dev/sda 在磁盘上执行测试性读取操作

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 0412********.00 设置日期和时间- 月日时分年.秒clock -w 将时间修改保存到BIOS

2、关机(系统的关机、重启以及登出)

shutdown -h now 关闭系统

init 0 关闭系统

telinit 0 关闭系统

shutdown -h hours:minutes & 按预定时间关闭系统shutdown -c 取消按预定时间关闭系统

shutdown -r now 重启

reboot 重启

logout 注销

3、文件和目录

cd /home 进入'/ home' 目录'

cd .. 返回上一级目录

cd ../.. 返回上两级目录

cd 进入个人的主目录

cd ~user1 进入个人的主目录

cd - 返回上次所在的目录

pwd 显示工作路径

ls 查看目录中的文件

ls -F 查看目录中的文件

ls -l 显示文件和目录的详细资料

ls -a 显示隐藏文件

ls *[0-9]* 显示包含数字的文件名和目录名

tree 显示文件和目录由根目录开始的树形结构

lstree 显示文件和目录由根目录开始的树形结构

mkdir dir1 创建一个叫做'dir1' 的目录'

mkdir dir1 dir2 同时创建两个目录

mkdir -p /tmp/dir1/dir2 创建一个目录树

rm -f file1 删除一个叫做'file1' 的文件'

rmdir dir1 删除一个叫做'dir1' 的目录'

rm -rf dir1 删除一个叫做'dir1' 的目录并同时删除其内容rm -rf dir1 dir2 同时删除两个目录及它们的内容

mv dir1 new_dir 重命名/移动一个目录

cp file1 file2 复制一个文件

cp dir/* . 复制一个目录下的所有文件到当前工作目录

cp -a /tmp/dir1 . 复制一个目录到当前工作目录

cp -a dir1 dir2 复制一个目录

cp -r dir1 dir2 复制一个目录及子目录

ln -s file1 lnk1 创建一个指向文件或目录的软链接

ln file1 lnk1 创建一个指向文件或目录的物理链接

touch -t 0712250000 file1 修改一个文件或目录的时间戳- (YYMMDDhhmm)

4、文件搜索

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 显示一个二进制文件或可执行文件的完整路径

5、挂载一个文件系统

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网络共享

6、磁盘空间

df -h 显示已经挂载的分区列表

ls -lSr |more 以尺寸大小排列文件和目录

du -sh dir1 估算目录'dir1' 已经使用的磁盘空间'

du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小

rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间(fedora, redhat类系统)

dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间(ubuntu, debian类系统) 7、用户和群组

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

groupmod -n new_group_name old_group_name 重命名一个用户组useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于"admin" 用户组的用户

useradd user1 创建一个新用户

userdel -r user1 删除一个用户( '-r' 排除主目录)

usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性

passwd 修改口令

passwd user1 修改一个用户的口令(只允许root执行)

chage -E 2005-12-31 user1 设置用户口令的失效期限

pwck 检查'/etc/passwd' 的文件格式和语法修正以及存在的用户grpck 检查'/etc/passwd' 的文件格式和语法修正以及存在的群组newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组

8、文件的权限- 使用"+" 设置权限,使用"-" 用于取消

ls -lh 显示权限

ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示

chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限

chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限

chown user1 file1 改变一个文件的所有人属性

chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性

chgrp group1 file1 改变文件的群组

chown user1:group1 file1 改变一个文件的所有人和群组属性

find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件chmod u+s /bin/file1 设置一个二进制文件的SUID 位- 运行该文件的用户也被赋予和所有者同样的权限

chmod u-s /bin/file1 禁用一个二进制文件的SUID位

chmod g+s /home/public 设置一个目录的SGID 位- 类似SUID ,不过这是针对目录的

chmod g-s /home/public 禁用一个目录的SGID 位

chmod o+t /home/public 设置一个文件的STIKY 位- 只允许合法所有人删除文件

chmod o-t /home/public 禁用一个目录的STIKY 位

8、文件的特殊属性- 使用"+" 设置权限,使用"-" 用于取消chattr +a file1 只允许以追加方式读写文件

chattr +c file1 允许这个文件能被内核自动压缩/解压

chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接

chattr +s file1 允许一个文件被安全地删除

chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘

chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件

lsattr 显示特殊的属性

9、打包和压缩文件

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 -jxvf archive.tar.bz2 解压一个bzip2格式的压缩包

tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包

tar -zxvf archive.tar.gz 解压一个gzip格式的压缩包

zip file1.zip file1 创建一个zip格式的压缩包

zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包

unzip file1.zip 解压一个zip格式压缩包

10、RPM 包- (Fedora, Redhat及类似系统)

rpm -ivh package.rpm 安装一个rpm包

rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告

rpm -U package.rpm 更新一个rpm包但不改变其配置文件

rpm -F package.rpm 更新一个确定已经安装的rpm包

rpm -e package_name.rpm 删除一个rpm包

rpm -qa 显示系统中所有已经安装的rpm包

rpm -qa | grep httpd 显示所有名称中包含"httpd" 字样的rpm包rpm -qi package_name 获取一个已安装包的特殊信息

rpm -qg "System Environment/Daemons" 显示一个组件的rpm包

rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表

rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关

系的列表

rpm -q package_name --whatprovides 显示一个rpm包所占的体积rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l rpm -q package_name --changelog 显示一个rpm包的修改历史

rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供

rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表

rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书

rpm --checksig package.rpm 确认一个rpm包的完整性

rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性

rpm -V package_name 检查文件尺寸、许可、类型、所有者、群组、MD5检查以及最后修改时间

rpm -Va 检查系统中所有已安装的rpm包- 小心使用

rpm -Vp package.rpm 确认一个rpm包还未安装

rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件

rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包

rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个rpm 包

11、YUM 软件包升级器- (Fedora, RedHat及类似系统)

yum install package_name 下载并安装一个rpm包

yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系

yum update package_name.rpm 更新当前系统中所有安装的rpm包yum update package_name 更新一个rpm包

yum remove package_name 删除一个rpm包

yum list 列出当前系统中安装的所有包

yum search package_name 在rpm仓库中搜寻软件包

yum clean packages 清理rpm缓存删除下载的包

yum clean headers 删除所有头文件

yum clean all 删除所有缓存的包和头文件

11、DEB 包(Debian, Ubuntu 以及类似系统)

dpkg -i package.deb 安装/更新一个deb 包

dpkg -r package_name 从系统删除一个deb 包

dpkg -l 显示系统中所有已经安装的deb 包

dpkg -l | grep httpd 显示所有名称中包含"httpd" 字样的deb包dpkg -s package_name 获得已经安装在系统中一个特殊包的信息dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表

dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表

dpkg -S /bin/ping 确认所给的文件由哪个deb包提供

12、APT 软件工具(Debian, Ubuntu 以及类似系统)

apt-get install package_name 安装/更新一个deb 包

apt-cdrom install package_name 从光盘安装/更新一个deb 包

apt-get update 升级列表中的软件包

apt-get upgrade 升级所有已安装的软件

apt-get remove package_name 从系统删除一个deb包

apt-get check 确认依赖的软件仓库正确

apt-get clean 从下载的软件包中清理缓存

apt-cache search searched-package 返回包含所要搜索字符串的软件包名称

13、查看文件内容