zoukankan      html  css  js  c++  java
  • Linux常用基本命令及应用技巧1

    Linux常用基本命令及应用技巧1
    2007-05-16 16:42
    新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握。

      由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握。本章我们就来介绍Linux的常用基本命令。

      首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中“系统管理员”拥有最高权限。

      在启动Linux后屏幕出现如下界面显示:

      ……

      Red Hat Linux release 9 (Shrike)

      Kernel 2.4.20.8 on an i686

      login:

      输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个“#”提示 符时,表明你登录成功!

      屏幕显示Linux提示符: [root@localhost root]#_

      这里需要说明的是“Red Hat Linux release 9 (Shrike)”表示当前使用的操作系统的名称及版本。“2.4.20.8”表示Linux操作系统的核心版本编号。“i686”表示该台电脑使用的CPU的等级。

      下面我们来介绍常用基本命令

      一,注销,关机,重启

      注销系统的logout命令

      1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:

      [root@localhost root]#logout

      Red Hat Linuxrelease 9(Shike)

      Kernel 2.4.20.8 on an i686

      Login: ← 回到登陆的画面

      2,关机或重新启动的shutdown命令

      Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。

      参数说明如下:

       立即关机:-h 参数让系统立即关机。范例如下:

      [root@localhost root]#shutdown –h now ← 要求系统立即关机

     指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下:

      [root@localhost root]#shutdown now ← 立刻关机

      [root@localhost root]#shutdown +5 ← 5分钟后关机

      [root@localhost root]#shutdown 10:30 ← 在10:30时关机

       关机后自动重启:-r 参数设置关机后重新启动。范例如下:

      [root@localhost root]#shutdown -r now ← 立刻关闭系统并重启

      [root@localhost root]#shutdown -r 23:59 ← 指定在23:59时重启动

      3,重新启动计算机的reboot命令

      顾名思义,reboot命令是用来重新启动系统的。常用的参数如下:

       -f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。

       -I 参数:在在重新启动之前关闭所有网络接口。

      虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了

      二,文件与目录的操作

      列出文件列表的ls命令

      1,ls(list)命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例如下:

       显示当前目录的内容:

      [tony@free tony]$ ls

      Desktop mail myinstall.log test.txt ← 有两个目录及两个文件夹

       当运行ls命令时,并不会显示名称以“.”开头的文件。因此可加上“-a”参数指定要列出这些文件。范例如下:

      [tony@free tony]$ ls –a

       以“-s”参数显示每个文件所有的空间,并以“-S”参数指定按所有占用空间的大小排序。范例如下:

      [tony@free tony]$ ls –s –S

      总计36

      4 Desktop 4 mail 24 myinstall.log 4 test.txt

       在ls命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下:

      [tony@free tony]$ ls –l/usr/games

    2,切换目录的cd命令

      cd(change directory)命令可让用户切当前所在的目录。范例如下:

      [tony@free home]$ cd tony ← 切换到当前目录下的tony子目录

      [tony@free tony]$ cd .. ← 切换到上一层目录

      [tony@free home]$ cd / ← 切换到系统根目录

      [tony@free /]$ cd ← 切换到用户主目录

       [tony@free tony]$ cd /usr/bin ← 切换到/usr/bin目录

      3,创建目录的mkdir命令

      Mkdir(make directory)命令可用来创建子目录。下面的范例会在所在目录下创建tool子目录。

      [tony@free tony]$ mkdir tool

      4,删除目录的rmdir命令

      rmdir(remove directory)命令可用来删除“空”的子目录。范例如下:

      [tony@free tony]$ rmdir tool ← 删除tool目录

      5,复制文件的cp命令

      cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令将以个文件复制成另一个文件或复制到某个目录时,需要指定原始文件名与目的文件名或目录。范例如下:

      [tony@free tony]$ cp data1.txt data2.txt ← 将data1.txt复制成data2.txt

      [tony@free tony]$ cp data3.txt /tmp/data ← 将data3复制到/tmp/data目录中

       显示复制过程:加入-v参数可显示命令执行过程。范例如下:

      [tony@free tony]$ cp zip.txt zip2.txt ← 一般状态下不会显示复制过程

      [tony@free tony]$ cp –v zip.txt zip3.txt ← 以-v显示复制过程

       zip.txt ->zip3.txt

       递回复制:加入“-R”参数可同时复制目录下的所有文件及子目录。范例如下:

      [tony@free tony]$ cp –v –R * backup ← 将所有文件(含子目录文件)复制到backup目录

      6,删除文件或目录的rm命令

      rm(remove)命令可以删除文件或目录。范例如下:

      [tony@free tony]$ rm myfile ← 删除指定的文件

      [tony@free tony]$ rm * ← 删除当前目录中的所有文件

    rm命令的常用参数如下:

       强迫删除:使用-f参数时,rm命令会直接删除文件,不再询问。范例如下:

      [tony@free tony]$ rm –f *.txt ← 强迫删除文件

       递回删除:-r 也是一个相当常用的参数,使用此参数可同时删除指定目录下的所有文件及子目录。范例如下:

      [tony@free tony]$ rm –r data ← 删除data目录(含data目录下所有文件和子目录)

      [tony@free tony]$ rm –r * ← 删除所有文件(含当前目录所有文件,所有子目录和子目录下的文件)

       强制删除指定目录:当使用-r参数删除目录时,若该目录下有许多子目录及文件,则系统会不间断地询问,以确认您的确要删除目录或文件。若已确定要删除所存目录及文件,则可以使用-rf参数,如此一来,系统将直接删除该目录中所有的文件及子目录,不再询问。范例如下:

      [tony@free tony]$ rm –rf tmp 强制删除tmp目录及该目录下所有文件及子目录

       显示删除过程:使用-v 参数。范例如下:

      [tony@free tony]$ rm –v

      7,让显示画面暂停的more命令

      为了避免画面显示瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格键继续显示下一个画面,或按Q键停止显示。

       当使用ls命令查看文件列表时,若文件太多则可以配合more命令使用。范例如下:

      [tony@free bin]$ ls –al   more

       单独使用more命令时,可用来显示文字文件的内容。范例如下:

      [tony@free tony]$ more data.txt

      8,连接文件的cat命令

      cat(concatenate) 命令可以显示文件的内容(经常和more命令搭配使用),或是将数个文件合并成一个文件。范例如下:

       逐页显示 preface.txt的内容:

      [tony@free tony]$ cat preface.txt   more

       将preface.txt 附加到outline.txt文件之后:

      [tony@free tony]$ cat preface.txt >> outline.txt

       将new.txt和info.txt合并成readme.txt文件:

      [tony@free tony]$ cat new.txt info.txt >readme.txt

    9,移动或更换文件,目录名称的mv命令

      mv (move)命令可以将文件及目录移动到另一个目录下面,或更换文件及目录的名称。范例如下:

      [tony@free backup]$ mv a.txt .. ← 将a.txt文件移到上层目录

      [tony@free backup]$ mv z1.txt z3.txt ← 将 z1.txt改名成z3.txt

      [tony@free backup]$ cd.. ← 切换到上一层目录

      [tony@free tony]$ mv backup.. ← backup 目录上移一层

      10,显示当前所在目录的pwd命令

      pwd(print working directory)命令可显示用户当前所在的目录。范例如下:

      [tony@free tony]$ pwd

      /home/tony ← 当前所在目录为“/home/tony”

      11,查找文件的locate命令

      locate 命令可用来搜索包含指定条件字符串的文件或目录。范例如下:

      [tony@free tony]$ locate zh_CN 列出所有包含“zh_CN”字符串的文件和目录。

      由于locate命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时更新数据库,但对于刚新增或删除的文件、目录,仍然可能会因为数据库尚未更新而无法查得,此时可用root身份运行updatedb命令更新,为此数据库得内容正确。

      12,搜索字符串得grep命令

      grep 命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太多不必要得信息。范例如下:

      [tony@free etc]$ grep text *.conf ← 搜索当前目录中扩展名为.conf且包含“text”字符串得文件。

      grep:amd.conf: ← 拒绝不符权限得操作

      grep:diskcheck.conf: ← 拒绝不符权限得操作

      grep:grub.conf ← 拒绝不符权限得操作

       若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权限的操作之类的错误信息,可使用-s参数消除。

       [tony@free etc]$ grep –s text *.conf

    13,重导与管道

      重导(redirect)可将某命令的结果输出导文件中,它有两中命令:“>”和“>>”。“>”可将结果输出到文件中,该文件原有的内容会被删除:“>>”则将结果附加到文件中,原文件内容不会被清除。范例如下:

      [tony@free tony]$ ls –a>dir.txt ← 将ls –a命令执行结果输出到dir.txt文件。

      [tony@free tony]$ cat data1.txt >> data2.txt ← 将 data1.txt 内容附加到data2.txt文件之后。

      通道(pipe)命令的符号是“ ”,可将某命令的结果输出给另一命令,一下范例将ls命令的输出结果传给grep命令过滤:

      [tony@free etc]$ ls   gerp conf ← 搜索并显示ls命令运行结果中包含有“conf”字符串

      在举一个删除文件或目录的例子,可以利用yes命令重复输出“y”字符的特性,将结果传给rm命令,如此即可避免重复输入“y”:

      [tony@free tony]$ yes   rm –r mydir

      三,使用光盘及软盘

      在Linux的文字模式下要使用光盘或软盘,并不是只将光盘或软盘放入即可,用户需要运行加载的命令,才可读写数据。所谓加载就是将存储介质(如光盘和软盘)指定成系统中的某个目录(如/mnt/cdrom或mnt/floppy)。通过直接存取此加载目录,即可读写存储介质中的数据。以下就来看看文字模式下的加载及卸载命令。

      1,加载的mount命令

      要使用光盘时先把光盘放入光驱,然后执行加载的mount命令,将光盘加载至系统中:

      [tony@free tony]# mount/dev/cdrom/mut/cdrom ← 加载光盘

      同理,使用软盘之前也需要和光盘一样,必须先加载后才能使用:

      [tony@free tony]# mount/dev/fd0/mut/floppy ← 加载软盘

      2,卸载的umount命令

      如果不需要使用光盘或软盘,则需先执行卸载命令之后,才能将光盘或软盘退出。范例如下:

      [tony@free tony]# umount / mnt/cdrom ← 光盘卸载

      在不使用软盘时执行umount 命令卸载软盘,再将软盘拿出

      [tony@free tony]# umount / mnt/ ← 软盘卸载

    四,在后台运行程序

      用户有时的程序有可能要花费很多时间,如果将它放在前台运行,将导致无法继续做其他事情,最好的方法就是将它放在后台运行,甚至可能希望在用户注销系统后,程序还可以继续运行。让我们看看那如何实现这一目的。

      1,在后台运行程序的&、bg命令

      将程序放到后台运行的最简单方法就是在命令最后加上“&”,范例如下:

      [tony@free root]# updatedb & ← 在后台执行 locate 数据库更新命令

      [tony@free root]# bg ← 将更新操作放到后台运行

      2,前台运行的程序fg命令

      如果用户当前已有程序在后台运行,可以输入fg命令,将它从背景中移到前台运行:

      [tony@free root]# fg ← 放到前台执行的命令会显示出来

      3,在退出后让程序继续运行的nohup命令

      此命令可使用户退出系统后,程序继续运行。范例如下:

      [tony@free rony]$ nohup myserver &

      然后用户就可以退出了,当再次登录的时候,可以用ps –aux命令看到程序仍在后台中运行。

      五,任务调度命令

      计算机有很多程序需要周期性的被运用,例如清理磁盘中不要的暂存盘、备份系统数据、检查远程服务器的邮件等。对于这些重复性的工作,其实不需要每次都辛苦地运行这些程序。可利用任务调度命令,指定系统定期在某个时间运行这些程序,轻轻松松完成想要执行的工作。

      任务调度的crond常驻命令

      crond 是Linux用来定期执行程序的命令。当安装完成操作系统后,默认便会启动此任务调动命令。crond命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作,便会自动执行该工作。由于任务调度中间的操作过程十分繁杂,我们只将任务调度文件的写法介绍给大家,供大家参阅:

      Minute Hour Day Month DayOfWeek Command

      在这段文字中除了“Command”是每次都必须指定的字段以外,其他自动皆可视需求自行决定是否指定。

      六,任务调度的系统工作

      /ect/crontab/文件是Linux系统工程的任务调度设置文件,其默认的内容如下:

      SHELL=/bin/bash ← 指定执行任务调度工作时所使用的SHELL

      PATH=/shin:/bin:/usr/sbin:/usr/bin ← 指定命令搜索的路径

      MAILTO=root ← 指定将输出结果给root用户

      HOME=/ ← 指定跟目录


    Linux Shell 命令集锦 (1)

     

    第 [1] [2] 页

      所有命令均包含参数。具体使用方法请在命令后使用 -help 或 --help (视命令不同)。另一种学习 Sehll 命令的方法是“在线手册”。具体使用方法就是输入 man 命令,将需要了解的命令作为参数。

      比如,我不太清楚 echo 命令的使用方法。就可以在 Sehll 命令提示符中输入:man echo。然后,终端中会显示非常详细的命令说明文档。不过令人遗憾的是,我至今未见过中文的。本站以后会有专文介绍一些 Shell 命令的详细使用方法。

    adduser
      创建新的用户账户
    alias
      设置命令的别名
    bzips
      .bz2的文件压缩程序
    cal
      月历显示
    cat
      将所有内容输出到标准输出设备
    chfn
      更改finger命令显示的信息
    chgrp
      变更文件与目录的所属组
    chmod
      更换文件或目录的权限
    chown
      更换文件或目录的拥有者或所在组
    clear
      清除画面上的信息
    col
      滤除控制字符
    cp
      复制文件或目录
    crontab
      设置定时器
    date
      设置显示系统时间及日期
    dd
      由键盘输入文件中的数据,然后依照指定格式来转换数据,再输出至所指定的文件或屏幕上
    df
      显示磁盘文件系统的使用状况
    dmesg
      显示开机信息
    du
      显示目录或文件所占磁盘空间
    e2fsck
      检查ext2文件系统
    echo
      文字显示
    edquota
      编辑quota
    egrep
      查找文件中符合条件的字符串
    exec
      shell执行命令后即交出控制权
    export
      设置显示环境变量
    fdisk
      磁盘分割(分区)
    fg
      前台执行程序或命令
    fgrep
      查找文件中符合条件的字符串
    file
      识别文件类型
    find
      查找文件或目录
    finger
      显示用户信息
    free
      查看内存状态
    fsck
      检查文件系统并试着修复错误
    ftp
      传输文件
    grep
      搜索文件中符合条件的字符串
    groupadd
      创建组
    groupdel
      删除组
    groupmod
      改变组识别码或名称
    gunzip
      文件解压缩
    gzip
      文件压缩
    halt
      关闭系统
    help
      shell创建命令内容
    history
      列出所有使用过的命令
    hostname
      查询及设置主机名称
    id
      显示用户ID及所属的组ID
    ifconfig
      显示或设置网络上状态
    insmod
      加载模块
    jobs
      显示正在后台执行的工作
    kill
      删除执行中的程序或工作
    last
      列出目前与过去登录系统的用户相关信息
    less
      显示文件内容
    lilo
      安装内核加载、开机管理程序
    linuxconf
      设置Linux系统
    ln
      连接文件或目录
    locate
      寻找文件
    login
      登录系统
    logout
      注销系统
    ls
      列出目录内容
    lsmod
      显示已加载系统的模块名称
    mail
      E-mail管理程序
    make
      编译系统核心或模块
    man
      在线查询命令
    mcopy
      复制MS-DOS文件
    mdel
      删除MS-DOS文件
    mdeltree
      删除MS-DOS文件及包含的子目录文件
    mdir
      显示MS-DOS目录
    mkbootdisk
      创建目前系统的引导盘
    mkdir
      创建目录
    mke2fs
      创建ext2文件系统
    mkfs
      创建各种文件系统
    more
      一页一页地显示文件内容(文本文件)
    miunt
      挂入文件系统
    mouseconfig
      设置鼠标相关参数
    mv
      移动或更名现有的文件或目录
    netconfig
      Red Hat Linux用来设置网络功能的图形接口程序
    netstat
      显示目前系统的网络状态
    nice
      变更程序执行时的优先等级
    nohup
      在用户注销系统后继续以后台的方式执行指定的命令
    open
      查找第一个可使用的虚拟终端,并执行位于“--”符号后的命令
    passwd
      提供管理员及用户管理或变更密码
    patch
      利用修补文件来修改源文件
    pine
      邮件处理程序,它可收发电子邮件及浏览新闻组
    ping
      使用ICMP对远程主机发出要求响应的信息,以侦测远程主机的网络功能是否正常
    ps
      显示程序执行的状况
    pwd
      显示目前的工作目录
    quota
      查询磁盘空间限制以及使用情形
    quotacheck
      检查磁盘使用空间及限制
    quotaoff
      关闭磁盘使用空间限制
    quotaon
      开启磁盘使用空间限制
    reboot
      停止系统运作并重新开机
    renice
      重新调整程序执行的优先级
    repquota
      显示磁盘空间限制状况
    rm
      删除文件或目录
    rmdir
      删除目录
    rpm
      管理 Red Hat Linux 套件
    set
      设置 Shell 的执行方式
    setup
      设置公用程序,可设置的选项包括:登录认证方法、键盘配置、
    鼠标配置、开机启动服务、声卡本配置、时区设置和 XWindow 配置等
    shutdown
      系统关机
    startx
      启动 XWindow
    stat
      显示 inode 内容
    su
      变更用户身份
    sync
      将内存缓冲区内的数据写入磁盘
    tail
      列出文件内容最后部分
    talk
      和其他用户交谈
    tar
      文件备份
    telnet
      登录远程主机
    top
      显示及管理执行中的程序
    traceroute
      显示封包到远程主机间的详细路径
    umask
      在创建文件时预设的权限屏蔽
    umount
      卸载文件系统
    unalias
      删除别名
    uname
      显示系统信息
    uncompress
      将 .Z 文件解压缩
    unzip
      将 .Zip 文件解压缩
    useradd
      创建用户账号
    userdel
      删除用户账户
    vi
      编辑文本文件
    w
      显示目前登录系统的用户信息
    wall
      将信息传送至每位终端用户
    whereis
      查找文件,预设 whereis 去查找的文件包括:/bin、/etc、/sbin、
    /usr/bin、/usr/etc、/usr/games、/usr/include、/usr/lib、
    /usr/local、/usr/man、/usr/sbin、/usr/src、/usr/local/bin、
    /usr/local/etc、/usr/local/game、/usr/local/lib 和/usr/local/man>
    which
      在环境变量¥PATH 设置的目录中,搜索符合条件的文件
    who
      显示目前登录系统的用户信息
    whoami
      显示用户名称
    whois
      搜索并显示用户信息
    write
      可传送信息给另一位登录的用户
    Xconfigurator
      设置 Xfree86
    xf86config
      设置 XFree86
    zip
      压缩程序

  • 相关阅读:
    【模板】并查集
    排队布局
    list
    js获取宽度
    js获取按键
    sublime 自定义快捷代码
    file
    git add Untracked files
    git branch
    git
  • 原文地址:https://www.cnblogs.com/kentyshang/p/759796.html
Copyright © 2011-2022 走看看