linux常用命令

Posted bamboo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux常用命令相关的知识,希望对你有一定的参考价值。

linux常用命令

1.关机&重启命令

  • shutdown -h now 立刻进行关机
  • shutdown -h 1 一分钟后进行关机
  • shutdown -c 取消关机指令
  • halt 关机,作用同上
  • reboot 重启
  • sync 将内存刷入磁盘
注意事项
  • 执行shutdown、halt、reboot命令,系统默认先执行sync操作

2.创建用户&修改密码

  • useradd -d 指定家目录 -s 指定shell -g 用户组 用户名 创建用户
  • passwd 用户名 设置用户密码
  • logout 注销当前登陆
  • usermod 修改用户帐号的各项设定,例 usermod -d /home/deployer deployer
  • userdel 用户名 删除用户
  • userdel -r 用户名 删除用户及其家目录

3.切换用户&查看当前用户

  • su - 用户名 切换登陆用户
  • who am i 查看当前用户

    root@iZwz9edvty8pjepnrhjh37Z:/home# who am i
    root     pts/1        2021-04-23 16:19 (183.15.91.33)
注意事项
  • 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
  • 当需要返回到原来用户时,使用exit/logout.

4.用户群组

  • id 用户名 用于显示用户的ID,以及所属群组的ID
  • groupadd 组名 新增用户组
  • groupdel 组名 删除用户组
root@iZwz9edvty8pjepnrhjh37Z:/home# id deployer 
uid=1002(deployer) gid=1003(deployergroup) groups=1003(deployergroup)

用户和组相关文件

/etc/passwd 记录系统用户的一些基本属性。
deployer:x:1002:1003::/home/deployer/:/bin/bash
用户名:密码:UID(用户标识号):GID(组标识号):注释性描述:宿主目录:命令解释器
/etc/shadow 口令的配置文件
deployer:$6$8Fg17gaL$EhA8F5CCzPbUzVWsgJXtslKYZGH0E0B8D/VJl/rcB8f5.xdRXK7w4dUZ3UyFumRQkkIYpswL1Vdvh..gyEPPR/:18742:0:99999:7:::
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group 记录系统所有的用户组信息
deployergroup:x:1003:
组名:口令:组标识号:组内用户列表

5.帮助指令

  • man 命令 获得帮助信息,例:ls -ls /root
  • help 命令 获得shell内置命令的帮助信息

6.文件&目录

  • ls [-al] 列出目前工作目录所含文件及子目录
  • cd 目录 用于切换当前工作目录
  • pwd 显示当前工作目录
  • mkdir -p 需要创建的目录 创建目录,参数 -p 表示创建多级目录
  • tree -AL -L 1 目录 用于以树状图列出目录的内容

    • -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合
    • -C 在文件和目录清单加上色彩,便于区分各种类型
    • -L level 限制目录显示层级
  • touch 文件名.后缀 用于创建空文件
  • cp source desk 用于复制文件或目录

    cp test.mp4 a //a是一个目录,将test.mp4文件复制到a目录中
    cp -r a d //a、d是两个目录,将a目录及其子目录或文件复制到d目录中
  • rm -rf 用于删除一个文件或者目录,参数 -r 表示递归删除,-f 表示强制删除
  • mv oldFile newFile 用来为文件或目录改名、或将文件或目录移入其它位置
  • cat -n 文件名 用于连接文件并打印到标准输出设备上,参数 -n 表示显示行号
  • more 文件名 类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读
  • less 文件名 与 more 类似,less指令在显示内容时,根据显示需要加载内容,对于显示大文件有较高效率
  • echo "内容" 用于字符串的输出

    echo "hello world!"
    echo $PATH //  输出环境变量
  • head -n 1 文件名 用于查看文件的开头部分的内容,参数 -n 1 表示显示开头1行的内容
  • tail -f 文件名 用于显示文件最尾部的内容,参数 -f 表示实时显示最新的数据
  • echo "string" >> 文件名

    // > 输出重定向 和 >> 追加
    echo "string" > 文件名 // 输出"string" 并覆盖到文件中
    echo "string" >> 文件名 // 输出"string" 并追加到文件尾部
  • ln -s 原文件或目录 软链接名 为某一个文件在另外一个位置建立一个不同的链接
  • history 查看曾经执行过的指令

    history 10 //查看最近执行的10条指令

