【小白必看】linux基础命令和使用

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: linux基础命令和使用

linux基础命令和使用

  1. 通常用全部大写的变量名表示常量
  2. 动态变量的申明不用指定变量类型 a = 123 静态变量一般指定变量类型 int a = 123
  3. Python还允许用r’‘表示’'内部的字符串默认不转义 ‘’ 里面的东西原样输出
  4. ssh -keygen 即可生成ssh 钥匙,一路回车即可
    非对称加密算法
    使用 公钥 加密数据,需要 私钥 解密
    使用私钥 加密数据,血药使用 公钥 解密
  5. 执行 ssh-copy-id -p port user@remote可以让远程的服务器记住我们的公钥
  6. ssh -p port22 user@remote 连接远程计算机
  7. scp -P port22 user@remote 拷贝文件到远程服务器 加上-r 是拷贝文件夹 scp -r ~/Desktop zjx:Desktop/demo
  8. 配置别名 ssh zjx 即可
建立 ~/.ssh/config 文件
   Host 别名
    HostName 远程ip地址
    User 远程用户名
    Port 22
  1. 用户和权限 的基本概念序号 权限 英文 缩写 数字代号01 读 read r 402 写 write w 203 执行 excute e 1
  • 表示文件 d 表示目录
    硬链接数:通俗的讲,就是有多少种方式,可以访问到当亲目录 / 文件
    chmod 可以修改用户/组 对文件/目录 的权限
    chmod +/— rwx文件名|目录名
    eg: chmod -rw 01.py 去掉文件的可读可写的文件权限
    ./01.py 表示执行这个文件
  1. 创建组/删除组 的的终端命令都是要通过 sudo 执行
    groupadd 组名 添加组
    groupdel 组名 删除组
    cat/etc/group 确认组信息
    chgrp -R组名 文件/目录名 递归修改文件/目录的所属组
    eg:sudo droupdel dev
  2. 创建用户/设置密码/删除用户
    useradd -m -g 组 新建用户名 添加用户 -m 自动建立用户家目录 -g 指定用户所在的组,否则会建立一个和同名的组
    passwd 用户名 设置用户密码 如果是普通用户,直接用passed 可以修改自己的账户密码
    userdel -r 用户名 删除用户 -r选项会自动删除用户家目录
    cat/etc/passwd|grep 用户名 确认用户信息 新建用户后,用户信息会保存在 /etc /passwd文件中 cat -n显示行号
  3. 查看用户信息
    id【用户名】 查看用户的 UID和GID 信息 UID:用户标识 /etc/passed GID:组标识/etc/group
    who 查看当前所有登陆的用户列表
    whoami 查看当前登陆用户的账号名
    1.用户名 2.密码(x:表示的是加密的密码) 3. UID(用户标识) 4.GID(组标识) 5.用户全名或本地账号 6.加目录
    7.登陆使用的Shell,就是登陆之后,使用的终端命令,ubuntu默认的是dash
  4. usermod 可以用来设置 用户 的 主组/附加组 和登陆shell
    主组:通常在新建用户时指定,在 etc/passwd 的第四列 GID对应的组
    附加组: 在etc/group 中最后一列标识改组的用户列表,用于指定 用户的附加权限
    提示:设置了用户的附加组之后,需要重新登陆才可以生效
修改用户中的主组(passwd 中的 GID)
usermod -g 组 用户名
修改用户中的附加组
usermod -G 组 用户名
修改用户登陆shell 
uermod -s /bin/bash 修改shell dash——>bash
-- 
  注意:默认使用useradd 添加用户是没有权限使用 sudo 以 root 身份执行命令的,可以使用一下命令,将用户添加到sudo 附加组中        
  usermod -G sudo 用户名
