Linux常用命令笔记

一、Linux简介

        一种操作系统,安装在计算机硬件上、用来管理计算机的硬件和软件资源的系统软件

  • Linux是开源的、免费的
  • Linux注重系统的安全性、稳定性、高并发处理能力
  • Linux系统没有优异的可视化界面

二、Vi和Vim

        vi和vim是Linux中提供的一种文本编辑器,这种编辑器用来在Linux中查看或者编辑文本文件,就好像windows中的记事本一样。

2.1、vi和vim都有三种模式

第一种:一般模式,用vi或者vim命令打开文件,进入一般模式
            可以查看文件的内容,并且可以通过上下左右键移动光标
            查看文件某一部分,但是不能编辑文件内容
第二种:编辑模式,在一般模式下按下i键或者a键或者I键或者A键
            就可以进入编辑模式,编辑模式下只能编辑不能保存,也不会
            自动保存
            需要保存的话,要先回到一般模式,按esc键
第三种:命令模式,在一般模式下,按下shift+:,进入命令模式,
            输入:q!--表示不保存强制退出编辑器
                  wq--保存并且退出
                  q---只是退出编辑器

2.2、vi和vim编辑器的常用快捷键

1、复制当前行:在一般模式下,按yy,把光标所在的行复制到剪切板
                                                     按p,把剪切板中的内容粘贴到光标所在的下一行
2、复制当前行往下5行:在一般模式下,按5yy,把光标所在行往下5行复制到剪切板
3、在文本文件中查找关键字:在命令行模式下,输入“/关键字”,回车,
                    找到之后,按n表示光标查找下一个关键字
4、删除光标所在的当前行:在一般模式下,按dd,删除
5、删除光标所在的行往下5行:在一般模式下,按5dd
6、撤销上次编辑的内容:在一般模式下,按u
7、显示行号:命令模式下,set nu

 三、Linux中用户管理

1、任何使用Linux系统资源的用户,必须使用一个合法的账号和密码;
    账号和密码一般都是向系统管理员申请
2、root是Linux系统安装时默认创建的系统管理员账号,由root创建普通账号

3、添加用户:useradd [选项] 用户名
        例:useradd lisi
         |->创建一个用户lisi
         |->在/home目录下创建用的根目录,目录名称默认跟用户名相同
         |->在Linux中任何一个用户都至少属于一个组,新建用户时如果不指定
            组,则会新建一个组,组名跟用户名相同,并且把该用户添加到该组中

        useradd -d /home/ww wangwu 创建用户的同时来指定用户的根目录
4、给用户设置密码
        passwd 用户名

        例:passwd lisi
5、删除用户
        userdel 用户名

        例:userdel lisi

        例:userdel -r lisi 删除用户的同时级联删除它的主目录
6、查看用户的信息
        id 用户名
7、切换用户
        su 用户名  (switch user 的缩写)

四、Linux中的组管理

1、Linux中的组相当于角色的概念,可以对有共性的用户进行统一管理,每一个用户至少属于一个组,不能独立于组存在,也可以属于多个组 
2、新建用户时如果不指定组,则会新建一个组,组名跟用户名相同并把该用户添加到该组中

3、添加组:groupadd 组名
        例:groupadd dev
4、删除组:groupdel 组名
        例:groupdel dev
5、把用户添加到组中:gpasswd -a 用户名 组名
        例:gpasswd -a hdh dev
6、把用户从组中移除:gpasswd -d 用户名 组名
        例:gpasswd -d hdh dev
7、创建用户时,指定所属的组(主组):useradd -g 组名 用户名

五、Linux中的帮助命令

1、用来查看Linux系统手册上的帮助信息:man 命令
    man ls 分屏显示帮助信息
    按回车翻一行、按空格翻一页、按q退出
2、查看命令的内置帮助信息:help 命令

六、Linux中的文件和目录操作的命令

1、查看当前所在目录:pwd
2、查看指定目录下所有的子目录或者文件列表:ls
        ls /home
        ls 查看当前目录下所有的子目录和文件
        ls -l /home 以列表的形式显示 (l是list的缩写)
        
        ls -a /home 显示指定目录下所有的子目录和文件(包括虚拟的目录)
        ls -al 以列表形式显示指定目录下所有的子目录和文件(包括虚拟的目录)

3、切换目录:cd 目录名
        绝对目录:以盘符开始的目录
        cd /opt/testDir
        ~:代表当前用户的根目录,在任何目录下执行 cd ~,可以进去当前账户的根目录
        相对目录:以目录名开始的目录叫相对目录,从当前目录开始查找
        cd testDir