7.日期

  • date \'+%Y-%m-%d %H:%M:%S\' 显示当前时间

    date -s \'2021-04-28 22:35:30\' //设置当前时间为 2021-04-28 22:35:30
  • cal 查看当月日历

    cal 2020 // 查看2020年的日历

8.搜索查找

  • find 查找目录 -name 查找文件 查找指定目录或文件名

    find /etc -name php.ini //查找存放在/etc目录下的php.ini文件
  • locate 搜索文件 快速定位文件路径

    updatedb //先更新索引数据库
    locate php.ini //获取php.ini文件的路径
  • which 指令 可以查看某个指令的存放路径,例如:which locate
  • | 管道符,表示将前一个指令的结果输出传递给后一个指令进行处理,例如 cat php.ini | grep mysqli
  • grep 查找内容 源文件 用于查找文件里符合条件的字符串

9.压缩&解压

  • gzip 文件 用于压缩文件
  • gunzip 文件.gz 解压文件
  • zip [-r] 文件/目录 zip 是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip
  • unzip 压缩文件 解压文件
  • tar [选项] xx.tar.gz 打包的内容 备份或压缩文件

    tar -zcvf test.tar.gz a.txt b.txt //将a.txt和b.txt打包,命令为test.tar.gz
    tar -zxvf test.tar.gz //解压文件
    // -c 产生打包文件
    // -z 打包同时压缩
    // -v 显示详细信息
    // -f 指定压缩后的文件名
    // -x 解压tar包

10.组管理

在linux中的每个用户必须属于一个组,不能独立于组外。linux中每个文件有所有者,所在组,其他组的概念。

  • ls -ahl 查看文件所有者
  • chown 用户名 文件名 修改文件所有者
  • chgrp 组名 文件名 修改文件所在组

11.权限管理

权限分析

-rwxrw-r-- 1 deployer deployer 0 May 13 14:27 apple.txt

0-9位说明:

  1. 第0位确定文件类型(d, -, l, c, b)

    • l是链接,相当于window的快捷方式
    • d是目录
    • c是字符设备文件,例如鼠标,键盘
    • b是块设备,比如硬盘


  2. 第1-3位代表该文件所有者拥有的权限
  3. 第4-6位代表所在组拥有该文件的权限
  4. 第7-9位代表其他用户拥有该文件的权限

rwx权限详解

  1. rwx作用到文件

    • [r]代表可读(read):可以读取,查看该文件
    • [w]代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件
    • [x]代表可执行(execute):可以执行

  2. rwx作用到目录

    • [r]代表可读(read):可以读取,ls查看目录内容
    • [w]代表可写(write):可以修改,对目录内创建+删除+重命名目录
    • [x]代表可执行(execute):可以cd进入该目录

  3. rwx的数字表示

    • r=4, w=2, x=1     rwx=4+2+1=7

修改权限 - chmod

u:所有者   g:所在组   o:其他人   a:所有人(u,g,o的总和)

chmod u=rwx orange.txt //给所有者设置rwx权限
chmod u=rwx,g=rw orange.txt //给所有者设置rwx权限,所在组设置rw权限
chmod o+w orange.txt //给其他人添加w权限
chmod u-x orange.txt //给所有者去除执行权限
chmod 751 orange.txt //给所有者设置rwx权限,所在组设置rx权限,其他人设置执行权限

以上是关于linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章

linux中怎么查看mysql数据库版本

Linux常用文件管理命令

markdown [Docker] Docker片段列表和命令#linux #docker #snippets

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

C#常用代码片段备忘

常用python日期日志获取内容循环的代码片段