一、ls   list

    命令语法

    ls [-alrtAFR] [name...]

    命令参数:

    -a 显示所有文件及目录

    -l 除了文件名称外,亦将文件形态,权限,拥有者,文件大小等信息详细列出

    -r将文件以相反次序显示(原定依英文字母次序排列)

    -t将文件依照简历时间顺序列出

    -A同-a,但不列出‘.’(目前目录)及‘..’(父目录)

    -F在列出的文件名称后加一符号;例如可执行档则加‘*’,目录则加'/'

    -R若目录下有文件,则该目录下的文件亦被皆依次列出

 

二、mkdir   创建目录

    mkdir ---》make directory   例如:mkdir /data

    参数:

    mkdir [-mp] [目录名称]

    -m:这个参数用来指定要创建目录的权限,但很少用,都会用chmod来处理

      例如:mkdir -m 777/tmp/test

    -p:这个参数用来递归创建目录

 

三、cd    切换路径

    cd ---》change directory    例如:change /

 

四、touch 创建文件   

    touch---》         例如:touch oldboy.txt  

                   也可以直接指定路径创建文件,不用切换路径   例如:touch /data/oldboy.txt

    #提示:分号可以在一行内分隔两个命令,touch如果文件不存在就创建文件,

    如果存在就改变atime等时间戳信息

      #扩展:创建文件也可以用echo等,只不过touch更专业

    #例如:echo >/data/oldboy.txt 或 > /data/old.txt也可以创建文件,

    当然还有很多可以间接创建文件的命令,如vi,cat等

 

五、vi、vim   #编辑文件

     #vi     编辑器,相当于记事本,有编辑功能,但较弱,编辑普通文件用

     #vim   复杂编辑器,相当于emeditor,notepad++,editplus,写程序时用

六、echo    

    #打印输出内容,配合“>或>>”可以为文件覆盖及追加内容,这个命令

    可要掌握。一个大于号为重定向,会清空文件里所有以前的数据,两个大于号

    为内容追加

    #也可编辑文件,单行文本插入常用命令,内容都是放到文件的尾部

    #例如:

    #echo 'I am studying linux.' >>/data/oldboy.txt  <---这个在企业里很常用,

    单行或者多行内容追加到文件结尾

    #echo "I am studying linux"  >oldboy.txt   <---覆盖文件内容

    #echo“

       oldboy

       oldgirl

       ”>oldboy.txt

七、特殊字符命令:

    >意思为重定向,会将文件里所有以前数据内容清空

    >>追加重定向,在文件结尾假如内容,不会删除已有文件内容      

    #配合echo和cat写入内容

八、cat查看内容

    特殊用法:增加多行内容

    案例:

    cat >/data/oldboy.txt<<EOF

    I am studying linux.

    EOF

    #覆盖文件内容

    

    cat >>/data/oldboy.txt<<EOF

    I am studying linux.

    EOF

    #追加文件内容

    #注意:EOF要成对出现,EOF可以被任意成对内容替换

九、cp拷贝命令      copy

    #例如  cp  oldboy.txt /tmp   

    #参数

    -a:相当于-pdr;

    -d:若源文件为链接文件,则复制链接文件属性而非档案本身;

    -f:强制,若目标档案已经存在且无法开启,则移除后尝试;

    -i:若目标文件存在时,在覆盖时会先询问;

    -p:连同档案的属性一起复制过去,而非使用默认属性;

    -r:递归,用于复制目录;

    -u:若目标文件存在,则目标文件比源文件旧才复制;

十、mv移动  move

    #例如:

    mv /data  /root

十一、pwd显示当前目录   print work directory           

十二、man 查看命令帮助

十三、help  命令的帮助(查看bash内置命令    --->man bash)

   或者man cp命令不是为内置命令时,此时会打印出所有内置命令    

   (bash命令总结)

十四、rm 删除文件   remove

      参数  

    -r删除目录   等同于rmdir  

      -f强制删除   

    生产环境尽量不要使用rm,如果必须要删除,一定要用copy备份

十五、find 查找

   find /root/data/ -type -f   查找文件

   find /root/data/ -type -f -exec -exec rm -f {} \;  对查找后的结果进行删除

   find /root/data/ -type -f |xargs rm -f  也可以删除

   find /root/data/ -type -f ! -name 'oldgirl.txt' |xargs rm -f

        #-type -f 按文件类型查找      

        #-exec 后面表示要对前面的结果进行处理,大括号表示-exec前面的执行结果 ‘\’表示转义,后面必须要接分号

        #xargs的作用是,把前面的执行结果放到后面一个一个进行处理,相当于上一条的{}

        #管道的作用是将前面执行的结果交给后面的命令进行处理

      #-name 按名字查找,要查找的名字最好要加引号括起来,!表示取反

        

 

