Linux基础 想学好Linux请看这篇文章 Linux操作指令大全

        当涉及学习 Linux 时,了解其基本原理和核心概念是至关重要的。Linux 是一种开源操作系统,广泛应用于服务器、嵌入式系统以及个人计算机中。它的灵活性、稳定性和安全性使得它成为许多 IT 专业人士和开发人员的首选。

第一步:了解基本概念和特点

Linux 作为一种类 Unix 操作系统,遵循了许多 Unix 标准并引入了自己的特性。学习 Linux 首先需要了解以下一些核心概念:

  • 文件系统:在 Linux 中一切皆文件,包括硬件设备、目录和数据。理解 Linux 的文件系统布局和文件权限是至关重要的。

首先Linux没有盘符根目录就是 /

  • /bin:存放系统命令(可执行文件)。
  • /sbin:管理员可执行文件
  • /lib*:可执行文件依赖的类库
  • /etc:存放系统配置文件。
  • /home:用户的家目录。
  • /dev:设备文件,用于访问硬件设备。
  • /proc:虚拟文件系统,包含当前运行进程的信息。
  • /var:存放经常变化的文件,如日志文件和邮件。
  • /tmp:临时文件目录。
  • /usr:用户程序目录,包含用户安装的软件。

Linux 文件权限

在 Linux 中,每个文件和目录都有权限设置,用于控制对其的访问。权限分为三个类别:所有者(owner)、所属组(group)和其他人(others)。对于每个类别,权限可以分为读(r)、写(w)和执行(x)权限。

  • r:读权限,允许查看文件内容或目录中的文件列表。
  • w:写权限,允许修改文件内容或在目录中创建、删除文件。
  • x:执行权限,对文件表示允许执行,对目录表示允许进入该目录。

权限设置通常以数字形式表示,如 755 或 rwxr-xr-x。数字表示为三组,分别代表所有者、所属组和其他人的权限。其中,r表示读权限,w表示写权限,x表示执行权限。因此,755 表示所有者具有读、写、执行权限,而所属组和其他人具有读、执行权限。

ls -l 列表显示详细信息  可以用这个指令在终端查看

  • Shell 和命令行:熟悉 Linux 的 Shell 和命令行界面,掌握常用的命令和管道操作。

在 Linux 系统中,Shell 是用户与操作系统内核之间的接口,用户可以通过 Shell 提供的命令来与系统进行交互和操作。掌握常用的 Shell 命令和管道操作是非常重要的,可以提高工作效率和系统管理能力。

常用 Shell 命令

以下是一些常用的 Linux Shell 命令及其功能:

  • ls:列出目录内容。可选 -a 显示所有隐藏文件 (.开头),-l 列表显示详细信息
  • pwd:显示当前工作目录。
  • cd:切换工作目录。

可选

cd.. 上级路径,

cd 路径名 当前路径下的文件夹

cd ~  回到当前用户家目录

cd - 回到上一级 从哪来的回哪去

  • mkdir:创建新目录。 可选  -p 创建多级目录
  • redir: 删除空目录
  • touch:创建文件
  • rm:删除文件或目录。可选 -r 递归删除 , -f 忽略错误 ,rm -rf / 删库跑路
  • cp:复制文件或目录。 cp 源文件 新文件(如果是目录,名字不变)
  • mv:移动文件或目录。mv 源文件 新文件 (如果是目录,名字不变)
  • cat:查看文件内容。可以和head tail more等使用
  • head:默认查看前10行  -n  查看前n行
  • tail:默认查看后10行  -n  查看后n行
  • more:每次查看一屏信息 -n 一屏几个  ,空格 翻页,q 退出
  • wc: -l 行数 -w 单词数目 -c 字节数
  • grep:在文件中查找指定文本。 -n 显示行号
  • echo:输出文本。
  • chmod:修改文件权限。
  • chown:修改文件所有者和所属组。
  • ps:显示进程状态。
  • kill:终止进程。
  • tar:打包和解压文件。 -f 归档名   -c 创建归档  -t  查看归档文件 -x 解开归档 -v 查看进度
  • gzip:压缩解压 -d 解压 -r 压缩
  • find:查找文件。
  • 管道操作

    在 Linux 中,管道操作(|)可以将一个命令的输出传递给另一个命令作为输入,从而实现多个命令的组合操作。例如

         ls -l | grep ".txt"

