g_____t__吧 关注:23贴子:3,923

【Linux】常用命令大全

只看楼主收藏回复

转自PHP100 中国互联网开发者门户


IP属地:上海1楼2014-12-25 14:55回复
    2L预留


    IP属地:上海2楼2014-12-25 14:55
    回复
      关机 (系统的关机、重启以及登出 )
      shutdown -h now 关闭系统(1)
      init 0 关闭系统(2)
      telinit 0 关闭系统(3)
      shutdown -h hours:minutes & 按预定时间关闭系统
      shutdown -c 取消按预定时间关闭系统
      shutdown -r now 重启(1)
      reboot 重启(2)
      logout 注销


      IP属地:上海4楼2014-12-25 18:21
      回复
        文件搜索
        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 显示一个二进制文件或可执行文件的完整路径


        IP属地:上海6楼2014-12-25 18:23
        回复
          挂载一个文件系统
          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网络共享


          IP属地:上海7楼2014-12-25 18:24
          回复
            磁盘空间
            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类系统)


            IP属地:上海8楼2014-12-25 18:25
            回复
              文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消
              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 位


              IP属地:上海10楼2014-12-25 18:26
              回复
                打包和压缩文件
                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格式压缩包


                IP属地:上海12楼2014-12-25 18:28
                回复
                  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 包


                  IP属地:上海13楼2014-12-25 18:29
                  回复
                    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 删除所有缓存的包和头文件


                    IP属地:上海14楼2014-12-25 18:30
                    回复
                      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 返回包含所要搜索字符串的软件包名称


                      IP属地:上海16楼2014-12-25 18:32
                      回复
                        查看文件内容
                        cat file1 从第一个字节开始正向查看文件的内容
                        tac file1 从最后一行开始反向查看一个文件的内容
                        more file1 查看一个长文件的内容
                        less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作
                        head -2 file1 查看一个文件的前两行
                        tail -2 file1 查看一个文件的最后两行
                        tail -f /var/log/messages 实时查看被添加到一个文件中的内容


                        IP属地:上海17楼2014-12-25 18:32
                        回复
                          字符设置和文件格式转换
                          dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX
                          unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS
                          recode ..HTML < page.txt > page.html 将一个文本文件转换成html
                          recode -l | more 显示所有允许的转换格式


                          IP属地:上海19楼2014-12-25 18:34
                          回复
                            文件系统分析
                            badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块
                            fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性
                            fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性
                            e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性
                            e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性
                            fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性
                            fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统的完整性
                            fsck.msdos /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性
                            dosfsck /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性


                            IP属地:上海20楼2014-12-25 18:34
                            回复
                              初始化一个文件系统
                              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文件系统


                              IP属地:上海21楼2014-12-25 18:34
                              回复