十六、 \转义字符,让一个有意义的字符,脱掉马甲

     ..表示上级目录

   .表示当前目录

     \.表示点 

十七、head 头部,取文件前N行内容

   如果不接参数,则表示查看文件前10行内容

   -n 表示前n行      -3

十八、grep  过滤器,把想要的和不想要的分离开

    如果不加参数,表示想要取出某个值

   -v表示取反,意思是不想要某一个内容(排除)

   例子:grep 'oldboy' test.txt

      >oldboy

      grep -v 'oldboy' test.txt

      >test

      >liyao

十九、sed  

   sed 过滤

   sed -n '/过滤的内容/处理的命令'   文件    -n 表示取消默认输出   处理的命令:p 打印   d:删除

   sed -n '/oldboy/p' test.txt

   表示从test.txt文件中检索oldboy并打印出来

   sed  ‘/oldboy/d’ test.txt

   表示从test.txt文件中查找除了oldboy以外的其他内容

 

  

 

   

 

 

 

题外:

主要Shell内置命令

Shell有很多内置在其源代码中的命令。这些命令是内置的,所以Shell不必到磁盘上搜索它们,执行速度因此加快。不同的Shell内置命令有所不同。

A.2.1  bash内置命令

.:执行当前进程环境中的程序。同source。

. file:dot命令从文件file中读取命令并执行。

: 空操作,返回退出状态0。

alias:显示和创建已有命令的别名。

bg:把作业放到后台。

bind:显示当前关键字与函数的绑定情况,或将关键字与readline函数或宏进行绑定。

break:从最内层循环跳出。

builtin [sh-builtin [args]]:运行一个内置Shell命令,并传送参数,返回退出状态0。当一个函数与一个内置命令同名时,该命令将很有用。

cd [arg]:改变目录,如果不带参数,则回到主目录,带参数则切换到参数所指的目录。

command comand [arg]:即使有同名函数,仍然执行该命令。也就是说,跳过函数查找。

declare [var]:显示所有变量,或用可选属性声明变量。

dirs:显示当前记录的目录(pushd的结果)。

disown:从作业表中删除一个活动作业。

echo [args]:显示args并换行。

enable:启用或禁用Shell内置的命令。

eval [args]:把args读入Shell,并执行产生的命令。

exec command:运行命令,替换掉当前Shell。

exit [n]:以状态n退出Shell。

export [var]:使变量可被子Shell识别。

fc:历史的修改命令,用于编辑历史命令。

fg:把后台作业放到前台。

getopts:解析并处理命令行选项。

hash:控制用于加速命令查找的内部哈希表。

help [command]:显示关于内置命令的有用信息。如果指定了一个命令,则将显示该命令的详细信息。

history:显示带行号的命令历史列表。

jobs:显示放到后台的作业。

kill [-signal process]:向由PID号或作业号指定的进程发送信号。输入kill-l查看信号列表。

let:用来计算算术表达式的值,并把算术运算的结果赋给变量。

local:用在函数中,把变量的作用域限制在函数内部。

logout:退出登录Shell。

popd:从目录栈中删除项。

pushd:向目录栈中增加项。

pwd:打印出当前的工作目录。

read [var]:从标准输入读取一行,保存到变量var中。

readonly [var]:将变量var设为只读,不允许重置该变量。

return [n]:从函数中退出,n是指定给return命令的退出状态值。

set:设置选项和位置参量。

shift [n]:将位置参量左移n次。

stop pid:暂停第pid号进程的运行。

suspend:终止当前Shell的运行(对登录Shell无效)。

test:检查文件类型,并计算条件表达式。

times:显示由当前Shell启动的进程运行所累计用户时间和系统时间。

trap [arg] [n]:当Shell收到信号n(n为0、1、2或15)时,执行arg。

type [command]:显示命令的类型,例如:pwd是Shell的一个内置命令。

typeset:同declare。设置变量并赋予其属性。

ulimit:显示或设置进程可用资源的最大限额。

umask [八进制数字]:用户文件关于属主、属组和其他用户的创建模式掩码。

unalias:取消所有的命令别名设置。

unset [name]:取消指定变量的值或函数的定义。

wait [pid#n]:等待pid号为n的后台进程结束,并报告它的结束状态。

 

 

linux 三剑客

grep awk sed

 

 

 

 

 

未完待续............

posted on 2016-12-03 22:44  金翅大鹏吃唐僧  阅读(278)  评论(0)    收藏  举报