LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 730|回复: 1

Linux Command (1): 非程序员使用的GNU实用程序

[复制链接]
发表于 2009-3-26 10:49:24 | 显示全部楼层 |阅读模式
---------------------------------------------
Linux Command (1):        非程序员使用的GNU实用程序
---------------------------------------------

1.date
        date [yymmddhhmm[.ss]]
        功能:实用程序,显示和设置当前日期.

2.clear
        功能:实用程序,清屏.

3.man
        man [section] word
        man -k keyword
        (k:1-8 || 1-9)
        功能:实用程序,获得联机帮助.
        手册页中一般分为以下几个主题:
                (1)用户命令
                (2)系统调用
                (3)库函数
                (4)特殊文件
                (5)文件格式
                (6)游戏
                (7)综合
                (8)系统管理和特权命令
                (9)内核接口(不是所有的Linux分发版都包括)

4.^C = intr
        Control-C
        功能:终止进程.

5.^D = eof
        Control-D
        功能:输入结束.
        (在最后一行输入之后,另起一行Control-D)

6.^S = stop
        Control-S
        功能:终止终端输出.

7.^Q = start
        Control-Q
        功能:重启终端输出.

8.passwd
        功能:实用程序,设置密码.

9.pwd
        功能:实用程序,打印shell的当前工作目录.

10.cat
        cat -n {fileName}*
        功能:实用程序,从标准输入式一系列文件中接受输入并在标准输出中显示.
        -n选项在结果中添加行号.
        (cat可以带任意多个文件作为参数,并依次列出每个文件.适合显示小文件,但在输出满屏时不会暂停.)

11.ls
        ls -adglsFGR {fileName}* {directoryName}*
        功能:实用程序,列出目录内容.
        -a选项显示当前工作目录下的所有文件.
        {directoryName}*显示所列目录的内容.
        {fileName}*显示具体文件的信息.
        -d选项列出目录本身的详细信息,而不是目录中的文件.
        -g选项列出文件组.
        -l选项输出长列表,包括权限标志,文件所有者和上次修改时间.
        -s选项显示文件占用磁盘块的数量(一块大小一般在512字节~4K字节之间).
        -F选项在文件名之后添加一个字符表示该文件的类型:*表示可执行文件,/表示目录文件,@表示符号链接,=表示套接字.
        -G选项使列表中不包括文件组信息.

12.more
        more -f [+lineNumber] {fileName}*
        功能:实用程序,列出文件内容.
        -f选项告诉more不要折叠较长的行.
        (more允许分屏浏览几个文件,每个文件从第1行开始显示,但可以使用+选项指定起始的行号.)
        (more更适合查看大文件.在显示一屏文本之后,more显示消息"--More--",等待下一个命令.若显示下一屏,按空格键.若显示下一行,按回车键.按q键退出more.按h键获得其他帮助信息.)

13.head
        head -n {fileName}*
        功能:实用程序,列出文件内容.
        -n选项显示文件的前n行.
        (如果不指定n,则默认显示前10行.如果指定多个文件,则在每个文件的内容前,显示一个标识该文件的文件头.)

14.tail
        tail -n {fileName}*
        功能:实用程序,列出文件内容.
        -n选项显示文件的最后n行.
        (如果不指定n,则默认显示最后10行.如果指定多个文件,则在每个文件的内容前,显示一个标识该文件的文件头.)

15.mv
        mv -i oldFileName newFileName
        mv -i {fileName}* directoryName
        mv -i oldDirectoryName newDirectoryName
        功能:实用程序,重命名文件.
        -i选项在newFileName已经存在的情况下,会提示是否确定要覆盖它.

16.mkdir
        mkdir [-p] newDirectoryName
        功能:实用程序,创建目录.
        -p选项创建在newDirectoryName路径名中任何还不存在的目录.
        (如果newDirectoryName已经存在,显示一个错误消息,现有文件不会有任何改变.)

17.cd
        cd [directoryName]
        功能:shell命令,切换目录.
        (把shell的当前工作目录切换为directoryName.如果省略参数directoryName,shell将移到所有者的主目录中.)       

18.cp
        cp -i oldFileName newFileName
        cp -ir {fileName}* directoryName
        功能:实用程序,复制文件.
        -i选项在newFileName已存在的情况,提示是否确定要替换.
        -r选项递归复制类型为目录文件的源文件,复制的是整个目录结构.