上述命令会列出当前目录下的所有文件,并使用 grep 过滤出包含 ".txt" 的文件。

Shell 脚本

除了单独执行命令外,用户还可以编写 Shell 脚本来批量执行一系列命令。Shell 脚本通常以 .sh 结尾,可以包含变量、条件语句、循环等,提高了自动化管理和任务处理的能力。

实用技巧

  • 使用 Tab 键补全命令或文件名,可以节省时间并减少错误。
  • 使用 Ctrl + C 终止当前命令的执行,Ctrl + D 退出 Shell。
  • 使用 man 命令查看命令的手册页,了解命令的使用方法和选项。
  • 学习并熟练使用通配符(如 * 和 ?)可以方便快捷地匹配文件名。

用户和权限:学习 Linux 用户管理和权限控制,包括用户组、权限设置等内容。

在 Linux 系统中,用户管理和权限控制是非常重要的,它们帮助我们管理系统资源、保护文件安全并限制对系统的访问。以下是有关 Linux 用户管理和权限控制的基本知识:

用户和用户组

  • 用户(User):Linux 系统中的每个用户都有一个唯一的用户名和用户 ID(UID)。用户可以登录系统,并根据其权限执行各种操作。每个用户都有自己的主目录,用于存储个人文件和配置。
  • 用户组(Group):用户组是将用户组合在一起的逻辑概念。每个用户可以属于一个或多个用户组。用户组可以作为权限分配的单位,使得一组用户可以共享相同的权限。

用户管理

  • 添加用户:使用 useradd 命令添加新用户,例如 sudo useradd username。可以使用 passwd 命令设置用户密码。
  • 删除用户:使用 userdel 命令删除用户,例如 sudo userdel username。可以选择是否同时删除用户的主目录。
  • 修改用户:使用 usermod 命令修改用户属性,例如 sudo usermod -aG groupname username 将用户添加到指定用户组中。
  • 切换用户:使用 su 命令可以在当前会话中切换到其他用户,例如 su - username
  • 查看用户:使用 id 命令查看当前用户信息,例如 id username。使用 who 或 w 命令查看当前登录用户。

用户组管理

  • 添加用户组:使用 groupadd 命令添加新用户组,例如 sudo groupadd groupname
  • 删除用户组:使用 groupdel 命令删除用户组,例如 sudo groupdel groupname
  • 修改用户组:使用 groupmod 命令修改用户组属性,例如 sudo groupmod -n newgroupname oldgroupname 修改用户组名。
  • 查看用户组:使用 cat /etc/group 命令查看所有用户组信息。

文件和目录权限

  • Linux 中的每个文件和目录都有所有者、所属组和其他人三种权限类别。可以使用 chmod 命令设置权限,例如 sudo chmod 755 filename
  • 权限类别包括读(r)、写(w)和执行(x)权限。数字形式的权限表示为三个八进制数,分别表示所有者、所属组和其他人的权限。例如 755 表示所有者具有读、写、执行权限,而所属组和其他人具有读、执行权限。

超级用户和 sudo

  • 超级用户(Superuser):Linux 系统中有一个特殊的用户,称为超级用户(也称为 root 用户)。超级用户具有系统上的最高权限,可以执行系统范围的操作。但出于安全性考虑,应该避免在常规操作中使用超级用户。
  • sudo:sudo 是一种授权机制,允许普通用户在需要时以超级用户的身份执行特定命令。使用 sudo 命令可以将命令的执行权限提升为超级用户,例如 sudo apt update

 SSH 与 SCP

  • SSH:Secure Shell,用于远程登录和执行命令
  • SCP:Secure Copy,用于在本地系统和远程系统之间传输文件

SSH(Secure Shell)

远程登录: 使用SSH连接到远程服务器

ssh username@remote_host

指定端口: 如果远程服务器的SSH服务监听在非标准端口(如2222),可以使用 -p 参数指定端口号

ssh -p 2222 username@remote_host
复制文件到远程主机: 通过SSH将本地文件复制到远程主机

