Ubuntu12.04常用终端命令详解

一 获取帮助

  1 --help

          任何命令加上“ --help” 都会显示命令帮助。可以察看某个命令的帮助信息和详细用法。

  2 man

           manual的缩写,指的是Linux的系统手册。基本用法 man [选项] [章节] 手册页 ......可以通过man --help察看详细用处Linux的系统手册都存放在 /usr/share/man/* 中。常用用法:man -w ls(ls是某个终端命令),可以显示一个手册页的保存位置。

  3 info

         是一种在线求助方法,和man中的信息有重复部分也有更加详细的解释,是一种类似html文件格式组织,就像JAVA的API帮助文档。


二 通配符

 常用通配符如下:

1. *  :匹配0或多个任意字符

2. ? :匹配且仅匹配一个任意字符

3. [abcde] :匹配方括号中列出的任意一个字符

4. [a-z]:匹配方括号中 “-” 两端字符之间的任意一个字符

5. [!abcde]:匹配方括号中未列出的任意一个字符

6. [!a-z]:匹配方括号中除 “-” 两端字符之间的任意一个字符

7. {debian,linux}:完整匹配花括号之间以逗号分割的任意一个字符串

注意两个情况:

1. 匹配 .profile 应该是ls .*file,要严格匹配  '.'  。

2. 匹配 /etc下.c为后缀的文件,应该是 ls /etc/*.c,要严格匹配 ‘/’ 。

三 转义字符

         当 ‘\’ 后面是 $ ` "  \  (  )  {  }  ? + | * ! 等特殊字符时反斜杠作为转义字符,即告诉Shell把这写特殊字符当作普通字符而不是特殊字符。比如在终端输出‘\’时应该写 echo \\ 而不是 echo \ 。

四 引号

引号分三种,单引号、双引号、反引号(倒引号)。

  1. 单引号

              是一种强引用,由单括号扩起来的都作为普通字符。 例如在终端输出 ‘echo \\’ 可以写作 echo 'echo \\'  。

  2. 双引号

              是一种弱引用,由双括号扩起来的除$ ` \ 外的字符都作为普通字符处理,并且 '\' 只有在后面是 $ ` “ \ 或者换行符之一时才作为转义字符。例如:

              在终端写入 echo "a dir name is $HOME " 时显示的是 a dir name is /home/pc,即环境变量HOME的内容。

              而输入 echo "a dir name is \$HOME " 时显示的是 a dir name is $HOME,即$未被转义。

  3. 反引号

              即与~同在键盘左上角的符号`,被``扩起来的字符串会被解释成一个Shell命令并优先执行,并输出执行后的内容替代被扩起来的内容。例如:

             echo "a dir name is `echo $HOME` " 输出:a dir name is /home/pc

                                ------注意,echo $HOME是被``扩起来的,不同于上面直接未被扩起来的例子,是先执行echo $HOME,然后再执行整个命令。

            此外echo可以嵌套使用,例如:

             echo "a shell is `echo a dir name is \`echo $HOME\``"  ,输出为a shell is a dir name is /home/pc,是两层嵌套,一共三层输出,echo $HOME   -------->   echo a dir name is /home/pc , ------>   echo a shell......   。


五 管道

        管道是一种Linux中很重要的通信方式,作用是把一个程序的输出直接链接到另一个程序的输入。在Linux Shell中把 | 符号表示管道来链接两个命令,即 命令1 | 命令2 ,把命令1的输出作为命令2的输入。

        例如:echo $HOME | ls,输出的是/home/pc下的目录,而/home/pc不会输出,因为作为第二个命令的输入。


六 输入输出重定向

  1. 输入重定向

           输入重定向可以把命令(或可执行程序)的标准输入重定向到指定文件中,即输入可以不来自键盘,而是来自一个指定的文件。输入重定向主要用于改变一个命令的输入源,特别是那写需要大量输入的输入源。

         --------输入重定向的一般格式是:命令 < 文件名 。例如 : echo "`</home/pc/test.txt`" ,test.txt里存放I am a txt,则输出为 I am a txt,即文件里的内容。

  2. 输出重定向+错误重定向

        把命令或可执行程序的标准输出或标准错误输出重定向到指定文件中,此时输出不会显示在屏幕上,而是写入到文件中。

        --------输出重定向的一般格式是: 命令 > 文件名。 例如: ls /home/pc > /home/pc/test.txt,执行完毕后屏幕不会显示任何ls的结果,打开test.txt可以看到ls的输出结果。

        --------错误输出重定向的一般格式是:命令 2> 文件名。例如:ls /nodir 2> /home/pc/test.txt ,执行完毕后屏幕不显示任何内容,打开test.txt发现里面写着无法找到nodir路径。

        --------输出或错误重定向可以将 > 改成 >>,这样可以在不覆盖文件原有内容的情况下在文档尾添加输出内容。

        --------可以通过  &> 将标准输出和错误输出同时重定向到同一文件。(待研究。。。)

        --------可以通过 2>&1可以将标准错误输出关联到标准输出。(待研究。。。)


你可能感兴趣的:(linux,命令,ubuntu,详解,终端)