19.rmdir
        rmdir {directoryName}+
        功能:实用程序,删除目录名列表中列出的所有目录.
        (只有空目录才能被删除.)

20.rm
        rm -fir {fileName}*
        功能:实用程序,删除文件.
        -i选项提示用户是否确定要删除文件:按y键确定,按n键取消.
        -r选项在fileName是目录的情况下,递归删除目录的所有内容,包括子目录.
        -f选项禁止显示所有的错误消息和提示.

21.wc
        wc -lwc {fileName}*
        功能:实用程序,计算文件中的行数,字数和(或)字符数.
        -l选项计算行数.
        -w选项计算字数.
        -c选项计算字符数.
        (如果不指定文件,则使用标准输入.)
        (如果不指定任何选项,则显示全部三个数字.)
        (字的定义是被制表符,空格或换行符包围的字符序列.)

22.文件属性(ls -lsF)
        22.1:文件占用物理磁盘块数量.
        22.2:文件类型与权限.
                22.2.1:文件类型.
                        -                普通文件
                        d                目录文件
                        b                缓冲的(面向块的)特殊文件(如磁盘驱动器)
                        c                非缓冲的(面向字符的)特殊文件(如终端)
                        l                符号链接
                        p                管道
                        s                套接字
                22.2.2:文件权限.
                        22.2.2.1:用户(文件所有者)
                        22.2.2.2:文件组
                        22.2.2.3:其他用户
                        (r                读权限,普通文件可以访问文件内容,目录文件可以列出目录中包含的文件,特殊文件可以使用系统调用read()读文件.)
                        (w                写权限,普通文件可以修改文件内容,目录文件可以在目录中添加或删除文件,特殊文件可以使用系统调用write()写文件.)
                        (x                执行权限,普通文件(必须是可执行文件)可以执行文件,目录文件可以访问目录或其子目录中的文件,特殊文件没有含义.)
                        (-                相应的权限被拒绝.)
        22.3:硬链接数.
                (指明层次结构中有多少个标签指向同一个物理文件.)
        22.4:文件所有者.
                (在引用用户时一般使用文本串形式的用户名,而Linux内部是用整数形式的userID来表示用户的.)
        22.5:文件组.
                (在引用组时一般使用文本串形式的组名,而Linux内部是用整数形式的groupID来表示组的.)
        22.6:文件字节数.
        22.7:文件最后修改时间.
        22.8:文件名.

23.file
        file {fileName}+
        功能:实用程序,指明文件的内容,包括编写其中文本的语言.
        (当用file检查符号链接文件时,file报告的是链接指向的文件,而不是链接本身.)

24.groups
        groups [userId]
        功能:实用程序,列出组.
        (不带参数时,列出你是成页之一的所有组.如果指定一个用户名,则显示该用户所在的所有组.)

25.chgrp
        chgrp -R groupName {fileName}*
        功能:实用程序,允许用户改变他所拥有的文件的组.
        -R选项递归地改变目录中文件的组.

26.chmod
        chmod -R change{,change}* {fileName}+
        功能:实用程序,修改文件权限.
        -R选项递归地改变目录中文件的权限模式.
        change参数可以下列形式之一:
                clusterSelection+newPermissions(添加权限)
                clusterSelection-newPermissions(删除权限)
                clusterSelection=newPermissions(只分配这种权限)
        其中,clusterSelection是以下各项的任意组合:
                u(用户/文件所有者)
                g(组)
                o(其他用户)
                a(所有用户)
        newPermissions是以下各项的任意组合:
                r(读)
                w(写)
                x(执行)
                s(设置用户ID/设置组ID)
        (chmod实用程序可以用一个八进制数指定文件的权限设置,对应一个表示权限的三位二进制数.)

27.chown
        chown -R newUserId {fileName}*
        功能:实用程序,改变文件所有者.
        -R选项递归地改变目录中文件的所有权.

28.newgrp
        newgrp {-|groupName}
        功能:实用程序,改变组.
        -参数用登录系统时创建的shell的相同设置新建一个shell.
        groupName参数新建一个有效组ID对应组名的新shell,老的shell进休眠状态,直到退出新建的shell.

