• Linux一篇入门(以Ubuntu为例)


    一、Linux与Windows区别

    Linux:无盘符,只有一个根目录(/)
    Windows:有盘符

    二、目录相关常见命令

    1. Linux命令格式:    cmd -option parameter
    2. cdm命令,就是一个操作
    3. parameter一般是要做的对象
    4. option一般是用来修改parameter的,就是这个是一个什么样的

    1、常见目录命令

    1. pwd 查看当前所处路径
    2. ls 查看当前路径下所有内容(蓝色:文件夹 白色:文件)
    3. cd 切换路径/打开路径
    4. cd.. 打开上一级路径
    5. tab 自动补全,可以补全文件目录
    6. 上方向键 取得上一个历史命令
    7. 下方向键 返回取得下一个命令

    1. clear 清空屏幕
    2. cd ~ 返回home目录
    3. ls -l 以列表形式查看查看所有内容(大小形式默认是字节 eg:4096字节) 可以简写为ll
    4. ls -a 显示隐藏内容(都是以.开头)
    5. ls -h 以KB显示
    6. ls xx 罗列xx目录下的所有文件

    2、ls通配符(星号、问号、中括号)

    1. * 代表一个或多个任意符合
    2. eg: *.txt 只查找txt结尾的文件
    1. ? 代表一个任意符号
    2. eg: ls?? 罗列由两个字符组成的文件
    1. [] 代表一个字符,且必须为括号里的某个
    2. eg: ls[1234]23.odt
    3. ls[1-4]23.odt

    3、使用touch、mkdir和rm命令进行文件(文件夹)创建和删除

    1. touch 文件创建
    2. eg: touch test.txt 创建一个txt文件
    3. touch .test2.txt 创建一个隐藏文件(创建时以.开头)

    1. mkdir 创建目录
    2. eg: mkdir bb
    3. mkdir -p 创建多级目录

    1. rm 移除文件夹
    2. eg: rm 123.odt
    3. rm -d bb 删除文件夹(中间加-d或-r选项,表示bb是一个目录)

    4、使用mv和cp命令进行文件和文件夹的移动和复制命令

    1. mv 文件和文件夹移动
    2. eg: mv test.txt aa 将text.txt移动到aa文件夹下
    3. mv 125.txt ./126.txt 将125.txt移动到当前目录下且改名为126.txt(相当于重命名)
    1. cp 文件和文件夹复制
    2. eg: cp 125.txt aa 将125.txt复制到aa文件夹下

    5、帮助手册

    1. 方式1:--help
    2. eg:rm --help

    1. 方式2:man
    2. eg:man rm

    6、which命令

    which查看命令所在位置

    注意:which cd 为空,cd是shell内置的命令

    7、文件搜索

    方式1:ls通配符:仅限于当前目录下的模糊查找

    1. 方式2:find 搜索范围 搜索条件
    2. eg: find /home -name 123 //精确搜索
    3. find /home -name 123* //模糊搜索 其他用法 *123* 123??
    4. find /home -iname abc //选项-i,不区分大小写
    5. find / -size +409600 //根据文件大小搜索,+表示大于,-表示小于,=表示等于

    1. 补充:Ctrl + c 提前终止命令;
    2. 处理多文件查找时,需加单引号
    3. 1数据块 = 512字节byte = 0.5KB 200MB = 200*1024KB = 200*1024*2数据块
    1. 按文件类型搜索,文件类型有3种:1)文件:f 2)文件夹目录:d 3)软链接:l
    2. eg:find -type f //查找当前目录下所有文件
    3. find -type d //查找当前目录下的文件夹目录
    4. find -type l //查找当前目录下所有软链接

    1. 方式3:使用locate进行文件搜索(需要额外install)
    2. eg:locate 125.txt

    8、文本文件内容查看

    1. 方式1:使用cat命令查看文件内容
    2. eg:cat 126.txt

    1. 补充:cat -b 126.txt 会出现每一行的行号(不包含空行);
    2. cat -n 126.txt 会出现每一行的行号(包括空行);
    1. 方式2:使用more命令查看文件内容
    2. eg:more 126.txt

    1. 区别:more可以采用分页显示,使用空格下一页,回车下一行,b上一页;
    2. cat直接把所有内容显示出来

    9、文本内容的搜索

    1. 使用grep命令对文本内容进行搜索 grep 需要搜索的内容 文件名
    2. eg:grep user 126.txt
    3. grep -n user 126.txt 显示该内容在哪一行
    4. grep -v user 126.txt 反向搜索(搜索不包含user的行)

    10、使用右尖括号和双右尖括号进行命令结果输出到文本

    1. echo 回显命令,会将其后内容原封不动打印
    2. eg:echo asbcefg

     

    1. 将回显内容输入到文本文件中:
    2. eg1:echo hello > 126.txt (会把原文本文件内容覆盖)
    3. eg2:echo hello >> 126.txt (追加,不会覆盖原文本文件内容)

    三、管道和链接

    1、什么是管道

    管道:把一个命令的输出,通过管道连接作为另一个命令的输入(输出就是命令的结果,输入一般是一个命令的参数 eg:cat xxx.txt 这个txt就是cat的输入)

    管道连接通过|建立
        eg: ls -lh | grep 125.txt    只看125.txt结果

    2、链接

    ln有软链接和硬链接,软链接就是ln后面加-s,硬链接没有-s
    软链接占内存空间小

    链接:相当于windows中的快捷方式
        eg:创建aa文件夹中abc文件的硬链接
            ln aa/abc abc_softlink            (ln 文件位置及文件名 软链接名称)

    四、用户管理、用户组管理和权限

    Linux是一个多用户的操作系统。

    服务器是多个人管理(运维人员是多个)

    1、超管和普通用户的区别

    root:超管用户

    安装系统时默认创建的是一个普通用户。root用户具有所有权限,日常维护工作使用普通用户完成,除非遇到系统管理的工作才使用root用户。

    2、用户添加

     第一步:添加用户名        
             useradd xx 
     第二步:设置密码(不设置用户名的用户是不能使用的,注意是passwd不是password)
             passwd xx (sudo passwd xx)        (passwd给自己设置密码)

     注意:sudo使用超管权限命令

    关于sudo命令:
        是允许系统管理员让普通用户执行一些或全部的root命令的一个工具,如useradd,halt,reboot,su等。这样不仅减少了root用户的登录和管理时间,同时也提高了安全性。
        用户使用sudo的时候会先验证当前用户的密码,然后有5分钟的有效期,有效期内执行sudo不需要再输入密码。

    3、用户的切换

    1. su xx 用户切换
    2. su -xx 用户切换,并回到家目录
    3. exit 退出当前用户,返回上一个用户(从哪个用户切换过来的)
    4. 如果没有上一个用户则直接退出终端

    4、用户的删除

    1. userdel xx 删除xx用户
    2. userdel -r xx 删除xx用户的同时删除其家目录

    5、用户组管理

    1. groupadd xx 添加
    2. cat/etc/group 确认组是否被添加成功
    3. groupmod -n newname xx 改名
    4. groupdel xx 删除

    6、shell

    shell是用来解析命令的,它接收用户命令,然后调用相应的程序执行。
    shell相当于一个翻译,翻译我们的命令,让机器听懂。

    三种shell存储位置:
    第一种shell:    /bin/bash            翻译1号
    第二种shell:     /user/sbin/nologin      翻译2号
    第三种shell:    /bin/sh                翻译3号

    7、Linux内置命令和外置命令

    内置命令在系统启动时就调入内存,是常驻内存的,所有执行效率高。
    外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。

    8、查看用户信息

    1. id 查看id信息(idid xxuser)
    2. whoami 当前登录用户
    3. who 当前所有登录用书罗列出来

    9、修改用户信息(usermod 某些需要重新登录生效)

    1. usermod -g xxgroup xxuser 修改初始组(基本不需要修改)
    2. usermod -G xxproup,xxgroup xxuser 修改附加组
    3. usermod -s /bin/bash xxuser 修改shell

    10、文件权限

    1. - -rw -rw r--
    2. 第一个字符-表示二进制文件
    3. 后三个字符为一组,第一组rw-代表所有者的操作权限
    4. 第二组rw-代表所属组的操作权限
    5. 第三组r--代表其他用户对其的操作权限

    文件权限:    r:读        w:写        x:执行    -:无
    文件夹权限: R:列出文件列表        W:查看修改文件    X:删除和创建文件

    什么是可执行文件?
        Windows下的是exe(批处理命令),一般用来启动某个应用程序的。
        Linux下的shell脚本,一般用来启动某个应用程序或服务程序。

    权限文件文件夹(目录)
    r读read查看文件内容可以列出目录中的内容(极限名字)
    w写write修改文件内容可以在目录中创建、删除文件(包括修改文件名字)
    x执行execute可以执行运行文件可以进入目录(不能查看目录内容)

    11、权限修改

    只有文件所有者和超管可以修改文件的权限。

    1. 方式一: chmod [ugoa] [+-=] [rwx] 文件或目录
    2. u:所属人 g:组 o:其他人 a:所有
    3. +:添加权限 -:删除权限 =:设置为后侧的权限[rwx]

     

    1. 方式二:用数字代表权限 r=4,w=2,x=1
    2. 如:r--rw-rwx 467
    3. eg:chmod 651 xxfile

  • 相关阅读:
    C#详解:程序域、程序集、模块、Type、反射
    数学建模B多波束测线问题B
    搭建ASGI高性能web服务器FastAPI,python
    公开可用的API 合集
    为什么刚考完PMP,就开始准备软考了?
    云上攻防-云原生篇&Docker安全&权限环境检测&容器逃逸&特权模式&危险挂载
    山西电力市场日前价格预测【2023-10-13】
    用于原发性进行性失语症分类的可解释性机器学习影像组学模型
    MySQL——内置函数
    VSCode搭建内核源码阅读开发环境
  • 原文地址:https://blog.csdn.net/beiye_/article/details/127704582