| linux系统命令大全: 系统信息
 # uname -a               # 查看内核/操作系统/CPU信息
 # cat  /etc/issue        # 查看操作系统版本
 # sudo lsb_release -a         # 查看操作系统版本
 # cat /etc/lsb-release        # 查看操作系统版本
 # cat /proc/cpuinfo         # 查看CPU信息
 # cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c            #逻辑CPU数量和型号
 # cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l    #物理CPU数量
 # cat /proc/cpuinfo | grep "cpu cores" | uniq    #物理CPU内核的个数,1个物理CPU里面有几个物理内核
 # cat /proc/cpuinfo | grep "processor" | wc -l   #查看所有逻辑CPU的个数
 # grep -c 'processor' /proc/cpuinfo      #查看所有逻辑CPU的核数
 # cat /proc/cpuinfo | grep 'siblings' | uniq        #物理CPU中逻辑CPU的个数,如使用超线程技术,则为整倍数
 # cat /proc/cpuinfo | grep -e "cpu cores" -e "siblings" | sort | uniq      #超线程,分别输出cpu cores和siblings数量
 # grep 'model name' /proc/cpuinfo        # 查看CPU信息
 # lscpu     # 查看CPU信息
 # hostname               # 查看计算机名
 # lspci -tv              # 列出所有PCI设备
 # lsusb -tv              # 列出所有USB设备
 # lsmod                  # 列出加载的内核模块
 # env                    # 查看环境变量资源
 # dmidecode -t memory   #查看内存硬件信息
 
 资源
 # free -m                # 查看内存使用量和交换区使用量
 # du -sh <目录名>        # 查看指定目录的大小
 # grep MemTotal /proc/meminfo   # 查看内存总量
 # grep MemFree /proc/meminfo    # 查看空闲内存量
 # uptime                 # 查看系统运行时间、用户数、负载
 # cat /proc/loadavg      # 查看系统负载磁盘和分区
 
 磁盘和分区
 # mount | column -t      # 查看挂接的分区状态
 # fdisk -l                        # 查看所有分区
 # lsblk                            #查看硬盘和分区分布#cat /proc/partitions      #查看磁盘分区
 #df -h                            #以容易理解的格式印出文件系统大小 # df -hT                       # 查看各分区使用情况,以K/M/G为单位显示文件大小和文件格式 # blkid                             #查看所有设置的分区和磁盘卷标  #parted -l                     #查看所有gpt分区信息# swapon -s                   # 查看所有交换分区
 # hdparm -i /dev/hda     # 查看磁盘参数(仅适用于IDE设备)
 # dmesg | grep IDE       # 查看启动时IDE设备检测状况网络
 #  sudo blkid                  # ubuntu下查看分区的uuid
 (parted) P            ----显示分区信息
 (parted) Q           ---退出
 
 网络
 # ifconfig -a             # 查看所有网络接口的属性
 # iptables -L            # 查看防火墙设置
 # route -n               # 查看路由表
 # netstat -lntp          # 查看所有监听端口
 # netstat -antp          # 查看所有已经建立的连接
 # netstat -s             # 查看网络统计信息进程
 
 用户
 $su user2    #切换到user2用户# last                   # 查看用户登录日志# sudo su    #切换到root用户
 # useradd     //添加用户
 # passwd user1     //为user1用户设置密码
 # usermod    //修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
 # groupadd   //添加用户组;
 # groupdel    //删除用户组;
 # groupmod  //修改用户组信息
 # groups       //查看当前登录用户的组内成员
 # groups user1 查看user1用户所在的组,以及组内成员
 # w                      # 查看活动用户
 # id user1            # 查看指定用户信息
 #grep user1 /etc/passwd  #查看用户user1在/etc/passwd文件中的信息行
 # cut -d: -f1 /etc/passwd   # 查看系统所有用户
 # cut -d: -f1 /etc/group    # 查看系统所有组
 # crontab -l             # 查看当前用户的计划任务服务
 
 
 
 --------------------------------------------------------------- 查看所有用户和用户组命令 
 # whoami     //查看当前登录用户名 # groups     //查看当前登录用所属的用户组
 # groups www    //查看用户www所属的用户组# cat /etc/passwd   //查看所有用户 
 /etc/passwd文件格式:
 用户名:密码:UID:GID:用户信息:HOME目录路径:用户shell
 其中UID为0则是用户root,1~499为系统用户,ubuntu系统中1000及以上为普通用户
 
 
 # cat /etc/group     //查看所有用户组 
 在/etc/group 中的每条记录分四个字段:格式如下:第一字段:用户组名称;
 第二字段:用户组密码;
 第三字段:GID
 第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;
 group_name:passwd:GID:user_list
 
 
 服务
 #chkconfig --list      # 列出所有系统服务
 # chkconfig --list | grep on    # 列出所有启动的系统服务程序
 #chkconfig --add name
 #chkconfig --del name
 #chkconfig [--level levels] name <on|off|reset>
 #chkconfig [--level levels] name
 
 进程
 # ps -ef                 # 查看所有进程
 # top                    # 实时显示进程状态用户
 
 -----------------------------------------------------------------------------
 文件管理常用命令:
 
 # pwd    #显示用户当前所在的目录。
 
 cd
 cd命令不仅显示当前状态,还改变当前状态,它的用发跟dos下的cd命令基本一致。
 cd ..  #切换到到上一级目录
 cd ../.. #切换到上二级目录
 cd ~  #可进入用户的home目录
 cd /   #切换到根目录
 cd -   #可进入上一个进入的目录
 
 ls
 ls命令跟dos下的dir命令一样,用于显示当前目录的内容。
 # ls  #以默认方式显示当前目录文件列表
 # ls –a  #显示所有文件包括隐藏文件
 # ls –l  #显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
 # ls –lh  #以容易理解的单位大小,即K、M、G为单位查看文件大小
 # ls -nd username    #查看目录和文件的归属uid和gid
 # ls –-help  #显示帮助信息
 # ls  |more #分屏显示,如果目录下的文件太多,用一屏显示不了,可以用这个命令
 
 mkdir
 这个命令很简单,跟dos的md命令用法几乎一样,用于建立目录。
 
 cp
 cp命令用于复制文件或目录。
 cp命令可以一次复制多个文件,例如:
 cp *.txt *.doc *.bak /home    #将当前目录中扩展名为txt、doc和bak的文件全部复制到/home目录中。
 cp -a dirname destdir   #复制目录dirname到 目录destdir
 - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
 - d 拷贝时保留链接。
 - f 删除已经存在的目标文件而不提示。
 - i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
 - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
 - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
 - l 不作拷贝,只是链接文件。
 -R 同-r
 
 rm
 rm命令用于删除文件或目录。
 rm file       #强制删除某一个文件
 
 rm -fr *   #强制删除当前目录下所有文件夹和文件
 rm -fr dir   #强制删除当前目录下叫dir的整个目录
 rm -rf !(keep)   #删除keep文件之外的所有文件
 rm -rf !(keep1 | keep2)   #删除keep1和keep2文件之外的所有文件
 -d     删除可能仍有数据的目录 (只限超级用户)
 -f      略过不存在的文件,不显示任何信息
 -i      进行任何删除操作前必须先确认
 -r      同时删除该目录下的所有目录层
 -v     详细显示进行的步骤
 要删除第一个字符为'-'的文件 (例如'-foo’),请使用以下其中一种方法:
 rm -- -foo
 rm ./-foo
 
 mv
 mv命令用于移动文件、目录或更名文件。
 参  数:
 -b或--backup  若需覆盖文件,则覆盖前先行备份。
 -f或--force  若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录。
 -i或--interactive  覆盖前先行询问用户。
 -u或--update  在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。
 -v或--verbose  执行时显示详细的信息。
 
 示例:
 $mv ye.txt /home       //移动文件
 将当前目录下的ye.txt文件移动到/home目录下
 
 $mv ye.txt ye1.txt     //文件改名
 将ye.txt文件改名为ye1.txt。
 
 $mv test1 test2       //移动目录
 如果test2目录不存在的话,linux会将test1重命名为test2,但是如果test2目录已经存在的话,就会把test1目录整个移动到test2下,形成/test2/test1的目录结构。
 
 类似于跟cp命令,mv命令也可以一次移动多个文件,在此不再赘叙。
 
 find
 find命令用于查找文件。这个命令可以按文件名、建立或修改日期、所有者(通常是建立文件的用户)、文件长度或文件类型进行搜索。
 其中指定从哪个目录开始搜索。指定搜索条件。表示找到文件怎么处理。一般来说,要用-print动作,显示 整个文件路径和名称。如果没有这个动作,则find命令进行所要搜索而不显示结果,等于白费劲。
 例如,要搜索系统上所有名称为ye的文件,可用如下命令:
 $find / -name ye -print
 这样就可以显示出系统上所有名称为ye的文件。
 
 touch
 touch file #指令改变档案的时间记录 也可用于建立一个空的文件
 使用举例
 
  touch file1.txt   //建立一个file1.txt文件,如已存在则更新此文件的存取和修改时间。 cat
 cat file #文本查看命令
 
 nano
 nano file #简单实用的文本编辑器
 
 vi
 vi file #功能强大的编辑文件命令  退出方式为:q  写入并退出 :wq
 
 chown
 修改文件和文件夹的用户和用户组属性
 chown user1 myfile.txt  #使user1用户对myfile.txt文件拥有权限
 chown -R sakia:net /tmp/sco  将 /tmp/sco这个目录的所有者和组改为sakia和组net
 
 chmod
 修改文件和文件夹读写执行属性
 chmod 777 hh.c      #把hh.c文件修改为可写可读可执行
 chmod 777 /tmp/sco  #把目录 /tmp/sco修改为可写可读可执行
 chmod -R 777 /tmp/sco   #修改/tmp/sco下所有的文件和文件夹及其子文件夹属性为可写可读可执行
 777就是拥有全权限。根据需要可以自由组合用户和组的权限。
 
 ln
 该命令在文件之间创建链接。
 语法:ln [选项] 目标 [链接名]
 链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(SymbolicLink)。默认情况下,ln产生硬链接。
 例:$ ln - s lunch /home/xu
 用户为当前目录下的文件lunch创建了一个符号链接/home/xu。
 -s  建立符号链接。
 
 man
 man name  #读取相关命令的帮助
 
 startx
 #运行Linux图形环境
 
 reboot
 重启命令,不必多说。
 
 halt
 等于shutdown -h命令,关机命令,不必多说。
 使用示例:
 halt  -p  关机并关闭电源
 
 
 
 |