29.tset
        tset -s [-ec] [-ic] {-m portId:[?]terminalType}*
        功能:实用程序,确定终端类型和重设终端类型进行标准操作.
        -s选项:
                如果不使用-s选项,tset假定终端类型已经存储在TERM环境变量中,并使用存储在"/etc/termcap"或terminfo数据库中的终端功能信息重设终端.
                如果使用-s选项,tset检查"/etc/ttys"文件,并把终端的端口映射为此处列出的一种终端类型.然后生成shell命令到标准输出,命令执行时,TERM和TERMCAP环境变量被正确设置.tset使用SHELL环境变量的内容确定生成哪种shell命令.在执行tset生成的命令序列期间,必须暂时禁止文件名扩展,因为可能会有特殊字符被shell错误地解释.
        -e选项设置终端的删除字符c,代替默的Control-H设置.表示控制字符可以直接输入字符或在字符前加一个前缀^(即^h表示Control-H).
        -i选项设置终端的中断字符为c,代替默认的Control-C设置,表示控制字符可以直接输入字符或在字符前加一个前缀^(即^c表示Control-C).
        -m选项可覆盖或补充"/etc/ttys"是映射.序列"-m pp:tt"告诉tset如果终端的端口类型是pp,它应该假定终端是tt类型.如果冒号( : )后面跟随一个问号(?),tset显示tt,并要求用户或者按下回车键,确认终端类型就是tt,或者输入tset应该使用的实际的终端类型.

30.stty
        stty -a {option}* {metacharacterString<value>}*
        功能:实用程序,检查并设置终端的特性.
        -a选项可以列出终端当前的设置.