4、创建目录:mkdir 目录名
        目录名可以是绝对目录,也可以是相对目录

        1、mkdir -p /opt/testDir/test3/test4 一次创建多级目录
5、创建一个或者多个空文件:touch 文件名列表(文件名之间用空格隔开)
        touch t1.txt
6、复制文件:cp source(源) dest(目标)
        cp t1.txt test2 把t1文件复制到test2文件中

        cp -r test3 test2 递归复制,可以复制目录
7、删除文件或者目录:rm 文件名或者目录名
        rm t1.txt 提示删除
        rm -f t2.txt 强制删除

        rm -r test2 提示递归删除目录
        rm -rf test2 强制递归删除目录
8、移动文件或目录;mv source(源) dest(目标)
        移动文件
        mv tt.txt text1
        移动目录
        mv test1 test2
        文件的重命名
        mv t1.txt t2.txt 
9、查看文件的具体内容:cat 文件名
        cat tt.txt
        cat -n tt.txt 查看文件内容并显示行号
10、分页查看文件内容:more 文件名,一次性加载文件所有内容到内存,分页显示
        回车翻一行,空格翻一页
        more t4.txt
11、查看文件的头10行:head 文件名
        head tt.txt  默认查看头10行
        head -n 5 tt.txt 查看头6行的内容,6可以是任意数字
12、查看文件尾10行内容:tail 文件名
        tail tt.txt 默认查看末尾10行
        tail -n 5 tt.txt 查看尾部5行的内容,5可以是任意数字
13、echo指令
        输出系统变量或者常量的值到命令行终端
        echo $JAVA_HOME
14、把前一个查看命令的结果输出到指定的文件中,如果目标不存在
        会新建一个:查看命令 > 文件名

        如果目标文件以存在,则把文件以前的内容覆盖

        cat tt.txt > t3.txt 复制,把tt.txt中的内容复制到 t3.txt中

        >> 可以追加写入

七、Linux中关于日期和时间的操作指令

1、查看或者设置系统当前时间:date
        date 查看系统当前的完整的日期和时间
        date + %Y 系统当前的年份
        date + %m 系统当前的月份
        date + %d 系统当前的日期

        date '+%Y-%m-%d %H:%M:%S' 按yyyy-MM-dd HH:mm:ss格式显示

        date -S '2020-10-2- 10:20:30' 设置系统当前时间
2、查看系统日历:cal
        cal:查看当前月份的日历
        cal 2020: 查看2020年的日历

八、Linux中关于搜索文件或者目录的命令:find 关键字

find *.txt 默认搜索当前目录下所有的txt文件
    * 是通配符
    
    find /etc *.txt 搜素/etc目录下所有的txt文件
    
    find /etc -size =5M +5M -5M 搜索/etc 目录下所有等于/大于/小于5M的文件
    -user:按文件的所有者进行搜索
    -size:按文件的大小进行搜索
    -name:按文件的名称进行搜索,默认按照名称搜索(文件或者目录所在的路径也在搜索范围之内)

九、过滤查找

在前一个搜索命令的结果中进行进一步的过滤

    搜索命令 |grep 过滤条件
    查看命令 |grep 过滤条件  过滤条件区分大小写
    查看命令 |grep -i 过滤条件 忽略大小写
find *.txt |grep s 找出当前目录下所有的txt文件,按照含有字母s的进行过滤

十、Linux中有关压缩和解压的命令

1、压缩或者解压单个文件:gzip
        gzip 文件名  自动生成一个.gz的压缩包,并且会把原来的文件删除
2、解压单个文件:gunzip
        gunzip .gz压缩包名  解压指定的压缩包,并把.gz的压缩包删除
3、压缩(打包)或者解压多个文件和目录:zip 目标压缩包名称 文件或者目录列表 (不删除源文件)
        zip tt.zip resulu.txt tt.txt
                           unzip 压缩包名 :将指定的zip包解压到当前目录下
                           unzip 压缩包名 -d 目录名:指定解压目录
                           (解压后,不删除压缩包)
4、压缩或者解压多个文件或者目录:tar [选项] 目标压缩包名称(xxx.tar.gz) 需要打包的文件或者目录列表
        tar -c :打包或者压缩
        tar -x :解压
        tar -x 压缩包名(xxx.tar.gz):将指定的.tar.gz压缩包解压到当前目录
        
        tar -zcvf xxx.tar.gz 文件或者目录列表
        tar -zxvf xxx.tar.gz -C 解压目录名   (不删除原来的压缩文件)

