【Ubuntu】Linux基础学习笔记
一:不同应用领域的主流操作系统
- 桌面操作系统
- Window系列
- 用户群体大
- Macos
- 适合开发人员
- Linux
- 应用软件少
- Window系列
- 服务器操作系统
- Linux
- 安全、稳定、免费
- 占有率高
- Windows Server
- 付费
- 占有率低
- 嵌入式操作系统
- Linux
- 移动设备操作系统
- Ios
- Android(基于Linux)
- Linux
二:常用Linux命令的基本使用
- 常用Linux命令的基本使用
- ls :查看当前文件夹下的内容
- -a :显示指定目录下所有子目录与文件,包含隐藏文件
- -l :以列表方式显示文件的详细信息
- -h :配合-l以人性化的方式显示文件大小
- pwd :查看当前所在文件夹
- cd [目录名] :切换文件夹
- cd :切换到当前用户的主目录(/home/用户目录)
- cd ~ :切换到当前用户的主目录(/home/用户目录)
- cd . :保持在当前目录不变
- cd .. :切换到上级目录
- cd - :可以在最近两次工作目录之间来回切换
- touch [文件名] :创建文件或修改文件时间
- 如果文件不存在,可以创建一个空白文件
- 如果文件已经存在,可以修改文件的末次修改日期
- mkdir [目录名] :创建目录
- -p :可以递归创建目录
- 新建目录的名称不能与当前目录中 已有的目录或文件同名
- rm [文件名] :删除指定的文件名
- -f :强制删除,忽略不存在的文件,无需提示
- -r :递归地删除目录下的内容,删除文件夹时必须加此参数
- 使用rm命令要小心,因为文件删除后不能恢复!
- clear :清屏
- echo 文字内容
- echo会在终端中显示参数指定的文字,通常会和重定向联合使用
- 重定向>和>>
- Linux允许将命令执行结果重定向到一个文件
- 将本应显示在终端上的内容输出/追加到指定文件中
- >:表示输出,会覆盖文件原来的内容
- >>表示追加,会将内容追加到已有文件的末尾
- 管道|
- linux允许将一个命令的输出通过管道作为另一个命令的输入
- 可以理解为显示生活中的管子,管子的一头塞东西进去,另一头取出来,这里|的左右分两端,左端塞东西(写),右端取东西(读)
- 常用的管道命令有
- more:分屏显示内容
- grep:在命令执行结果的基础上查询指定的文件
- 拷贝和移动文件
- tree [目录名] :以树状图列出文件目录结构
- -d :只显示目录
- cp 源文件 目标文件 :复制文件或目录
- -f :已经存在的目录文件直接覆盖,不会提示
- -i :覆盖文件前提示
- -r :若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
- mv 源文件 目标文件 :移动文件或者目录/ 文件或目录重命名
- -i :覆盖文件前提示
- tree [目录名] :以树状图列出文件目录结构
- 查看文件内容
- cat 文件名 :查看文件内容、创建文件、文件合并、追加文件内容等功能
- 一次性显示所有的内容,适合 查看内容较少 的文本文件
- -b :对非空输出行编号 (Linux中还有一个nl的命令和cat -b的效果等价)
- -n :对输出的所有行编号
- more 文件名 :分屏显示文件内容,每次只显示一页的内容
- 适合查看内容较多的文本文件
- 操作键
- 空格键:显示手册页的下一屏
- Enter键:一次滚动手册页的一行
- b:回滚一屏
- f:前滚一屏
- q:退出
- /word:搜索word字符串
- cat 文件名 :查看文件内容、创建文件、文件合并、追加文件内容等功能
- grep 搜索文本文件名 :搜索文本文件内容
- grep允许对文本文件进行模式查找(即正则表达式)
- -n:显示匹配行及行号
- -v:显示不包含匹配文本的所有行(相当于求反)
- -i:忽略大小写
- 常用的两种模式查找
- ^a:行首。搜寻以a开头的行
- ke$:行尾,搜寻以ke结束的行
- 通配符
- *代表任意个数个字符
- ?代表任意一个字符,至少1个
- []表示可以匹配字符组中的任一一个
- [abc]匹配a、b、c中的任意一个
- [a-f]匹配从a到f范围内的任意一个
- ls :查看当前文件夹下的内容
- 相对路径和绝对路径
- 相对路径 在输入路径时,最前面不是/或者~,表示相对 当前目录 所在的目录位置
- 绝对路径 在输入路径时,最前面是/或者~,表示从 根目录/家目录 开始的具体目录位置。
- 远程管理常用命令
- shutdown 选项 时间 :关机/重启
- shutdown命令可以安全关闭或者重新启动系统
- shutdown -r now :重新启动操作系统,其中now表示现在
- shutdown now :立即关机,其中now表示现在
- shutdown 20:25 :系统在今天的20:25会关机
- shutdown +10 :系统再过十分钟后自动关机
- shutdown -c :取消之前指定的关机计划
- -r 重新启动
- 不指定选项和参数,默认为1分钟之后关闭电脑
- 远程服务器时,最好不要关闭系统,而应该重新启动系统
- shutdown命令可以安全关闭或者重新启动系统
- 查看或配置网卡信息
- ifconfig :查看/配置计算机当前的网卡配置
- ifconfig | grep inet :查看网卡对应的ip地址
- ping ip地址:检测到目标ip地址的连接是否正常
- ifconfig :查看/配置计算机当前的网卡配置
- 远程登录和复制文件
- ssh [-p port] user@remote
- scp
- :后面的路径如果不是绝对路径,则以用户的家目录作为参照路径;加上-r选项可以传送文件夹
- scp -P port 01.py user@remote:Desktop/01.py:把本地当前目录下的1py文件复制到远程家目录下的Desktop/0.1py
- scp -P port user@remote:Desktop/01.pypy :把远程家目录下的Desktop/01.py文件复制到本地当前目录下的01.py
- scp -r demo user@remote:Desktop :把当前目录下的demo文件夹复制到远程家目录下的Desktop
- scp -r user@remote:desktop demo :把远程家目录下的Desktop复制到当前目录下的demo文件夹
- shutdown 选项 时间 :关机/重启
三: 权限管理常用命令
- 文件/目录的权限
- 创建组/ 删除组 的终端命令都需要通过 sudo 执行
序号 | 英文 | 缩写 | 数字代号 |
01 | read | r | 4 |
02 | write | w | 2 |
03 | excute | x | 1 |
目录 | 拥有者权限 | 组权限 | 其他用户权限 | |||||||
文件权限示例 | - | r | w | - | r | w | - | r | - | - |
目录权限示例 | d | r | w | x | r | w | x | r | - | w |
- chmod 修改用户/组 对文件/目录的权限
- chmod +/-rwx 文件名/目录名
- 组管理
- 组信息保存在etc/group文件中,/etc目录是专门用来保存系统配置信息的目录
- groupadd 组名 :添加组
- groupdel 组名 :删除组
- cat /etc/group :确认组信息
- chgrp -R 组名 文件/目录名 :递归修改文件/目录的所属组
- 用户管理
- 创建用户时,如果忘记添加-m选项指定新用户的家目录,最简单的方法就是删除用户,重新创建;创建用户时,默认会创建一个和用户名同名的组名;用户信息保存在 /etc/passwd文件中。
- useradd -m -g 组 新建用户名 :添加新用户
- -m自动建立用户家目录
- -g指定用户所在组,否则会建立一个和同名的组
- passwd 用户名 :设置用户密码
- 如果是普通用户,直接用passwd可以修改自己的账户密码
- userdel -r 用户名:删除用户
- -r 选项会自动删除用户家目录
- cat /etc/passwd | grep 用户名 :确认用户信息
- passwd文件(/etc/passwd文件存放的是用户的信息)由6个分号组成的7个信息,分别是:
- 用户名
- 密码(x表示加密的密码)
- UID(用户标识)
- GID(组标识)
- 用户全名或本地账号
- 家目录
- 登录使用的Shell,就是登录之后,使用的终端命令,Ubuntu默认是dash
- 查看用户信息
- id [用户名] :查看用户UID和GID信息
- who 查看当前所有登录的用户列表
- whoami 查看当前登录用户的账户名
- usermod 可以设置用户的主组/附加组和登录Shell
- 主组:通常在新建用户时指定,在/etc/passwd的第四列GID对应的组;附加组:在/etc/group中最后一列表示该组的用户列表,用于指定 用户的附加权限;注意:设置了用户的附加组之后,需要重新登录才能生效!
- usermod -g 组 用户名 :修改用户的主组(passwd中的GID)
- usermod -G 组 用户名 :修改用户的附加组
- usermod -s /bin/bash 用户名 :修改用户登录Shell
- usermod -G sudo 用户名 ;将用户添加到sudo附加组中
- 默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的。
- bin和sbin
- 在Linux中,绝大多数可执行文件都保存在/bin、/sbin、/usr/bin、/usr/sbin
- /bin(binary)是二进制执行文件目录,主要用于具体应用
- /sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
- /usr/bin(user commands for applications)后期安装的一些软件
- /user/sbin(super user commands for applications)超级用户的一些管理程序
- 切换用户su
-
- su - 用户名 :切换用户,并且切换目录
- -可以切换到用户家目录,否则保持位置不变
- su不接用户名,可以切换到root,但是不推荐使用,因为不安全
- exit退出当前登录用户
- su - 用户名 :切换用户,并且切换目录
-
- 修改文件权限
- chown 用户名 文件名|目录名 :修改文件|目录的拥有者
- chgrp -R 组名 文件名|目录名 :递归修改文件|目录的组
- chmod -R 755 文件名|目录名 :递归修改文件权限
拥有者 | 组 | 其他 | ||||||
r | w | x | r | w | x | r | w | x |
4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
四:系统信息相关命令
- 时间和日期
- date :查看系统时间
- cal :calendar查看日历,-y选项可以查看一年的日历
- 磁盘和目录空间
- -h 以人性化的方式显示文件大小
- df -h :disk free显示磁盘剩余空间
- du -h [目录名] :disk usage显示目录下的文件大小
- 进程信息
- ps aux :查看进程的详细状况
- ps默认只会显示当前用户通过终端启动的应用程序
- a:显示终端上的所有进程,包括其他用户的进程
- u:显示进程的详细状态
- x:显示没有控制终端的进程
- top :动态显示运行中的进程并且排序
- q退出top
- 比较漂亮的查看当前进程排名的软件 htop
- kill [-9] 进程代号 :终止指定代号的进程,-9表示强制终止
- 使用kill命令时,最好只终止由当前用户开启的进程,而不要终止root身份开启的进程,否则可能导致系统崩溃
- find查找文件
- find通常用来在特定的目录下搜索符合条件的文件
- find [路径] -name “*.py”查找指定目录下扩展名是.py的文件,包括子目录
- 如果省略路径,表示在当前文件夹下查找
- ln软连接
- ln -s 被链接的源文件 链接文件 :建立文件的软连接,类似windows的快捷方式
- 没有-s选项建立的是一个硬链接文件
- 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
- 源文件要使用绝对路径,不能使用相对路径,这样可以放慢移动连接文件后,仍能够正常使用
- 没有-s选项建立的是一个硬链接文件
- ln -s 被链接的源文件 链接文件 :建立文件的软连接,类似windows的快捷方式
- tar打包和压缩
- tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个打文件中,也可以把一个打包的大文件恢复成一系列文件
- tar -cvf 打包文件.tar 被打包的文件/路径 :打包文件
- tar -xvf 打包文件.tar :解包文件
- tar 选项说明:
- c:生成档案文件,创建打包文件
- x:解开档案文件
- v:列出归档解档的详细过程,显示进度
- f:指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
- 特别说明:f选项必须放在最后,其他顺序可以随意
- gzip/bzip2压缩/解压缩
- tar 与gzip/bzip2命令结合可以实现文件的打包和压缩
- tar只负责打包文件,但不压缩
- 用gzip/bzip2压缩tar打包后的文件,其扩展名一般用tar.gz/xxx.tar.bz2
- 在tar命令中通过使用-z选项调用gzip,-j选项调用
- 压缩文件
- tar -zcvf 打包文件.tar.gz 被压缩的文件/路径
- tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径
- 解压缩文件
- tar -zxvf 打包文件.tar.gz
- tar -jzxvf 打包文件.tar.bz2
- 解压缩到指定路径
- tar -zxvf 打包文件.tar.gz -C目标路径
- -C:解压缩指到指定目录,注意:要解压缩的目录必须存在
- tar -zxvf 打包文件.tar.gz -C目标路径
- tar 与gzip/bzip2命令结合可以实现文件的打包和压缩
- apt-get软件安装
- apt是Advanced Packaging Tool,是Linux下的一款安装包管理工具
- sudo apt install 软件包 :安装软件
- sudo apt remove 软件名 :卸载软件
- sudo apt upgrade :更新已安装的包
- apt是Advanced Packaging Tool,是Linux下的一款安装包管理工具
- ps aux :查看进程的详细状况
THE END
0
二维码
打赏
海报
【Ubuntu】Linux基础学习笔记
一:不同应用领域的主流操作系统
桌面操作系统
Window系列
用户群体大
Macos
适合开发人员
Linux
应用软件少
服务器操作系统
Linux
安全、稳……
共有 0 条评论