入门linux之Ubuntu学习

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 1、介绍Ubuntu
  • 2、虚拟机目录解析
  • 3、常用指令
    • ls:罗列当前目录文件信息
    • 对ls -l 的结果解析
      • 1.第一个字符
      • 2.每三个字符(第一个字符后)
      • 3.共九个字符
      • 4.一个数字
      • 5.当前用户与 当前用户所在的组
      • 6.文件大小
      • 7.日期、时间、目录名
    • pwd:查看当前所在目录
    • cd:更改工作路径
    • 创建
      • 1.mkdir
      • 2.touch
    • 删除
      • 1.rmdir
      • 2.rm
    • 查看
    • wc:统计
    • 复制移动
      • 1.cp
      • 2.mv
    • 归档压缩
      • 1.tar
      • 2.gzip
    • 内容修改
      • 1.重定向
      • 2.管道
      • 3.过滤
    • 连接
      • 1.软连接
      • 2.硬链接
    • which:执行文件的位置
    • 其他
      • 1.ps:查看进程
      • 2.kill:杀死进程
      • 3.ifconfig:查看ip
      • 4.ping:连接(网址、IP)
  • 4、用户指令
    • 1.用户(用户组)的创建和删除
    • 2.更改用户权限
      • 用户类型
      • 权限类型(可以用数字表示)
      • 案例
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
    • 3.扩展
      • 1.chown
      • 2.chgrp
  • 5、ssh和scp
    • ssh
      • 安装
      • 服务操作
        • 1.service
        • 2.systemctl
    • scp
  • 6、Python与Pycharm
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

Ubuntu是一个功能强大、稳定可靠、易于使用和高度可定制的操作系统,适用于各种计算需求的用户。它免费提供给用户,并受到全球范围内的大量用户和开发者的支持和推崇。


提示:以下是本篇文章正文内容,下面案例可供参考

1、介绍Ubuntu

Ubuntu是一个基于Linux的操作系统,它是一个开放源代码的免费操作系统,广泛用于个人电脑、服务器和云计算等领域。Ubuntu由南非企业家马克·舍特尔沃思在2004年创建,其目标是为了提供一个易于使用、稳定可靠、安全性强的操作系统。

Ubuntu有着用户友好的界面和易于安装的特点,可以满足各种用户的需求,无论是初学者还是专业人士。它的默认桌面环境是基于GNOME桌面环境的Unity,但也提供了其他选择,如KDE、Xfce等。

Ubuntu拥有庞大的软件仓库,用户可以通过软件中心或者命令行轻松地安装和更新各种软件。它支持大多数常见的文件格式和多媒体格式,并且提供了多种办公套件、开发工具和娱乐软件。

除了个人电脑外,Ubuntu也被广泛应用于服务器和云计算环境。它具有良好的稳定性和安全性,提供了强大的服务器功能和工具,适用于各种规模的服务器环境。

Ubuntu还注重隐私和安全,提供了强大的防火墙和加密功能,以保护用户的数据和隐私安全。

总的来说,Ubuntu是一个功能强大、易于使用、稳定可靠且安全性高的操作系统,适用于各种使用场景,并且拥有庞大的社区支持和活跃的开发团队。

2、虚拟机目录解析

linux下一切皆文件,没有盘符,根目录就是/
类似树,一个支上一直向下延伸

  • Desktop:桌面

  • bin:可执行文件目录,普通用户

  • sbin:管理员可执行目录

  • lib*:lib、lib32、lib64、libx32:可执行文件的依赖库

  • user
    bin、sbin、lib*:用户安装过的可执行文件
    /local:bin、sbin、lib*

  • etc:所有软件的配置文件
    etc/apt/source.list:下载源在这里配置

  • home:用户家目录,相当于Windows的用户目录

  • opt:第三方软件安装的位置

  • proc:所有进程的文件

  • root:系统管理员家目录,普通用户没有权限访问

  • var:/locak:临时文件(锁文件),例:www:web目录
    log:日志路径;
    mail:邮件路径

上方知识图
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3、常用指令

格式:指令名 选项(可选,一般没有先后顺序) 参数(可选地)

ls:罗列当前目录文件信息

  • -a :显示所有隐藏文件信息(.开头)

  • -l:以列表显示详细信息

