• Ubuntu学习---跟着绍发学linux课程记录(第二部分)


    Ubuntu的学习过程的笔记分为4个部分来记录:
    1、Ubuntu学习—跟着绍发学linux课程记录(第1部分)
    2、Ubuntu学习—跟着绍发学linux课程记录(第2部分)
    3、Ubuntu学习—跟着绍发学linux课程记录(第3部分)
    4、Ubuntu学习—跟着绍发学linux课程记录(第4部分)
    视频链接:
    Ubuntu 21.04乌班图 Linux使用教程_60集Linux课程
    所有可以下载的文本和软件资料在http://afanihao.cn/java


    我自己的ubuntu系统
    账号:jiaoyidi
    密码:qwer234

    7 文件权限

    7.1 文件的权限

    在这里插入图片描述
    文件权限是linux中一个重要的而且必须要理解的问题
    在这里插入图片描述
    如何查看一个文件的权限?
    在这里插入图片描述
    在这里插入图片描述
    第一列:文件的权限
    第二列的数字:表示文件中包含多少个文件
    第三列:属主(作者)
    第四列:用户所在的组
    第五列:表示文件的大小,217即表示217字节
    第六列:表示该文件被创建或修改的时间
    第七列:文件名称

    重点看第一个字符
    在这里插入图片描述
    d:目录
    l:软连接
    -:表示文件

    在这里插入图片描述
    对一个文件夹来说,可执行的意思就是可以打开查看的意思。可写的意思就是可以往里面创建文件的意思。
    也可以按照上面的图中最后一行介绍的那样可视化的查看一个文件的权限。

    7.2 修改文件权限

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    a-w:连自己都要减去w权限
    u:表示自己
    在这里插入图片描述
    简写方式是给自己和本组的用户一起修改权限,见下图:
    在这里插入图片描述

    7.3 修改文件的属主

    chown这个命令在日常操作中使用的很少,因为每个用户之间交互很少,都有属于自己文件目录,没有必要修改文件的属主。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    -R:表示将这个文件下的所有文件的属主全部改为目标属主,如果以后新建什么文件,属主也只属于属主和root两个用户。

    opt目录只有root用户才能访问
    在这里插入图片描述

    8、可执行脚本

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    8.2Shell脚本

    在这里插入图片描述
    在这里插入图片描述
    保存的时候将文件后缀名改为.sh

    在这里插入图片描述
    第一行:#! /bin/sh需要以# !开头,bin/sh是解释器
    echo:相当于打印
    x权限:执行权限
    三种执行方式:
    ./hello.sh:.表示当前路径,或者使用以下方式
    /home/jiaoyidi/hello.sh,将路径完全写出来,两种方式都得加上路径
    /bin/sh/ hello.s h也可以执行
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    8.3python脚本的创建

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    9、Shell

    9.1Shell中的变量

    在这里插入图片描述
    在这里插入图片描述
    SHELL只能在linux上运行
    在这里插入图片描述
    在这里插入图片描述

    9.2 环境变量

    在这里插入图片描述
    在这里插入图片描述
    export:可以定义一个环境变量
    在这里插入图片描述
    在这里插入图片描述

    jiaoyidi@jiaoyidi-virtual-machine:~/jiaoyidi$ printenv
    SHELL=/bin/bash
    SESSION_MANAGER=local/jiaoyidi-virtual-machine:@/tmp/.ICE-unix/1844,unix/jiaoyidi-virtual-machine:/tmp/.ICE-unix/1844
    QT_ACCESSIBILITY=1
    COLORTERM=truecolor
    XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
    XDG_MENU_PREFIX=gnome-
    GNOME_DESKTOP_SESSION_ID=this-is-deprecated
    LC_ADDRESS=zh_CN.UTF-8
    GNOME_SHELL_SESSION_MODE=ubuntu
    LC_NAME=zh_CN.UTF-8
    SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
    XMODIFIERS=@im=ibus
    DESKTOP_SESSION=ubuntu
    LC_MONETARY=zh_CN.UTF-8
    SSH_AGENT_PID=1809
    GTK_MODULES=gail:atk-bridge
    PWD=/home/jiaoyidi/jiaoyidi
    LOGNAME=jiaoyidi
    XDG_SESSION_DESKTOP=ubuntu
    XDG_SESSION_TYPE=x11
    GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
    XAUTHORITY=/run/user/1000/gdm/Xauthority
    GJS_DEBUG_TOPICS=JS ERROR;JS LOG
    WINDOWPATH=2
    HOME=/home/jiaoyidi
    USERNAME=jiaoyidi
    IM_CONFIG_PHASE=1
    LC_PAPER=zh_CN.UTF-8
    LANG=en_US.UTF-8
    LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
    XDG_CURRENT_DESKTOP=ubuntu:GNOME
    VTE_VERSION=6003
    GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/a1fb2dcb_1f34_42e9_8ba8_27f429283d2e
    INVOCATION_ID=a4c70feddeec45719ca1e84994e55dfe
    MANAGERPID=1638
    GJS_DEBUG_OUTPUT=stderr
    LESSCLOSE=/usr/bin/lesspipe %s %s
    XDG_SESSION_CLASS=user
    TERM=xterm-256color
    LC_IDENTIFICATION=zh_CN.UTF-8
    LESSOPEN=| /usr/bin/lesspipe %s
    USER=jiaoyidi
    GNOME_TERMINAL_SERVICE=:1.78
    DISPLAY=:0
    SHLVL=1
    LC_TELEPHONE=zh_CN.UTF-8
    QT_IM_MODULE=ibus
    LC_MEASUREMENT=zh_CN.UTF-8
    OUTDIR=/opt
    XDG_RUNTIME_DIR=/run/user/1000
    LC_TIME=zh_CN.UTF-8
    JOURNAL_STREAM=8:59478
    XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
    GDMSESSION=ubuntu
    DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
    LC_NUMERIC=zh_CN.UTF-8
    OLDPWD=/home/jiaoyidi
    _=/usr/bin/printenv
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60

    在这里插入图片描述
    环境变量是存在于环境中的变量,是一个全局的概念,不仅可以在终端中使用,也可以在脚本中使用来直接调用。
    在这里插入图片描述

    在以上的SHELL脚本中没有定义OUTDIR这个变量,依然可以直接使用
    执行:
    在这里插入图片描述
    重新修改环境变量的值
    再次运行sample.sh,发现输出随之也有了变化
    在这里插入图片描述
    在这里插入图片描述

    9.3用户环境变量

    在这里插入图片描述
    主目录下看不到.profile这个文件
    ls也看不到,只能ls -a看所有的文件,包括隐藏文件
    在这里插入图片描述
    定义一个环境变量:
    在这里插入图片描述
    使用gedit来打开一个隐藏文件,gedit是一个文本编辑器程序。
    gedit 文件名路径
    在这里插入图片描述

    .profile文件中额外添加

    export JAVA_HOME=/opt/jdk1.8/
    
    • 1

    在这里插入图片描述
    保存即可,需要注销一下就可以生效
    查看环境变量是否存在
    在这里插入图片描述
    这样环境变量就被永久的添加进去了,这样的原理是下图:
    在这里插入图片描述
    在这里插入图片描述
    系统变量可以设置为每个用户都可以使用的
    CentOS上面是.bash_profile文件存放用户配置

    9.4系统环境变量

    在这里插入图片描述
    ls /etc/profile
    在这里插入图片描述

    9.5 PATH环境变量

    在这里插入图片描述
    在这里插入图片描述
    使用echo命令将环境变量的名字显示出来
    在这里插入图片描述
    在这里插入图片描述
    蓝的的字是系统默认的环境变量

    bin:表示普通用户就可以执行的程序
    sbin:表示超级用户才能执行的程序
    使用ls查看/usr/bin目录下有哪些文件
    在这里插入图片描述
    可以看出/usr/bin下面有很多的命令,很多都没用过,也不用都学习
    查看一下/usr/bin和/usr/sbin目录下是否存在tar文件和useradd文件
    在这里插入图片描述
    存在!

    在安装系统的时候,系统自带的程序,是放在/user/下面的,用户安装的命令是在/user/local/下面的
    即还是下图的一行字:
    在这里插入图片描述
    /usr/bin/下长下面这个样子:
    在这里插入图片描述
    /usr/sbin/下长下面这个样子:
    在这里插入图片描述

    /usr/local/下有bin和sbin
    在这里插入图片描述
    /usr/local/bin/下还没有安装东西
    在这里插入图片描述
    /usr/local/sbin/下也没有安装东西
    在这里插入图片描述
    直接写hello.sh不能执行,是因为在环境变量中找不到这个命令
    只有在hello.sh前面加上该文件所在路径才能够执行它。如:/home/jiaoyidi/hello.sh或./hello.sh
    不知道是为什么使用/home/jiaoyidi/hello.sh不能执行,而需要进入jiaoyidi这个目录下执行./hello.sh才能正常执行,见下图:
    在这里插入图片描述
    接下来学习如何设置PATH环境变量
    在这里插入图片描述
    在哪里加上:可以在用户环境变量中加也可以在系统环境变量中添加。
    1、切换为root用户
    2、修改/etc/profile.d/myprofile.sh,在该文件上添加一个环境变量即可

    export PATH=$PATH:/homen/jiaoyidi
    
    • 1

    上面的冒号是分隔符,$PATH表示将原有的PATH值取出来,使用冒号将新添加的环境变量添在原有的环境变量之后。
    3、注销用户,重新登录
    在这里插入图片描述

    ![在这里插入图片描述](https://img-blog.csdnimg.cn/eae6690f6d944eb2ae74d9a753a2b7f9.p
    虽然上面修改过了,但是经过重启之后还是不能执行hello.sh,根本原因大概是虽然使用su root切换到了管理员用户权限,但是没有使用管理员登录脚本的权限。下面是报错
    在这里插入图片描述
    经过(gedit:5010): dconf-WARNING **: failed to commit changes to dconf: 连接已关闭 问题解决方法提示,使用su - root再试一遍
    又爆了这个错误的问题
    在这里插入图片描述
    明天白天再搞,凌晨1点11了,该睡觉了

  • 相关阅读:
    pytorch中nn.Parameter()使用方法
    BP神经网络简单应用实例,bp神经网络的设计方法
    【3D视觉】深度摄像头与3D重建
    进程状态和优先级【Linux】
    龙测票选,5本最受欢迎的软件测试书籍
    网站图片如何批量下载教程
    【进阶篇-Day6:JAVA中Arrays工具类、排序算法、正则表达式的介绍】
    K8S:kubectl陈述式及声明式资源管理
    python+vue+elementui企业会议管理系统django
    陕西cas:2055042-71-0N-(炔-四聚乙二醇)-生物素价格
  • 原文地址:https://blog.csdn.net/qq_45893319/article/details/132593779