--
  1. which
    提示 /etc/passwd 是用于保存用户信息的文件 /usr/bin/passwd 是用于修改用户密码的程序
    which 命令可以查看执行命令所在位置
    eg: which ls 输出 /bin/ls
    which useradd 输出 /usr/bin/useradd
  2. bin/sbin
    在 linux 中,绝大多数可执行文件都保存在 /bin,/sbin,/usr/bin,/usr/sbin
    /bin (binary) 是二进制执行文件的目录,主要用于具体应用
    /sbin (system binary) 是系统管理员专用的二进制代码存放目录,主要用于系统管理
    /usr/bin (user commands for applicarions) 后期安装的一些软件
    /usr/sbin (super user commands for applications)超级用户的一些管理程序
  3. su - 用户名 切换用户 加上 - 直接切换到它的家目录
  4. chown 修改拥有者 chgrp 修改组 chmod 修改权限
    chown 用户名 文件名 | 目录名 修改文件|目录的拥有者
    chgrp -R 组名 用户名 | 目录名 递归修改文件|目录的组
    chmod -R 755 文件名|目录名 递归修改文件权限 三个数字分别代表这 拥有者|组|其他 -rwxr-xr-x
    拥有者 r:4 w:2 X:1 组 r:4 w:2 x:1 其他 r:4 w:2 x:1
  5. cal 查看日历,-y 选项可以查看一年的日历
    date 查看系统时间
    df -h disk free 显示磁盘剩余空间
    du -h 【目录名】 disk usage显示目录下的文件大小 -h以人性化的显示文件大小
  6. 进程信息 所谓进程,通俗的来说 当前正在执行的一个程序
    ps aux process status 查看进程的详细状况
    top 动态显示运行中的进程并且排序 退出输入 q
    kill[-9]进程代号 终止指定代号的进程, -9表示强行终止
    ps 默认只会显示当前用户通过终端启动的应用程序
    ps选项说明 a 显示终端上的所有进程,包括其他用户的进程
    u 显示进程的详细状态
    x 显示没有控制终端的进程
    提示:使用 kill 命令时,最后值终止当前用户开启的过程,而不要终止 root 身份开启的过程,否则可能导致系统崩溃
  7. find [路径] -name “*.py” 查找指定路径下扩展名是.py 的文件,包括子目录 eg:find -name “*1*”
  8. 软连接 ls -s被连接的源文件 链接文件 建立文件的软连接,用通俗的方式讲 类似于 windows下的快捷方式
    eg: ln -s /home/python/Desktop/demo/b/c/01.py 01_jueduilujin
    1. 没有-s 选项建立的是一个硬链接
    2. 两个文件占用相同大小的磁盘空间,工作中几乎不会建立文件的硬链接
    3. 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
    在 linux中,文件名 和 文件数据 是分开储存的
  9. 打包/压缩
    tar -cvf 打包文件.tar 被打包的文件 /路径 打包文件 eg:tar -cvf py.tar 01.py 02.py 03.py
    tar -xvf 打包文件.tar
    解包文件eg: tar -xvf py.tar
    c:生产档案文件,创建打包文件 X:解开档案文件 v:列出归档的详细过程,显示进度 f: 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后 注意:f必须放在最后,其他选项顺序可以随意
  10. 压缩和解压
    tar:只负责打包文件,但是不压缩
    gzip压缩 tar 打包后文件,其扩展名一般为 xxx.tar.gz
    在linux 中,最常见的压缩文件格式就是 xxx.tar.gz
    在tar 命令中有一个选项 -z 可以调用 gzip ,从而可以方便的实现压缩和解压缩的功能
tar -zcvf 打包文件.tar.gz 被打包的文件 /路径 ...    压缩文件
tar -zxvf 打包文件.tar.gz               解压缩文件
tar -xvf 打包文件.tar.gz -C 目标文件        解压缩到指定路径
-C 解压缩到指定目录,注意:要解压缩的目录必须存在
  1. bzip2(two)
    tar 与 bzip2 命令结合可以使用实现文件 打包和压缩(用法和 gzip 一样)
    tar 只负责打包文件,但不压缩
    用bzip2 压缩 tar 打包文件后,其扩展名一般用 xxx.tar.bz2
    在tar 命令中有一个选项中 -j 可以调用 bzip2 ,从而可以方便的实现压缩 和 解压的功能
    tar -jcvf 打包文件.tar.bz2 被打包的文件 /路径 ... 压缩文件
    tar -jxvf 打包文件.tar.bz2 解压缩文件
  2. 通过apt 安装/卸载软件
    apt 是Advanced Packaging Tool,是linux 下的一款安装包管理工具
    sudo apt install 软件包 安装软件
    sudo apt remove 软件名 卸载软件按
    sudo apt upgrade 更新已安装的包
    sl,htop更加漂亮的显示
  3. gedit 编写文件
  • 安装 apt-get install gedit
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
195 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
789 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
129 3
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
106 2
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
75 14
Linux 10 个“who”命令示例
|
29天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
130 20
|
20天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
51 8
|
29天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
60 7
|
2月前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
46 9
|
2月前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解