选项一个杠 - 就可以了,例:-al

  • -h:文件大小,可读性强,例:从4096变为4.0K(下方图片中)

  • 完整格式:ls -alh /:根目录有哪些文件

对ls -l 的结果解析

显示结果
在这里插入图片描述

可以以 drwxr-xr-x 2 wll wll 4096 3月 14 00:08 Documents 为例

1.第一个字符

  • -: 代表是一个文件

  • d:代表是一个目录

  • l:代表是一个连接(软连接、硬链接)

2.每三个字符(第一个字符后)

Eg:drwxr-x—中的rwx、r-x、r-x

  • r:可读
  • w:可写
  • x:可执行
  • -:无权限

3.共九个字符

去掉第一个字符(例:rwxr-xr-x)

  • 头三个:当前用户

  • 中间三个:当前用户组

  • 最后三个:其他用户

4.一个数字

2
当前文件/目录,连接数:有几个连接连到这个目录里

5.当前用户与 当前用户所在的组

wll wll

  • 默认组名与用户名一致

6.文件大小

4096

7.日期、时间、目录名

3月 14 00:08 Documents

pwd:查看当前所在目录

pwd:查看当前所在目录

在这里插入图片描述

cd:更改工作路径

  • cd …(两个点):上级路径
  • cd 路径名:当前路径下的文件
  • cd /etc/apt:使用绝对路径
  • cd ~:回到当前用户家目录(一键回城)
  • cd -:从哪来回哪去

创建

1.mkdir

mkdir:创建文件夹

mkdir:只能在已经存在的文件夹下创建

  • -p 创建多级文件夹
    例:mkdir -p folder3/folder33;folder3:是不存在的

2.touch

  • touch 文件名 ==》 创建文件,如果已经存在会替换掉原文件

删除

1.rmdir

rmdir:删除空目录

2.rm

rm:删除文件,无法删除文件夹

  • rm -f:忽略错误,即使有错也不会爆红(有就删,没有就算了)

  • rm -r:递归

  • rm -rf:递归删除

  • rm -rf /:删库跑路,将根目录下的全部删完,不要使用!不要使用!不要使用!

查看

  • cat:查看内容,可以查看多个文件
    cat 文件列表 ==> cat f1 f2 f3

  • head:查看头10行
    -n:查看前n行

  • tail:查看后10行
    -n:查看后n行

  • more:每次查看一屏信息(文件信息将屏幕铺满)
    空格翻页;q:退出

wc:统计

  • -l:行数

  • -w:单词数

  • -c:字节数(大小)

复制移动

1.cp

cp:拷贝文件

cp 源文件 新文件(如果是目录,名字不变)

2.mv

mv:移动文件

mv 源文件 新文件(如果是目录,名字不变;如果是文件名会改名)

:移动文件时可以先拷贝一份,有的文件是不能随便移动的,而且在linux中删除(还原)文件是一件很麻烦的事!!!

归档压缩

1.tar

tar:归档,将多个文件放在一起不压缩

  • -f:归档名,需要位于最后一个选项

  • -c:创建归档

  • -t:查看归档文件

  • -v:显示进度

  • -x:解开归档

创建一个归档:tar -cf 归档包名.tar 归档那些文件

新的归档文件比原始文件还大

		例子:tar  -cf  f15.tar  f1  f2  f3  f4 f5   ,	将f1-f5文件归档成f15.tar
		如果归档的文件不存在,仍然会归档,只是会出现警告

2.gzip

gzip:压缩解压

  • -d:解压
  • -r:压缩

内容修改

1.重定向

  • >:写入,会覆盖原内容,相当于open中的只写w
  • >>:追加

2.管道

|(竖线):管道

  • 左侧作为输入
  • 右侧作为输出

例子
cat /etc/apt/source.list | more
将左侧/etc/apt/source.list 作为内容以右侧的方式输出

3.过滤

grep:行过滤

  • -n:显示行号
    例子
    cat /etc/apt/sources.list | grep -n aliyun
    将/etc/apt/sources.list中带有aliyun的输出(带行号)

在这里插入图片描述

连接

ln:连接,分为软连接、硬链接

1.软连接

软连接:带有选项,-s

ln -s 原始文件 新文件

  • 相当于快捷方式,可以连接目录、文件

  • 删除原始文件,连接出来的文件将会无法使用

  • ls -l 的结果开头为l

