zoukankan      html  css  js  c++  java
  • Linux shell常用命令

    一、文件、目录操作命令

    1、ls命令

    功能:显示文件和目录的信息

      ls 以默认方式显示当前目录文件列表

      ls -a 显示所有文件包括隐藏文件

      ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行

      ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G)

      ls -lt 显示文件,按照修改时间排序

    2、cd命令

    功能:改名目录

      cd dir 切换到当前目录下的dir目录

      cd / 切换到根目录

      cd .. 切换到到上一级目录

      cd ../.. 切换到上二级目录

      cd ~ 切换到用户目录,比如是root用户,则切换到/root下

    3、cp命令

    功能:copy文件

      cp source target 将文件source复制为target

      cp /root /source. 将/root下的文件source复制到当前目录

      cp –av soure_dir target_dir 将整个目录复制,两目录完全一样

    4、rm命令

    功能:删除文件或目录

      rm file 删除某一个文件

      rm -f file 删除时候不进行提示。可以于r参数配合使用

      rm -rf dir 删除当前目录下叫dir的整个目录

    5、mv命令

    功能:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令

      mv source target 将文件source更名为target

    6、diff

    功能:比较文件内容

      diff dir1 dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出

      diff file1 file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的

      comm file1 file2 比较文件,显示两个文件不相同的内容

    7、ln命令

    功能:建立链接。windows的快捷方式就是根据链接的原理来做的

      ln source_path target_path 硬连接

      ln -s source_path target_path 软连接

    二、查看文件内容命令

    1、cat命令

    功能:显示文件的内容,和DOS的type相同

      cat file 

    2、more命令

    功能:分页显示命令

      more file

      more命令也可以通过管道符(|)与其他的命令一起使用,例如:

      ps ux|more

      ls|more

    3、tail 命令

    功能:显示文件的最后几行

      tail -n 100 aaa.txt 显示文件aaa.txt文件的最后100行

    4、vi命令

      vi file 编辑文件file

      vi 原基本使用及命令:

      输入命令的方式为先按[ESC]键,然后输入:w(写入文件),:w!(不询问方式写入文件),:wq保存并退出,:q退出,q!不保存退出

    5、touch命令

    功能:创建一个空文件

      touch aaa.txt  创建一个空文件,文件名为aaa.txt

    三、基本系统命令

    1、man命令

    功能:查看某个命令的帮助,如果你不知道某个命令的用法不懂,可以问他,他知道就回告诉你

      man ls 显示ls命令的帮助内容

    2、w命令

    功能:显示登录用户的详细信息

      Sarge:~# w

      22:06:51 up 43 min,  1 user,  load average: 0.00, 0.00, 0.00

      USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

      zhoulj   pts/0    10.140.0.109     21:24    0.00s  0.85s  0.09s sshd: zhoulj [priv]

    3、who命令

    功能:显示登录用户

      Sarge:~# who

      zhoulj   pts/0        Mar 13 21:24 (10.140.0.109)

    4、last命令

    功能:查看最近那些用户登录系统

    5、date命令

    功能:系统日期设定

      date 显示当前日期时间

      date -s 20:30:30 设置系统时间为20:30:30

      date -s 2002-3-5 设置系统时期为2003-3-5

      date -s "060520 06:00:00" 设置系统时期为2006年5月20日6点整。

    6、clock命令

    功能:时钟设置

      clock –r 对系统Bios中读取时间参数

      clock –w 将系统时间(如由date设置的时间)写入Bios

    7、uname命令

    功能:查看系统版本

      uname -R 显示操作系统内核的version

      Sarge:~# uname -a

      Linux Sarge 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux

    8、关闭和重新启动系统命令

      reboot   重新启动计算机

      shutdown -r now  重新启动计算机,停止服务后重新启动计算机

      shutdown -h now  关闭计算机,停止服务后再关闭系统

      halt   关闭计算机

      一般用shutdown -r now,在重启系统是,关闭相关服务,shutdown -h now也是如此。

    9、su命令

    功能:切换用户

      su -  切换到root用户

      su - zhoulj 切换到zhoulj用户,

      注意:- ,他很关键,使用-,将使用用户的环境变量

    四、监视系统状态命令

    1、top命令

    功能:查看系统cpu、内存等使用情况

    2、free命令

    功能:查看内存和swap分区使用情况

      Sarge:~# free -tm

                      total       used       free     shared    buffers     cached

      Mem:           187         42        145          0          6         16

      -/+ buffers/cache:         19        167

      Swap:          243          0        243

      Total:         430         42        388

    3、uptime

    功能:现在的时间 ,系统开机运转到现在经过的时间,连线的使用者数量,最近一分钟,五分钟和十五分钟的系统负载

      Sarge:~# uptime

      21:54:46 up 31 min,  1 user,  load average: 0.00, 0.00, 0.00

    4、vmstat命令

    功能:监视虚拟内存使用情况

      # vmstat

      procs                      memory      swap          io     system         cpu

      r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa

      1  0      0  63704   8100  32272    0    0     8     3  103    17  0  1 98  1

    5、ps命令

    功能:显示进程信息

      ps ux 显示当前用户的进程

      ps uxwww 显示当前用户的进程的详细信息

      ps aux 显示所有用户的进程

      ps ef 显示系统所有进程信息

    6、kill命令

    功能:干掉某个进程,进程号可以通过ps命令得到

      kill -9 1001 将进程编号为1001的程序干掉

      kill all -9 apache 将所有名字为apapche的程序杀死,kill不是万能的,对僵死的程序则无效。

    五、磁盘操作命令

    1、df命令

    功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

      -a 列出全部目录

      -Ta 列出全部目录,并且显示文件类型

      -B 显示块信息

      -i 以i节点列出全部目录

      -h 按照日常习惯显示(如:1K、100M、20G)

      -x [filesystype] 不显示[filesystype]

      # df -Th

      Filesystem    Type    Size  Used Avail Use% Mounted on

      /dev/sda1     ext3    265M   64M  187M  26% /

      tmpfs        tmpfs     94M     0   94M   0% /dev/shm

      /dev/sda6     ext3    714M  8.1M  667M   2% /home

      /dev/sda8     ext3    956M  215M  691M  24% /usr

      /dev/sda7     ext3    714M   57M  619M   9% /var

    2、du命令

    功能:检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间。

      -s [dirName] 显示目录占用总空间

      -sk [dirName] 显示目录占用总空间,以k为单位

      -sb [dirName] 显示目录占用总空间,以b为单位

      -sm [dirName] 显示目录占用总空间,以m为单位

      -sc [dirName] 显示目录占用总空间,加上目录统计

      -sh [dirName] 只统计目录大小

      # du -sh /etc

      1.3M     /etc

    3、mount命令

    功能:使用mount命令就可在Linux中挂载各种文件系统。

      格式:mount -t  设备名 挂载点

    (1)、mount /dev/sda1  /mnt/filetest

      mount -t vfat /dev/hda  /mnt/fatfile

      mount -t ntfs /dev/hda  /mnt/ntfsfile

      mount -t iso9660 /dev/cdrom  /mnt/cdrom

      mount -o  设备名 挂载点

    (2)、使用usb设备

      modprobe usb-storage

      mkdir /mnt/usb

      mount -t auto /dev/sdx1 /mnt/usb

      umount /mnt/usb

    4、mkswap命令

    功能:使用mkswap命令可以创建swap空间,如:

      debian:~# mkswap -c /dev/hda4

      debian:~# swapon /dev/hda4      #启用新创建的swap空间,停用可使用swapoff命令

    5、fdisk命令

    功能:对磁盘进行分区

      fdisk /dev/xxx 格式化xxx设备(xxx是指磁盘驱动器的名字,例如hdb,sdc)

      fdisk -l 显示磁盘的分区表

    6、mkfs命令

    功能:格式化文件系统,可以指定文件系统的类型,如ext2、ext3、fat、ntfs等

      格式1:mkfs.ext3 options /dev/xxx

      格式2:mkfs -t ext2 options /dev/xxx

      -b  块大小

      -i   节点大写

      -m   预留管理空间大小

      debian:~#mkfs.ext3 /dev/sdb1

    7、e2fsck命令

    功能:磁盘检测

      e2fsck /dev/hda1 检查/dev/hda1是否有文件系统错误,提示修复方式

      e2fsck -p /dev/hda1 检查/dev/hda1是否有错误,如果有则自动修复

      e2fsck -y /dev/hda1 检查错误,所有提问均于yes方式执行

      e2fsck -c /dev/hda1 检查磁盘是否有坏区

    8、tune2fs命令

    功能:调整ext2/ext3文件的参数

      -l  查看文件系统信息

      -c  设置强制自检的挂载次数

      -i  设置强制自检的间隔时间,单位天

      -m  保留块的百分比

      -j  将ext2文件系统转换成ext3格式

      # tune2fs -l /dev/sda1

    9、dd命令

    功能:功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。

      跟DOS下的diskcopy命令的作用类似。

      dd if=/dev/fd0 of=floppy.img 将软盘的内容复制成一个镜像

      dd if=floppy.img of=/dev/fd0 将一个镜像的内容复制到软盘,做驱动盘的时候经常用。

    六、用户和组相关命令

    1、groupadd命令

    功能:添加组

      groupadd test1  添加test1组

      groupadd -g 1111 test2  添加test2组,组id为1111

    2、useradd命令

    功能:添加用户

      useradd user1  添加用户user1,home为/home/user1,组为user1

      useradd -g test1 -m -d /home/test1 test1 添加用户test1,home为/home/test1,组为test1

      user list 显示已登陆的用户列表

    3、passwd命令

    功能:更改用户密码

      passwd user1 修改用户user1的密码

      passwd -d root 将root用户的密码删除

    4、userdel命令

    功能:删除用户

      userdel user1 删除user1用户

    5、chown命令

    功能:改变文件或目录的所有者

      chown user1 /dir 将/dir目录设置为user1所有

      chown -R user1.user1 /dir 将/dir目录下所有文件和目录,设置为user1所有,组为user1。-R递归到下面的每个文件和目录

    6、chgrp命令

    功能:改变文件或目录的所有组

      chgrp user1 /dir 将/dir目录设置为user1所有

    7、chmod命令

    功能:改变用户的权限

      chmod a+x file 将file文件设置为可执行,脚本类文件一定要这样设置一个,否则得用bash file才能执行

      chmod 666 file 将文件file设置为可读写

      chmod 750 file 将文件file设置为,所有者为完全权限,同组可以读和执行,其他无权限

    8、id命令

    功能:显示用户的信息,包括uid、gid等

      # id zhoulj

      uid=500(zhoulj) gid=500(zhoulj) groups=500(zhoulj)

    9、finger命令

    功能:显示用的信息

      注意:debian下没有该命令。

      # finger zhoulj

      Login: zhoulj                           Name:

      Directory: /home/zhoulj                 Shell: /bin/bash

      On since Sun May 21 07:59 (CST) on pts/0 from 192.168.1.4

      No mail.

      No Plan.

    七、压缩命令

    1、gzip格式命令

    功能:压缩文件,gz格式的

      注意:生成的文件会把源文件覆盖

      gzip -v  压缩文件,并且显示进度

      -d  解压缩

      gnuzip  -f  解压缩

      例如:# gzip a.sh

         #ll

          -rwxr-xr-x    1 root     root           71 12月 18 21:08 a.sh.gz

            # gzip -d a.sh.gz

           #ll

           -rwxr-xr-x    1 root     root           48 12月 18 21:08 a.sh

    2、zip格式命令

    功能:压缩和解压缩zip命令

      zip   

      unzip   

      # zip a.sh.zip a.sh

        adding: a.sh (stored 0%)

      -rw-r--r--    1 root     root          188  5月 21 10:37 a.sh.zip

      # unzip a.sh.zip

      Archive:  a.sh.zip

      replace a.sh? [y]es, [n]o, [A]ll, [N]one, [r]ename: r

      new name: a1.sh

      extracting: a1.sh                  

      # ll

      -rwxr-xr-x    1 root     root           48 12月 18 21:08 a1.sh

    3、bzip2根式命令

    功能:bzip2格式压缩命令,

      注意:生成的文件会把源文件覆盖

      bzip2   

      bunzip2

      例如:# bzip2 a.sh

      -rwxr-xr-x    1 root     root           85 12月 18 21:08 a.sh.bz2

      # bunzip2 a.sh.bz2

      -rwxr-xr-x    1 root     root           48 12月 18 21:08 a.sh

    4、tar命令

    功能:归档、压缩等,比较重要,会经常使用。

      -cvf    压缩文件或目录

      -xvf     解压缩文件或目录

      -zcvf    压缩文件或,格式tar.gz

      -zxvf    解压缩文件或,格式tar.gz

      -zcvf     压缩文件或,格式tgz

      -zxvf     解压缩文件或,格式tgz

      # tar cvf abc.tar *.sh

      # tar xvf abc.tar

      # tar czvf abc.tar.gz *.sh

      -rw-r--r--    1 root     root        20480  5月 21 10:50 abc.tar

      -rw-r--r--    1 root     root         1223  5月 21 10:53 abc.tar.gz

      # tar xzvf abc.tar.gz

    八、网络相关命令

    1、ifconfig命令

    功能:显示修改网卡的信息

      ifconfig  显示网络信息

      ifconfig eth0 显示eth0网络信息

      修改网络信息:

      ifconfig eth0 192.168.1.1 netmask 255.255.255.0 设置网卡1的地址192.168.1.1,掩码为255.255.255.0

      ifconfig eth0:1 192.168.1.2    捆绑网卡1的第二个地址为192.168.1.2

      ifconfig eth0:x 192.168.1.n    捆绑网卡1的第n个地址为192.168.1.n

      # ifconfig eth0:1 192.168.1.11

      # ifconfig

      eth0      Link encap:Ethernet  HWaddr 00:0C:29:06:9C:24  

                inet addr:192.168.1.5  Bcast:192.168.1.255  Mask:255.255.255.0

                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

                RX packets:4220 errors:0 dropped:0 overruns:0 frame:0

                TX packets:3586 errors:0 dropped:0 overruns:0 carrier:0

                collisions:0 txqueuelen:1000

                RX bytes:342493 (334.4 Kb)  TX bytes:469020 (458.0 Kb)

                Interrupt:9 Base address:0x1400

      eth0:1    Link encap:Ethernet  HWaddr 00:0C:29:06:9C:24  

                inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0

                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

                Interrupt:9 Base address:0x1400

    2、route命令

    功能:显示当前路由设置情况

      route 显示当前路由设置情况,比较慢一般不用。

      route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254  添加静态路由

      route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254  添加静态路由

      route add default gw 192.168.1.1 metric1    设置192.168.1.1为默认的路由

      route del default       将默认的路由删除

      # route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254

      # netstat -nr

      # route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254   

      # netstat -nr

      Kernel IP routing table

      Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface

      192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

      169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0

      0.0.0.0         192.168.1.254   0.0.0.0         UG        0 0          0 eth0

    3、netstat命令

    功能:显示网络状态

      netstat -an  查看网络端口信息

      netstat -nr 查看路由表信息,比route快多了,

    4、启动网络的命令

      redhat族的命令:

      /etc/init.d/network

      debian命令:

      /etc/init.d/networking

      /etc/init.d/network stop 停止网络,

      /etc/init.d/network start 启动网络,

    5、手工修改网络配置

      (1)、debian系统

      配置文件位置为:/etc/network/interfaces

      # The loopback network interface

      auto lo

      iface lo inet loopback

      # The primary network interface

      修改后保存配置后,运行

      /etc/init.d/networking restart

      网络配置就改变了

      (2)、redhat系统

      配置文件位置为:/etc/sysconfig/network-scripts/ifcfg-eth0

      修改后保存配置后,运行

      /etc/init.d/network restart

      或者

      service network restart

      网络配置就改变了。

      默认DNS的文件的位置为:/etc/resolv.conf  

      #cat /etc/resolv.conf

    6、网络排错

    (1)、ping命令

    功能:不说了,不知道就用干这行了。

      ping

    (2)、traceroute命令

    功能:路由跟踪

      traceroute

      traceroute 207.68.173.7

    (3)、nslookup命令

    功能:域名解析排错

    九、其他命令

    1、ssh命令

    功能:远程登陆到其他UNIX主机

      ssh -l user1 192.168.1.2 使用用户名user1登陆到192.168.1.2

        使用用户名user1登陆到192.168.1.2

    2、scp命令

    功能:安全copy

      scp abc.tar.gz

      :~ 将本地的abc.tar.gz 复制到 192.168.1.5的user1用户的根(/home/user1)下。

    3、telnet命令

    功能:登陆到远程主机

      telnet 192.168.1.5

    哈 哈 哈
  • 相关阅读:
    Linux之C编译器gcc和makefile使用简介
    基于OWin的Web服务器Katana发布版本3
    OAuth和OpenID的区别
    关于 Token,你应该知道的十件事
    HTTP Header 详解
    Entity Framework教程及文章传送门
    CSP(Content Security Policy) 入门教程
    gulp构建工具的几个使用技巧
    浅谈程序员的英语学习
    如何选择正确的angular2学习曲线?
  • 原文地址:https://www.cnblogs.com/shanwu369/p/10977265.html
Copyright © 2011-2022 走看看