十一、Linux文件与组管理指令

1、在Linux中,每一个用户都属于一个组,用户不能独立于组存在,一个用户可以属于多个组

  在Linux中,每一个文件或者目录也都属于一个组,文件也必须属于一个组,并且只能属于一个组
  文件或者目录通过组来控制那些用户可以对它进行那些操作,即文件或者目录的访问权限
    
    在文件或者目录看来,Linux系统中的所有用户分为三类:
        所有者:默认情况下,文件或者目录的所有者都是创建者,可以修改
        同组用户:和文件/目录属于同一个组的用户
        其他组用户:既不是文件/目录的所有者,也不是同组用户
2、查看文件的所有者和所在的组:
        ls -l
3、修改文件或者目录的所有者:chown 新的所有者 文件名
                  chown 新的所有者:新的组 文件名
                  chown -R 新的所有者 目录名(递归修改目录及目录中的文件的所有者和所在的组)
4、修改文件或者目录的所在组:chgrp 新的组名 文件名或者目录名
                chgrp -R 新的组名 文件名或者目录名(递归修改)

十二、Linux中文件或者目录的权限管理

1、一个用户至少属于一个组,也可以属于多个组
    一个文件或者目录也必须属于一个组,并且只能属于一个组
2、Linux中文件或者目录的三种权限
          文件:
        第一种:读(read)
            可以读取、查看文件的内容,比如:cat、more、less、head、tail等
        第二种:写(write)
            可以修改文件的内容,比如:vi、vim
        第三种:执行(execute)
            如果该文件是可执行文件(.sh),可以直接运行,比如:./xxx.sh
          目录:
        第一种:读(read)
            可以读取、查看目录下边的内容,比如:ls等
        第二种:写(write)
            可以修改目录中的内容,比如:mkdir、rm、touch、mv
        第三种:执行(execute)
            可以进入该目录,比如:cd等

十三、文件或者目录的权限控制

1、在Linux中,任何一个文件或者目录都有三部分权限:
        所有者权限:文件/所有者对该文件所拥有的的权限,使用r、w、x分别表示
            读、写、执行的权限。比如rwx--拥有读写执行的权限,r-x:拥有
            读和执行的权限,---:没有任何权限,r--:只拥有读的权限
        同组用户权限:文件或者目录的同组用户对该文件所拥有的权限
        其他组用户权限:其他组用户对该文件/目录所有用的权限
2、查看文件或目录的权限:ls -l
3、修改文件或者目录的权限:chmod
        用r、w、x分别表示读、写、执行的权限
        用u、g、o、a分别表示所有者、同组用户、其他用户、所有用户
        用+、-、=分别表示给指定用户增加、减少、设置对应的权限
4、使用数字的方式修改文件/目录的权限
        每一个权限都可以用一个数字来表示:
            r、w、x
            4、2、1
            2^2、2^1、2^0
        每一个文件/目录都有三部分权限,每一部分权限都可以用一组数据之和来表示:
        rwx  rwx  rw-
         7    7    6
         chomd 776 tt.txt

十四、Linux中的服务管理

1、服务是支持Linux运行的的一些必要程序,本质上也是进程,叫守护进程,为应用程序提供必要支撑,比如sshd、防护墙等
2、操作服务:systemCtl [参数] 服务名称
        参数:start  stop  restart  reload  status  enable

3、以防火墙为例:
        systemctl status firewalld 查看防火墙状态
        systemctl stop firewalld 关闭防火墙
        systemctl start firewalld 开启防火墙
        systemctl enable firealld 设置防火墙开机启动

        老版的Linux或者有些发型版本的Linux,操作服务使用service命令

十五、linux软件包中的管理:软件安装包

1、RPM包:一种Linux的软件包的打包和安装工具,它操作的软件包都是.rpm结尾
        1、如何使用RPM:使用rpm命令
            查看当前系统中已经安装的rpm软件包:rpm -qa|grep firefox
            卸载rpm软件包:rpm -e 
            安装rpm软件包:rpm -ivh xxx.rpm
2、YUM包管理:是一种基于rpm的软件包管理工具,他能够从指定服务器上自动下载RPM包并且自动安装,可以自动处理
        软件包之间的依赖关系
        
        1、查看当前系统中已经安装的rpm包:yum list installed
        2、卸载rpm包:yum remove 软件包名
        3、安装rpm包:yum install firefox

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值