2.硬链接

ln 原始文件 新文件

  • 只能连接文件,连接出来的也是一个文件

  • 相当于拷贝一份.,两者之间有关联

  • 修改一个另外一个也会变;删除一个,另外一个可以继续使用

which:执行文件的位置

linux自带python3

在这里插入图片描述

其他

1.ps:查看进程

  • ps -ef:显示所有进程的详细信息

在这里插入图片描述

2.kill:杀死进程

kill -9 进程号:杀死进程

  • -9:清理相关资源

3.ifconfig:查看ip

在这里插入图片描述

4.ping:连接(网址、IP)

在这里插入图片描述

4、用户指令

linu是多用户、多任务操作系统

  • whoami:我是谁,查看当前用户

  • 用户和用户组的存储的位置
    /etc/passwd:用户信息文件
    /etc/group:用户组信息文件

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

1.用户(用户组)的创建和删除

  • useradd:创建用户(需要权限,前方加上sudo)==》 sudo useradd 用户名(没有用户家目录)

    -m:创建用户时同时创建家目录
    -g:指定组

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

  • userdel:删除用户,同上加sudo
    -r:自动删除家目录
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • groupadd:创建组

  • groupdel:删除组

在这里插入图片描述

  • passwd 用户名:设置密码,默认设置root

  • su:切换用户(默认切换到root用户)
    su 用户名
    在这里插入图片描述
    补充:其他用户
    在这里插入图片描述

  • exit:退出当前用户返回上一次用户,直到退出系统

2.更改用户权限

chmod:更改权限

用户类型

  • u:所属用户
  • g:所属用户组里的其他用户
  • o:组外其他用户

权限类型(可以用数字表示)

  • r:读;4
  • w:写;2
  • x:执行,二进制执行,文件夹进入;1
  • -:无权限;0

在这里插入图片描述

对于其他用户不让进、不让读、不让写

案例

1

在这里插入图片描述

chmod g+w temp1:让temp1文件夹 所属用户所在组的其他用户拥有写的权限

2

在这里插入图片描述

chmod o=rwx temp1:让其他用户(wll)拥有读写、执行的权限

在这里插入图片描述
temp3(同组)对于temp1可读,可执行,不能写;wll(其他用户)可读写、可执行

3

在这里插入图片描述

chmod u+w,g+w,o=rwx temp1:修改三种用户

4

在这里插入图片描述

chmod 000 temp1:所有用户没有权限

5

在这里插入图片描述

chmod 777 temp1:所有用户所有权限

6

在这里插入图片描述

chmod 750 temp1:当前用户所有权限,组里用户可读可执行,其他用户没有权限

补充:一个数字代表一个用户
7:所有权限 ==》 可读4 + 可写2 + 可执行1 = 7
5:可读、可执行:可读4 + 可执行1 = 5

3.扩展

1.chown

直接修改所属用户

  • 参数-R 递归修改

2.chgrp

直接修改用户所属组

  • 参数 -R 递归修改

5、ssh和scp

ssh

一种通信协议,例:TCP、UDP、HTTP

注意事项

  • 连网:ping baidu.com成功即连网
  • 更新下载源:sudo apt update
  • 切换下载源(切换镜像):镜像(下载源)不支持安装包

安装

sudo apt install openssh-server
在这里插入图片描述

服务操作

查看状态

1.service
  • sudo service sshd status

  • sudo service sshd start

  • sudo service sshd stop

  • sudo service sshd restart

在这里插入图片描述

2.systemctl
  • sudo systemctl status sshd

  • sudo systemctl start sshd

  • sudo systemctl stop sshd

  • sudo systemctl srestart sshd

在这里插入图片描述
两个均可,从中可以看到ssh服务安装成功

scp

ssh是一种安全传输协议,scp是基于ssh的远程传输工具

使用方法:scp 文件名 用户名@IP:远程文件路径

具体操作可以看下方安装pycharm

6、Python与Pycharm

还记得前面讲过linux自带python3
所以不需要再安装python了
可以建立一个软连接
sudo ln -s python3.10 python
在这里插入图片描述
后续只要在任何地方输入python就可以进入python环境了

在这里插入图片描述

下面主要介绍pycharm的安装


在官方网站下载pycharm的linux安装包

