1linux命令形式:

     命令 [参数] [路径文件]......................[]”表示可选。

     例如:rm -f /tmp/oldboy.log

2、创建目录/data————mkdir

方法一:mkdir /data

方法二:cd /

        mkdir data

3、查看目录/data————ls

 ls -ld /data    #以长格式方面查看目录(可以查到目录的操作权限、大小、创建时间等信息)

4、/data目录下创建文件oldboy.txt————touchvi

方法一:cd /data

        touch oldboy.txt

方法二:touch /data/oldboy.txt

注意:

 Windows中的目录分隔:E:\虚拟机\CentOS 7 and GUI       反斜杠

 linux中的目录分隔:/data/oldboy.txt                        斜杠

5、为oldboy.txt增加内容“I am studying linux.”————viecho > 

方法一:vi /data/oldboy.txt

方法二:cd /data

        vi oldboy.txt

方法三:echo "I am studying linux." > oldboy.txt

        echo "I am studby windows." >> oldboy.txt———#追加内容到文件中

vivim编辑文件/脚本时,首先进入命令行模式,按“a”或“i”命令切换到输入模式,完成后按“Esc”进入命令行模式,然后按“:+wq”保存退出;如命令为“:wq!”、“:q!”后加上“!”有强制性的意思(在文档内可以用命令:set nu显示行号)。

echo 内容 > 文件:把要输出的内容重定向到文件中去,注意原文件的内容会被覆盖

echo 内容 >> 文件:把要输出的内容追加到文件中去,原文件的内容不会被覆盖

6、查看或输入文件内容:————cat 

方法一:cat /data/oldboy.txt 

方法二cd /data

        cat oldboy.txt

特殊命令将oo的内容追加到文件oldboy.txt中:

     cat >> oldboy.txt << o

> 1

> 2

> 3

> 4

> 5

o

7、符号命令:

; 同一行分隔多个命令。

/ 根目录或路径分隔符。

> 标准输入重定向(数据向箭头的方面流动,会覆盖原文件数据)。

>> 输入追加重定向(数据向箭头的方面流动,在原文件尾部追加上数据)。

< 标准输出重定向(数据向箭头的方面流动,会覆盖原文件数据)。

<< 输出追加重定向(数据向箭头的方面流动,在原文件尾部追加上数据)。

.. 与cd结合退到上一级目录。

. 与cd结合退到当前目录。

~ 代表登陆帐号的家目录。

| 管道符,将前一命令运行结果交后一命令处理(前后不需要加空格)。

{} 与echo结合使用时,用作打印序列。

8、把o.txt文件复制到/tmp中————cp ;cp -a-r用于复制目录

   cp o.txt /tmp/

   cp /data/o.txt /tmp/

  重要参数:

  -a:相当于pdr,一般复制目录会用;

  -p:连同属性一起复制过去;

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

9、查询当前路径————pwd

10、查询登陆帐号————whoami(与windows一样)

11、把/data移动到/root中————mv

   mv /data /root/

  重要参数:

  -i:如果文件或目录已存在,询问是否覆盖;

  -f:强制执行,不会询问;

  -u:对比,如目标比源新,才会移动。

12、进入root目录的data目录下,删除oldboy.txt文件————rm/rmdir(删除空目录)

   cd /root/data/

   rm oldboy.txt

   rm -f o.txt

   rmdir data

  重要参数:

  -f:强制删除文件,不会访问是否删除。

  -fr:强制删除文件和目录,不会访问是否删除。

13、已知文件test.txt内容:

test

liyao

oldboy

请给出打印test.txt内容时,不包含oldboy字符串的命令————grep -v/head/tail

##先建立文件写好内容:

cat >test.txt << EOF

> test

> liyao

> oldboy

> EOF

##过滤掉包含‘oldboy’字符的行:

grep -v oldboy test.txt

##显示文件前头两行:

head -2 test.txt

##显示文件尾部两行:

tail -2 test.txt

##取内容,排除包含‘oldboy’字符的行:

sed /oldboy/d test.txt

sed /^oldboy/d test.txt

sed '/oldboy/d' test.txt

sed "/oldboy/d" test.txt

##列过滤,排除包含‘oldboy’字符的列:

awk /[^oldboy]/ test.txt

重点:grepsedawk是三大核心命令;都有过滤字符串功能,grep最擅长,awk处理列擅长,sed擅长删除、修改、替换和添加。

14、用一条命令完成创建/oldboy/test目录创建————mkdir -p(参数p是递归创建)

  mkdir -p /oldboy/test

  mkdir /oldboy /oldboy/test

15、查看命令用法及参数————man/--help

   man mkdir

   mkdir --help

注:“linux 命令名”在baidu中查找相关文档帮助;如排错建议在google中查找。

16、常用快捷键

   Tab键:命令或路径补全功能(linux中最常用的快捷键);

   Ctrl+c:终止当前命令或程序;

   Ctrl+d:退出当前用户环境,相当于命令:exit,logout

   Ctrl+a:切换到命令行开头;

   Ctrl+e:切换到命令行结尾;

   Ctrl+u:清除输入命令;

   Ctrl+r:查找输入过的命令;

   “! 后面加上history中的命令行号,可以起度执行该命令的作用;如加上命令开头字母即执行该命令;

   “!! 重复执行的最近一次命令。

17、把/tmp目录下的o.txt,复制到/mnt目录下覆盖o.txt,要求系统不能提示(root权限)

方法一:\cp /tmp/o.txt /mnt

方法二/bin/cp /tmp/o.txt /mnt

18、查看系统命令存放路径————whichlocatefind

    which cp            #一般都会存放在/bin中。

    locate cp           #尽量不建议,会建立数据库(通常会用updatadb要加载查找)

    find / -type f -name cpfind / -name cp

19、系统别名永久存放位置————/.bashrc

   cat ~/.bashrc

20、别名显示与设置————alias

21、取消别名————unalias

22、查找与删除(高级应用)————先findrm

  find / -type f -name "test.txt" -exec rm -f {} \.

  find / -type f -name "test.txt"|xargs rm -f

  find / -type f -name "*.log" -mtime +5|xargs rm -f  #查找到5天前的日志并删除

  参数:

  -type (fd)      按类型查找,一般是文件或目录;

  -name ””        按名字查找,一般会用””引起来;

  -mtime +-         按修改时间查找,一般用于删除日志类文件。

23、只查看ett.txt文件(100行)第20至第30行内容————head |tailsedawk

   seq 100 > ett.txt                #向文件内加入100行序号

   head -30 ett.txt|tail -11

   sed -n 20,30p ett.txt

   awk '{if (NR>19&&NR<31) printf $0}' ett.txt

24、将所有ett.txt文件中的oldboylinux修改为oldboywindows,并查看结果——find |sedfind | catfind | ls

   find / -type f -name 'ett.txt'|xargs sed -i s#oldboylinux#oldboywindows#g    批量修改

   find / -type f -name 'ett.txt'|xargs cat        #批量查看修改后的内容

   find / -type f -name 'ett.txt'|xargs ls         #批量查看文件所在目录

25、查看目录结构————tree

26、接在“|”管道符后,将前面的结果交出后一命令处理————xargs(常与findls结合)

27、打印输出数字序列————seqecho {1..5}