day04 常用命令

一、上周回顾

        1.1.Linux介绍\GNU\GLP\历史\发行版

        1.2.VmWare安装Centos7系统

        1.3.Vmware快照

        2.Bash

           2.1.Bash能做什么

           2.2.Bash怎么使用

                   单条命令  效率低 适合简单,或者少量的任务

                    Shell脚本 效率高 适合复杂,重复性的工作

           2.3.Bash提示符

                [root@caoweiqiang ~]#

                       当前登录系统的用户----->root

                       当前系统的主机名称----->caoweiiqnag

                       当前用户所在的家目录-----> ~

                       通常情况下是超级管理员  #    普通用户是 $

           2.4.Bash基础语法

                        命令    【选项】   【参数】

                        命令(打针)

                        选项(轻重)

                        参数(往哪打)

                        ls -la /home/  #以长格式显示 /home/所有内容,包括隐藏文件

            2.5.Bash 常用特性

                        1.tab补全(必须会)

                        2.快捷键  Ctrl+a,e,c,l,w,u,k,r

                        3.命令别名  alias  unalias

                        4.历史记录  history

                        5.命令帮助  man      --help

            2.6.系统目录结构

                        Windows C :\  D :\   E:\

                        Linux /  ----->单根组织结构

                        在Linux / 目录下有很多的二级目录,那么目录都是什么意思?

                        /bin #存放都是二进制可执行行的命令

                        /sbin  #超级管理员可执行的二进制命令

                        /home #普通用户的家目录   /home/caoweiqiang

                        /root  #超级管理员用户的家目录(普通用户无权限)

                       /etc   #系统的配置文件存放路径,包括后续安装的一些服务

                       /dev  #存放设备目录

                             /dev/null  #黑洞设备,只进不出

                              /dev/random #随机设备

                              /dev/zero #能源源不断的产生数据   (提款机)

                       /proc #虚拟系统文件(显示系统当前进程正在运行的状态)

                       /usr  #存放系统文件和Windows的C盘下的Windows目录一样

                       /usr/local#   软件安装的目录

                       /usr/bin #和/bin一致,只不过/usr/bin才是真实的命令存放路径

                       /usr/sbin#和/sbin一致,只不过/usr/bin才是真实的命令存放路径

                       /usr/lib #库文件,命令所依赖的库文件

                       /usr/lib64#64库文件,命令所依赖的库文件

               /boot #系统启动时的引导目录,存放的是kernel,grub菜单

               /run #存放进程锁文件

               /opt#早起第三方厂商安装软件存放的目录

               /mnt#挂载,将目录与设备进行关联,比武硬盘,光盘

        2.7.文件路径定位

               /etc/hostname文件位置+文件名称=路径    换句话说:路径则是对文件定义的一种方式

               绝对路径:只要以/开始的路径,都算绝对路径

               相对路径: 相对于当前目录来说的路径,.当前目录   ..当前目录的上一级目录

        2.8.文件管理命令

                mkdir  #创建目录

                touch  #创建文件

                 mv     #移动或重新命名

                 rm     #删除文件

二、今日内容

文件管理-->创建  移动  删除  复制

cp  复制

#选项:

            #:  -v:详细显示命令执行的操作

            #:   -r:  递归处理目录与子目录

            #:   -p:  保留源文件或目录的属性

#1.将当前目录下的file文件,复制到/tmp/目录下,并重新命名为file_copy

[root@caoweiqiang ~]# cp file /tmp/file_copy

[root@caoweiqiang ~]# ls /tmp/file_copy