在这里插入图片描述

然后通过Windows终端scp将安装包传输到虚拟机上

在这里插入图片描述

然后使用Xshell将安装包进行解压,我们将安装包解压到opt,但是因为权限的问题,无法 “写” ,所以需要先进行权限修改
在这里插入图片描述
修改后:
在这里插入图片描述
将安装包移动到opt,随后进行解压

在这里插入图片描述
使用虚拟机运行
在这里插入图片描述

在这里插入图片描述

好了,pycharm安装完成了
如果你们不想每回运行pycharm都需要运行 ./pycharm.sh

可以按照下面的方式安装快捷方式
在这里插入图片描述

在这里插入图片描述


总结

以上就是今天要讲的内容,望诸君共勉٩(๑>◡<๑)۶

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/481828.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

新店开通后要做什么?一定要先做这几个设置,不然会影响店铺流量

大家好&#xff0c;我是电商花花。 新手做店如果没有一个完整的做店思路&#xff0c;很容易迷茫&#xff0c;没有方向&#xff0c;没有步骤&#xff0c;做完上一步不知道下一步该去干嘛。 今天给大家讲一下在开店后一定要做的几项基础搭建。 1、绑定官方账户 开店后在店铺后…

【ORB-SLAM3】在 Ubuntu20.04 上编译 ORM-SLAM3 并使用 D435i 运行测试

【ORB-SLAM3】在 Ubuntu20.04 上编译 ORM-SLAM3 并使用 D435i 运行测试 1 Prerequisites1.1 C11 or C0x Compiler1.2 Pangolin1.3 OpenCV1.4 Eigen3 2 安装 Intel RealSense™ SDK 2.02.1 测试设备2.2 编译源码安装 3 编译 ORB-SLAM34 使用 D435i 运行 ORB-SLAM34.1 运行4.2 运…

【Linux】环境变量常见指令操作&基本实验(入门必看!)

前言 大家好吖&#xff0c;欢迎来到 YY 滴Linux系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的《…

如何用联合(共用体)union验证系统大小端

一&#xff1a;思路 由联合体的特点&#xff0c;可知上图&#xff0c;char c 和 int i 共用四个字节&#xff0c;假设是小端&#xff0c;则由左到右是低地址到高地址&#xff0c;四个字节的内容如图所示01 00 00 00 代码展示&#xff1a; 如果第一个字节是1&#xff0c;则证明…

【前端】Web API

1.Web API 简介 JS分为三大部分&#xff1a; ESCMScript&#xff1a;基础语法部分DOM API&#xff1a;操作页面结构BOM API&#xff1a;操作浏览器 Web API包含 DOM BOM 2.DOM基本概念 DOM全称 Document Object Mod…

Jenkins中支持maven构建遇到仓库报错问题