31.vim
        31.1:启动vim.
                vim
                vim fileName
        31.2:文本输入模式.
                按下以下列出的任意一个键,都可以从命令模式切换到文本输入模式:
                        i                在光标前插入文本
                        I                在当前行的开始插入文本
                        a                在光标后插入文本
                        A                在当前行的末尾插入文本
                        o                在当前行之后打开文本插入点
                        O                在当前行之后打开文本插入点
                        R                替换(覆盖)文本
                按下Esc键可以从文本模式切换到命令模式.
        31.3:命令模式.
                按下特殊字符序列,可以选择vim的编辑功能.如,要删除一个字,可以把光标放在这个字的开始,按下d键,再按下w键(delete word).
                :命令序列.如,命令:1,3d<Enter>可以删除1到3行.
                vim接受的表示行范围的两种格式:
                        单行,注明行号.
                        包含多行的块,注明第一行和最后一行的行号,中间有逗号隔开.
                vim用$表示文件中最后一行的行号,用.表示包含光标的当前行的行号.
                vim中可以使用算术表达式表示行号.如,命令:.,.+2d<Enter>可以删除当前行和随后的两行.
                表示行范围的其他几种方式:
                        1,$                文件中的所有行
                        1,.                从第一行到当前行的所有行(包括第一行和当前行)
                        .,$                从当前行到最后一行的所有行(包括当前行和最后一行)
                        .-2                在当前行之前两行的那一行
                        .+2                在当前行之后两行的那一行
        31.4:内存缓冲区和临时文件.
                在编辑文件时,vim把文件的一个副本保存在内存中,对这个副本进行修改.直到显示地指示vim写文件时,或者用同时也写文件的一个退出命令退出vim时,磁盘上的文件才会被修改.
                在编辑文件时不要连续编辑太长时间,隔一定时间就把修改写入磁盘文件,或者退出vim再返回,是一个好习惯.
        31.5:常见的编辑功能.
                vim最常见的编辑功能分为以下几类:
                        移动光标
                        删除文本
                        替换文本
                        粘贴文本
                        查找文本
                        查找/替换文本
                        保存/加载文本
                        其他功能(包括退出vim)
        31.6:光标移动.
                上移一行                                                        <向上光标键>或k
                下移一行                                                        <向下光标键>或j
                右移一个字符                                        <向右光标键>或l(不会自动换行)
                左移一个字符                                        <向左光标键>或h(不会自动换行)
                移到本行开始                                        ^
                移到本行末尾                                        $
                后退一个字                                                b
                前进一个字                                                w
                前进到当前字的末尾                e
                移到屏幕顶部                                        H
                移到屏幕中部                                        M
                移到屏幕底部                                        L
                下移半屏                                                        Control-D
                前进一屏                                                        Control-F
                上移半屏                                                        Control-U
                后退一屏                                                        Control-B
                移到nn行                                                        :nn<Enter>(nnG也可以)
                移到文件末尾                                        G
        31.7:删除文本.
                字符                                                                                        将光标置于字符之上,按x键
                字                                                                                                将光标置于字的开始,按d键和w键
                行                                                                                                将光标置于行中任意位置,按dd键(在dd前输入一个数字,vim会按照指定数字删除从当前行开始向下的若干行)
                从当前位置到当前行末尾                按D键
                包括若干行的一个块                                :<range>d<Enter>
        31.8:替换文本.
                字符                将光标置于字符上,按r键,然后输入替换字符.
                字                        将光标置于字的开始,按c键和w键,然后输入替换文本,再按Esc键.
                行                        将光标置于行中任意位置,按c键两次,然后输入替换文本,再按Esc键.
        31.9:粘贴文本.
                vim维护一个粘贴缓冲区,用于文件中的复制和粘贴文本.
                        复制若干行到粘贴缓冲区                                :<range>y<Enter>
                        复制当前行到粘贴缓冲区                                Y
                        在当前行之后插入粘贴缓冲区                p或: pu<Enter>(粘贴缓冲区内容不变)
                        在nn行之后插入粘贴缓冲区                        :nnpu<Enter>(粘贴缓冲区内容不变)
        31.10:查找.
                vim可以在文件中相对于当前行向前和向后查找某个子串.
                        从当前位置向前查找字符串sss                        /sss/<Enter>
                        从当前位置向后查找字符串sss                        ?sss?<Enter>
                        重复上一次查找                                                                        n
                        向相后方向重复上一次查找                                N
        31.11:查找/替换.
                用ttt替换每行中sss的第一个具体值                                                :<range>s/sss/ttt/<Enter>
                用ttt替换每行中sss的所有具体值(全局替换)                :<range>s/sss/ttt/g<Enter>
        31.12:保存/加载文件.
                将文件另存为<name>                                                                                :w<name><Enter>
                用现有的文件名保存文件                                                                :w<Enter>
                用现有的文件名保存文件并退出                                        :wq<Enter>(也可以使用ZZ)
                把某个范围内的行保存到另一个文件                        :<range>w<name><Enter>
                在当前位置读入另一个文件的内容                                :r<name><Enter>
                放弃当前文件,编辑<name>文件                                                :e<name><Enter>
                编辑最初在命令行中输入的下一个文件                :n<Enter>
                (如果第一次启动vim时输入了多个文件,那么vim会先加载第一个文件,要编辑下一个文件,可使用组合键:n.
        31.13:其他操作.
                重绘屏幕                                                                                                                                                                                                                        Control-L
                撤销上一次操作                                                                                                                                                                                                u
                撤销对当前行的多个操作                                                                                                                                                                U
                连接当前行和下一行                                                                                                                                                                                J
                重复上次操作                                                                                                                                                                                                        .
                在子shell中执行命令,然后返回到vim                                                                                                                        :!<command><Enter>
                在子shell中执行命令,然后在当前位置把命令输出读入编辑缓冲区                :r!<command><Enter>
                保存了修改之后退出                                                                                                                                                                                :q<Enter>
                不保存修改退出                                                                                                                                                                                                :q!<Enter>
                保存修改并退出                                                                                                                                                                                                :wq<Enter>
        31.14:自定义vim.
                用户可以设置各种选项来定义vim在不同场合的行为.":set"命令能设置vim的选项,也能取消设置.输入":set all"将列出vim支持的所有选项和当前设置.设置可以打开或关闭,或设为数字或字符串.
                        autoindent                随后输入的行自动缩进,与上一行对齐                                                                                                                                                        关(默认)
                        ignorecase                在查找和替换过程中,不区分大小写                                                                                                                                                                关(默认)
                        number                                vim在屏幕左边显示行号                                                                                                                                                                                                        关(默认)
                        showmode                        不在命令模式中时,vim指明处于何种文本输入模式(打开,插入,追加或替换)                开(默认)
                        showmatch                        vim在用户输入结束括号时,短暂地把光标移到开始括号                                                                                        关(默认)
                        (要打开autoindent,输入":set autoindent<Enter>".要关闭autoindent,输入":set noautoindent<Enter>".
        31.15:保存自定义设置.
                要使vim每次运行时自动设置autoindent和ignorecase,可以创建一个叫做".exrc"的文件.在文件中写入以下几行:
                        set autoindent
                        set ignorecase
                        set nonumber
                其实,不必设置"nonumber",它默认就是关闭的.
发表于 2009-3-26 18:13:29 | 显示全部楼层
顶,书到用时方恨少
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表