/tmp/file_copy

  #2.将file复制到/tmp目录下

  [root@caoweiqiang ~]# cp file1 /tmp/

  #3.在拷贝文件的过程中,文件权限和身份都发生变化了

     [root@caoweiqiang ~]# cp file /tmp

     [root@caoweiqiang ~]# ll /tmp/file

       -rw-r--r--. 1 root root 0 Jul 29 17:40 /tmp/file

      #在拷贝过程中加上-p参数,保存文件原有的属性

       [root@caoweiqiang ~]# cp -p file /tmp/

       [root@caoweiqiang ~]# ll /tmp/file

      #4.如何拷贝一个文件夹,并且文件夹中有很多的子文件,-r递归复制(文件夹===目录)

       [root@caoweiqiang ~]# cp /etc/ /tmp/

            cp: omitting directory ‘/etc/’

            anaconda-ks.cfg  file  file1  hostname  job  student.txt

       [root@caoweiqiang ~]# cp /etc/ /tmp/ -r

         #5.拷贝文件路径下的不同文件至同一个目录下   -v是显示详细过程

          [root@caoweiqiang ~]# cp -rp file1 oldboy1/ file /etc/ /mnt/ opt/   -v

        #6.拷贝不同路径下的不同文件+不同目录   至同一个位置

             [root@caoweiqiang ~]# cp -rp file1 oldboy1/ file /etc/ /mnt   /opt/

            #7.在复制过程中频繁触发重复复制,提示确认操作

             [root@caoweiqiang ~]# \cp -r /etc/ /opt/

             [root@caoweiqiang ~]# /bin/cp -r /etc/ /opt/

2.文件管理之:查看文件内容(cat  less  more head  tail grep... )

#------cat

              [root@caoweiqiang ~]# cp /etc/passwd ./pass

              [root@caoweiqiang ~]# cat pass     #查看文件的全部内容,从头到尾

               [root@caoweiqiang ~]# cat -n pass  #查看一个文件有多少行    -n

                [root@caoweiqiang ~]# cat -A pass       #查看文件的特殊符号,比如文件中存在tab键

#cat扩展使用,创建一个文件,并往里写入内容

                [root@caoweiqiang ~]# cat >> test.txt <

                              > test1

                              > test2

                               > test3

                               > EOF       #EOF代表结束

                 [root@caoweiqiang ~]# cat test.txt

                                test1

                                test2

                                test3

#--------less、more

#less /etc/service     #使用光标上下翻动,空额进行翻页,q退出

#more /etc/service    #使用回车上下翻动,空格进行翻页,q退出

#------------head

[root@caoweiqiang ~]# head pass    #用head,默认查看头部前10行内容

[root@caoweiqiang ~]# head -5 pass   #查看头部5行,用-n指定

[root@caoweiqiang ~]# ps aux | head -5     #了解

#-------------tail  尾部

#tail   pass      #查看文件尾部默认十行

[root@caoweiqiang ~]# tail -14 /var/log/secure

[root@caoweiqiang ~]# tail -f /var/log/messages     #-f查看文件尾部的变化

[root@caoweiqiang ~]# tailf /var/log/messages    #查看文件尾部的变化

[root@caoweiqiang ~]# ps aux | tail -5         #了解

#-----------grep过滤文件内容

#1.过滤出pass文件中的root相关的行

[root@caoweiqiang ~]# grep "root" pass

root:x:0:0:root:/root:/bin/bash

operator:x:11:0:operator:/root:/sbin/nologin

#2.过滤pass文件中,匹配以root开头的行

[root@caoweiqiang ~]# grep "^root" pass

root:x:0:0:root:/root:/bin/bash

#3.过滤pass文件中,匹配以bash结尾的行[root@caoweiqiang ~]# gerp "bash$" pass

#4.显示行号

[root@caoweiqiang ~]# grep -n "bash$" pass

1:root:x:0:0:root:/root:/bin/bash

#5.过滤出包含ftp 的行

[root@caoweiqiang ~]# grep "ftp" pass

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

#6.过滤除了ftp的行,其他的都全部显示

[root@caoweiqiang ~]# grep -v "ftp" pass

#7.忽略大小写方式   

[root@caoweiqiang ~]# grep -i "ftp" pass

#8.过滤pass文件中以sync结尾的,或者ftp相关的行,打印出来,同时不区分大小写

[root@caoweiqiang ~]# grep -Ei "sysn$|ftp" pass

###grep筛选的目标,会将整行打印出来

你可能感兴趣的:(day04 常用命令)