目的 Jenkins中支持maven构建(Jenkins使用docker安装&#xff09; 问题 1.构建一个maven项目 2.执行报错 /var/lib/jenkins/local_maven_repo/com/sx/root/1.0.4/root-1.0.4.pom.part.lock (No such file or directory) Failed to transfer Could not transfer artifact co…

后端系统开发之——功能完善

原文地址&#xff1a;https://blog.yiming1234.cn/?p830 下面是正文内容&#xff1a; 前言 通过SpringBoot开发用户模块的部分也就差不多要结束了&#xff0c;这一片文章就主要提一些在系统开发中需要注意到的细节部分和功能&#xff0c;也就是剩余的部分。 但是这个专栏只介…

监控系统Prometheus--入门

文章目录 Prometheus特点易于管理监控服务的内部运行状态强大的数据模型强大的查询语言PromQL高效可扩展易于集成可视化开放性 Prometheus架构Prometheus 生态圈组件架构理解 Prometheus的安装安装Prometheus Server上传安装包解压安装包修改配置文件 prometheus.yml 安装Pushg…

linux下docker容器的使用

1、根据已有镜像images创建容器 1.1、查看镜像 如果是接手的别人的项目&#xff0c;需要从以往的images镜像中创建新容器&#xff0c;使用命令查看当前机器上的docker镜像&#xff1a; docker images1.2、创建容器 使用docker run 根据images镜像名创建容器&#xff0c;命令…

查看Scala类的方法

文章目录 一、概述如何查看Scala类的方法二、使用Scala文档查看类的方法三、使用反射机制查看类的方法 一、概述如何查看Scala类的方法 本文介绍了在Scala中查看Int类方法的两种方法&#xff1a;使用Scala标准库文档和使用反射机制。通过Scala标准库文档&#xff0c;您可以方便…

[Netty实践] 请求响应同步实现

目录 一、介绍 二、依赖引入 三、公共部分实现 四、server端实现 五、client端实现 六、测试 一、介绍 本片文章将实现请求响应同步&#xff0c;什么是请求响应同步呢&#xff1f;就是当我们发起一个请求时&#xff0c;希望能够在一定时间内同步&#xff08;线程阻塞&am…

操作系统面经-用户态和内核态

字节实习生带你面试&#xff0c;后台私信可以获得面试必过大法&#xff01;&#xff01; 根据进程访问资源的特点&#xff0c;我们可以把进程在系统上的运行分为两个级别&#xff1a; 用户态(User Mode) : 用户态运行的进程可以直接读取用户程序的数据&#xff0c;拥有较低的…

启动Vue-demo时引发的一系列问题—解决办法

目录 1.初始遇到的问题&#xff1a;输入npm run dev 1.治标的解决方法 2.治本的解决方法 第一步&#xff1a;检查是否安装了cnpm 第二步&#xff1a;手动找到cnpm目录 第三步&#xff1a;配置系统环境变量 第四步&#xff1a;查看是否安装成功 1.初始遇到的问题&#xf…

JavaSE:类与对象

目录 一、前言 二、类与对象的介绍 1.类的定义格式 三、类的实例化 1.类的实例化介绍 2.成员初始化 3.类中方法的实现 四、封装 1.private实现封装 2.getter和setter方法 五、构造方法的使用 1.构造方法的介绍 2.构造方法的特性 六、this引用 1.this的介绍 2.th…

LeetCode---126双周赛

题目列表 3079. 求出加密整数的和 3080. 执行操作标记数组中的元素 3081. 替换字符串中的问号使分数最小 3082. 求出所有子序列的能量和 一、求出加密整数的和 按照题目要求&#xff0c;直接模拟即可&#xff0c;代码如下 class Solution { public:int sumOfEncryptedInt…

Oracle Data Guard常用命令

--查询数据库角色和保护模式 select database_role,switchover_status from v$database; --切换备库为主库&#xff08;切换后&#xff0c;主库为mount状态&#xff09; --TO PRIMARY alter database commit to switchover to primary; --SESSIONS ACTIVE alter database comm…

如何保障消息一定能发送到RabbitMQ?

我们知道&#xff0c;RabbitMQ的消息最终是存储在Queue上的&#xff0c;而在Queue之前还要经过Exchange&#xff0c;那么这个过程中就有两个地方可能导致消息丢失。第一个是Producer到Exchange的过程&#xff0c;第二个是Exchange到Queue的过程。 为了解决这个问题&#xff0c…

大学期末考试搜题软件?这4款足够解决问题 #知识分享#笔记#职场发展

当代大学生面临着繁重的学业压力和海量的知识点&#xff0c;如何高效地进行学习和搜题成了他们关注的焦点。幸运的是&#xff0c;随着科技的不断进步&#xff0c;我们有越来越多的日常搜题和学习软件可以帮助我们更好地应对这些挑战。在本文中&#xff0c;我将为大家介绍10款备…

皓学IT:WEB06_ EL表达式JSTL标签库

一、EL表达式 1.1.特点 是一个由java开发的工具包 用于从特定域对象中读取并写入到响应体开发任务&#xff0c;不能向域对象中写入。 EL工具包自动存在Tomcat的lib中&#xff08;el-api.jar&#xff09;&#xff0c;开发是可以直接使用&#xff0c;无需其他额外的包。 标准…

千万不要错过这9款能让你快速写作成长的宝藏软件…… #科技#学习方法#学习

很多小伙伴想要自己做自媒体&#xff0c;但是却不知道从何下手&#xff0c;今天我就和大家分享一波好用的一些自媒体工具。 1.红桃写作 这是一个微信公众号 面向专业写作领域的ai写作工具&#xff0c;写作助手包括&#xff0c;ai论文,ai开题报告、ai公文写作、ai商业计划书、…
最新文章