scp 文件名 用户名@ip:远程文件路径

scp /path/to/local/file username@remote_host:/path/to/destination

复制文件从远程主机: 通过SSH将远程主机上的文件复制到本地

scp username@remote_host:/path/to/remote/file /path/to/local/destination
复制整个目录: 通过SSH将整个目录复制到远程主机

scp -r /path/to/local/directory username@remote_host:/path/to/remote/destination

SCP(Secure Copy)

SCP是基于SSH协议的文件传输工具,可以在本地主机和远程主机之间安全地复制文件和目录。

从本地到远程主机:

scp /path/to/local/file username@remote_host:/path/to/destination
从远程主机到本地:

scp username@remote_host:/path/to/remote/file /path/to/local/destination

复制整个目录:

scp -r /path/to/local/directory username@remote_host:/path/to/remote/destination

 

 服务相关

  • systemctl:管理 systemd 服务
  • service:管理系统服务
  • journalctl:查看系统日志

服务在 Ubuntu 中是非常重要的,因为它们负责在系统启动时启动各种服务和进程。以下是关于服务管理和系统日志查看的一些常用命令:

### 1. systemctl:管理 systemd 服务

启动一个服务:
  sudo systemctl start servicename

停止一个服务
  sudo systemctl stop servicename

-重启一个服务
  sudo systemctl restart servicename

查看服务状态:
  systemctl status servicename

启用开机自启动
  sudo systemctl enable servicename

禁用开机自启动:
    sudo systemctl disable servicename

2. service:管理系统服务

`service` 命令通常用于管理传统的 SysV 系统服务。

启动一个服务:
  sudo service servicename start

停止一个服务:
  sudo service servicename stop

重启一个服务:
  sudo service servicename restart

3. journalctl:查看系统日志

`journalctl` 命令用于查看 systemd 的日志。

查看所有日志:
  journalctl

按服务名查看日志:
  journalctl -u servicename

按时间范围查看日志:
  journalctl --since "YYYY-MM-DD HH:MM:SS" --until "YYYY-MM-DD HH:MM:SS"

实时查看日志:
  journalctl -f

 Python 与 PyCharm

  • Python:Ubuntu 自带 Python,可通过 python3 命令访问
  • PyCharm:可通过下载 PyCharm 官方版安装

Vim 编辑器

  • 打开文件: 您可以使用 vim 命令来打开一个文件,例如:

    vim filename
  • 命令模式和插入模式: Vim 有不同的工作模式,主要包括命令模式和插入模式。

    • 命令模式: 在命令模式下,您可以执行各种编辑操作,如复制、粘贴、删除等。
    • 插入模式: 在插入模式下,您可以输入或编辑文本内容。
  • 基本操作:

    • 保存并退出: 在命令模式下,输入 :wq 可以保存并退出文件。
    • 退出不保存: 在命令模式下,输入 :q! 可以强制退出不保存。
    • 撤销操作: 在命令模式下,按下 u 键可以撤销上一步操作。
  • 高级功能:

    • 复制粘贴: 在命令模式下,可使用 yy 复制一行内容,然后使用 p 粘贴到其他位置。
    • 搜索替换: 在命令模式下,使用 /search_term 可以搜索指定内容,使用 :s/old/new/g 可以替换文本。

              /搜索内容 向下搜索

              ?搜索内容  向上搜索

              按n下一个   N上一个

  • 帮助文档:

    • 您可以在 Vim 中按下 :help 进入帮助文档查看更多使用说明。

 Ubuntu 22 下使用 MySQL

  • 安装 MySQL:sudo apt install mysql-server
  • 启动 MySQL 服务:sudo systemctl start mysql
  • 连接到 MySQL:mysql -u 用户名 -p

 Ubuntu 22 下使用 MongoDB

  • 安装 MongoDB:参考 MongoDB 官方文档
  • 启动 MongoDB 服务:sudo service mongodb start

Ubuntu 22 下使用 Redis

  • 安装 Redis:sudo apt install redis-server
  • 启动 Redis 服务:sudo systemctl start redis-server

如果这篇文章对你有帮助,还请帮忙点赞关注。您的支持是我更新的最大动力!

                                         

  • 33
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值