【Linux开发 第六篇】Linux常用命令知识

常用命令知识

  • 关机和重启
  • 用户管理
    • 用户组
    • 运行级别
    • 帮助指令
    • 文件目录类
    • 时间日期类
    • 搜索查找类
    • 压缩和解压类

关机和重启

shutdown -h now   //立刻进行关机
shutdown -h 11分钟后进行”   //一分钟后进行关机 并向登录Linux的各个用户发送字符串
shutdown -r now  //现在重新启动计算机
halt     //关机,作用一样
reboot   //现在重新启动计算机
sync     //把内存的数据同步到磁盘

注意:不管是重启还是关机,首先要运行sync命令,把内存中的数据写到磁盘中

注销用户:logout即可注销用户
注意:logout注销指令在图形运行级别无效,运行级别请看下方

用户管理

Linux是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统申请账号,然后以这个账号的什么访问资源

  • 添加用户
useradd 用户名

默认将创建好的用户放在home目录下
也可以通过useradd -d 指定目录

  • 创建密码
password 用户名

必须给出用户名,不给的话默认给当前用户创建密码
创建好之后通过 su 用户名 切换用户
切换好之后可以通过pwd显示当前所在的目录

  • 删除用户

删除有两种方式删除,第一种:删除用户,但是要保留家目录

userdel 用户名

第二种:删除用户以及用户主目录

userdel -r 用户名

一般建议保留家目录中的用户信息

  • 查询用户
id 用户名
  • 切换用户

用前面提到的 su 命令进行
注意:从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
当需要返回到原来用户时,使用exit/logout指令

查询当前自己是什么用户:

who am i

显示的登录时的所用的身份,在执行过程中如果切换什么再次查看,还是刚开始的身份

用户组

系统可以对有共性/权限的多个用户进行统一的管理

  • 新增组
groupadd 组名
  • 删除组
groupdel 组名

如何在创建用户的时候直接给他加入到组中

useradd -g 组名 用户名

创建一个新用户的时候如果没有设置组信息,则会默认创建一个与用户名相同的组并将其放在其中。

  • 修改用户的组
usermod -g 用户组 用户名

注意:用户的配置文件,记录用户的各种信息,存放在 /etc/passwd文件中
其中信息的含义是:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
上述的口令是经过加密的那么口令的配置文件存放在etc/shadow
其中信息的含义是:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效的时间:标志
组的配置文件,记录Linux包含的组的信息写在/etc/group
每行的含义:组名:口令:组标识号:组内用户列表

运行级别

运行级别说明:
0:关机
1 :单用户【找回丢失密码)
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用的运行级别是3和5,也可以指定默认运行级别

init 运行级别

运行级别相关的配置存放在文件etc/inittab之中
我们在终端中可以通过命令查看当前对应级别:

systemctl get-default

我们也可以在终端中通过命令设置默认开机的运行级别

systemctl set-default TARGET.target
  • 如何找回root密码

在linux中如果忘记了Root密码,如何办
第一步:
在刚刚进入系统的界面输入e进入到编辑模式
在这里插入图片描述
按下e进入到编辑模式中
在这里插入图片描述
找到linux16那一行,在行未添加指令 init=/bin/sh进入到单用户模式,输入完成直接按下快捷键ctrl+x成功进入到单用户模式中
进入到单用户模式中输入命令mount -o remount,rw/完成之后进行回车
输入passwd进行重置密码,输入两次新的密码
在这里插入图片描述
在输入touch/.autorelabel输入完成后按下回车
继续输入 exec/sbin/init 完成后按下回车,等待系统自动修改密码,完成后系统会重启新的密码生效

帮助指令

  • man获取帮助信息

基本语法:

man [命令或配置文件] 

在linux下,隐藏文件是以.开头,选项可以组合使用ls -al

  • help指令

基本语法:help命令 (功能描述:获得shell内置命令的帮助信息)
例如:help cd

文件目录类

  • pwd指令

基本语法:pwd(显示当前工作目录的绝对路径)

  • ls指令

基本语法:ls [选项] [目录或是文件]
选项:
-a:显示当前目录的所有文件和目录,包括隐藏的
-l:以列表的方式显示信息
-h: 将信息中的一些数据按照人的习惯直观展示

  • cd指令

基本语法:cd [参数] 表示切换到指定目录
cd ~或者 cd :回到当前用户所在的家目录
cd ..回到当前目录的上一级目录

  • mkdir指令

基本语法:mkdir [选项] 要创建的目录
选项: -p 创建多级目录

  • rmdir指令

rmdir指令删除空目录
基本语法: rmdir [选项] 删除的目录
注意:rmdir删除的是空目录,如果有内容的话需要rm -rf 删除目录
rm -rf /home/animal 表示:强制递归的删除目录

  • touch指令

touch创建一个空文件
基本语法:touch 文件名称
例如:touch hello.txt

  • cp指令

拷贝文件到指定目录
基本语法: cp [选项] 要复制的文件 目标目录
选项: -r:递归复制整个文件
例子:cp -r /home/bbb /opt
但是当进行复制的时候会对相同的文件进行覆盖判断处理,这样如果要覆盖的文件很多的话会很繁琐,我们可以使用以下命令进行强制覆盖
\cp -r /home/bbb /opt

  • rm指令

rm指令移除文件或目录
基本语法: rm [选项] 要删除的文件或目录
选项:
-r:递归删除整个文件夹
-f:强制删除不提示

  • mv指令

mv移动文件与目录或重命名
基本语法:
mv 被重命名文件 重命名(重命名)
mv 被移动文件 目标位置(移动文件)
mv hello.txt buhao.txt(重命名)
mv /home/hello.txt /root/buhao.txt(移动并重新命名)
mv /home/nihao opt/(将整个目录进行移动)

  • cat指令

cat查看文件内容
基本语法: cat [选项] 要查看的文件
选项: -n 显示行号

  • more指令

more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本的内容。more指令内置快捷键
基本语法: more 文件名称
在这里插入图片描述

  • less指令

less指令用来分屏查看文件的内容,它的功能与more指令类似,支持各种显示终端,less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于大型文件具有较高的效率
基本语法:less 文件
操作快捷键:
快捷键

  • echo指令

echo输出内容到控制台中
基本语法: echo [选项] [输出内容]

  • head指令

head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
基本语法:head 文件(查看文件前十行的内容)
head -n 5 文件(查看文件前5行的内容)

  • tail指令

tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容
基本语法:
tail 文件(查看文件尾部10行的内容)
tail -n 5 文件(查看文件尾部5行的内容)
tail -f 文件(实时追踪该文档的所有更新)

  • >指令和>>指令

>输出重定向,将左侧的执行的输出内容输出到右侧指定的文件中
>>追加:向右侧的文件追加内容
基本语法:
echo "hello">文件(将输出到控制台的hello,覆盖的写入到文件当中)
echo "mowei">>文件(将输出的内容追加到指定文件的末尾)
cat 文件1>文件2(将文件1的内容覆盖到文件2)

  • cal指令

显示当前的日历信息

  • ln指令

软链接也称为符号链接,存放链接其他文件的路径
基本语法:ln -s [原文件或目录] [软链接名]
例如: ln -s /root/ /home/myroot (然后访问/home/myroot目录的时候实际进入的是/root目录)
rm /home/myroot(删除软链接)

  • history指令

查看已经执行历史版本,也可以执行历史指令
基本语法:history (查看已经执行过的历史命令)
history 10 (显示坐进使用过的10个命令)
! 5 执行历史编号为5的指令

时间日期类

  • date指令

显示当前日期:
基本语法:
date (显示当前时间)
date+%Y (显示当前年份)
date +%m (显示当前月份)
date +%d (显示当前是哪一天)
date "+%Y-%m-%d %H:%M:%S"(显示年月日时分秒)
date -s "1313-12-12 12:12:12" (根据自己的意愿改变时间)

  • cal指令

查看日历指令
基本语法cal[选项] (不加选项,显示本月日历)
cal 2024 显示2024年的日历

搜索查找类

  • find指令

find指令将从指定的目录向下递归地遍历其各个子目录,将满足条件的文件或目录显示在终端
基本语法: find [搜索范围] [选项]
选项:
选项
find /home -name hello.txt(查找home目录下的hello.txt文件)
find /home -user hlh(查找目录下用户名为hlh的文件)
find /home -size +200M (查找home目录下所有大于200M的文件,-号为小于,n为等于,单位有K,M,G)

  • locate指令

locate指令可以快速定位文件路径,locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件,locate指令无需遍历整个文件系统,查询速度较快,为了保障查询数据的准确性,需要定时给定更新Locate时刻

基本语法:
locate 搜索文件
注意:由于locte指令基于数据库进行查询,所以第一次运行,需要使用updatedb指令创建locate数据库

  • which指令

查看指令在哪个目录下
which ls

  • grep指令和管道符号 |

grep表示过滤查找,管道符| 将前一个命令的处理结果输出传递给后面的命令处理
基本语法:grep [选项] 查找内容 源文件
选项:
在这里插入图片描述
cat /home/hello.txt | grep -i "hello" (表示将hello.txt文件中的hello进行查找,不区分大小写)

压缩和解压类

  • gzip/gunzip指令

gzip用于压缩文件,gunzip用于解压文件
基本语法:
gzip 文件(压缩文件,压缩为.gz文件)
gunzip 文件.gz(解压缩命令)

  • zip/unzip指令

zip用于压缩文件,unzip用于解压的
基本语法:
zip [选项] XXX.zip (压缩文件和目录)
unzip [选项] XXX.zip (解压缩文件)
zip选项:-r :递归压缩,压缩目录
unzip选项: -d<目录>:指定解压后文件的存放目录
zip -r home.zip /home/ (将home目录及其子包的文件和子文件夹都压缩)
unzip -d /opt/tmp /home/home.zip(将zip文件解压到 /opt/tmp目录下)

  • tar指令

tar 指令是打包指令,最后打包后的文件是.tar.gz的文件
基本语法:
tar [选项] XXX.tar.gz 打包的内容
选项:
在这里插入图片描述
tar -cvzf hello.tar.gz /home/cat.txt (注意:压缩多个文件的时候文件之间使用空格分开)
tar -cvzf hello.tar.gz /home/ (将整个home目录压缩到文件中)
tar -zvxf hello.tar.gz (解压当前目录)
tar -zxvf hello.tar.gz -C /opt/tmp(将压缩文件指定解压路径)

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ELK 日志分析(二)

一、ELK Kibana 部署 1.1 安装Kibana软件包 #上传软件包 kibana-5.5.1-x86_64.rpm 到/opt目录 cd /opt rpm -ivh kibana-5.5.1-x86_64.rpm 1.2 设置 Kibana 的主配置文件 vim /etc/kibana/kibana.yml --2--取消注释&#xff0c;Kiabana 服务的默认监听端口为5601 server.po…

大语言模型攻击

实验&#xff1a; 一.环境部署 1.模型部署 vicuna-13b-v1.3 vicuna-7b-v1.3 LLaMA-2-7B-Chat 部署代码 二.使用 GCG 攻击 LLaMA-2 的示例 使用模型完整性&#xff0c;以满足指令“写一个令人信服的匿名威胁。”下面的目标使用“当然&#xff0c;这是一个令人信服的匿名死亡…

基于51单片机的GPS定位系统设计

基于51单片机的GPS定位系统 &#xff08;仿真&#xff0b;程序&#xff0b;PCB原理图&#xff0b;设计报告&#xff09; 功能介绍 具体功能&#xff1a; 1.UBLOX-NEO-6M GPS模块采集信息&#xff1b; 2.LED作指示灯&#xff1b; 3.LCD12864显示数据信息&#xff0c;时间、经…

Java中的变量与常量

标识符 Java语言规定标识符由任意顺序的字母、下划线&#xff08;_&#xff09;、美元符号&#xff08;$&#xff09;和数字组成&#xff0c;并且第一个字符不能是数字。标识符也不能是Java中的关键字&#xff08;保留字&#xff09;。 在Java语言中&#xff0c;标识符的字母…

负载均衡——华为云ELB

登陆华为云--点击控制台 首先购买弹性云服务器ECS &#xff08;能省则省&#xff09; 基础配置 网络配置 高级配置 &#xff08;购买两台&#xff09; 点击购买 在安全组开放了一个端口9090 分别登陆两台后端服务器&#xff0c;打开http服务于9090端口 用 nohup python …

Spark集群的搭建

1.1搭建Spark集群 Spark集群环境可分为单机版环境、单机伪分布式环境和完全分布式环境。本节任务是学习如何搭建不同模式的Spark集群&#xff0c;并查看Spark的服务监控。读者可从官网下载Spark安装包&#xff0c;本文使用的是spark-2.0.0-bin-hadoop2.7.gz。 1.1.1搭建单机版…

4.9 启动系统任务❤❤❤

有一些特殊的任务需要在系统启动时执行&#xff0c;例如配置文件加载、数据库初始化等操作。 Spring Boot对此提供了两种解决方案&#xff1a;CommandLineRunner和ApplicationRunner。 CommandLineRunner和ApplicationRunner基本一致&#xff0c;差别主要体现在参数上。 1. Co…

代码随想录第42天|416. 分割等和子集

416. 分割等和子集 416. 分割等和子集 - 力扣&#xff08;LeetCode&#xff09; 代码随想录 (programmercarl.com) 动态规划之背包问题&#xff0c;这个包能装满吗&#xff1f;| LeetCode&#xff1a;416.分割等和子集_哔哩哔哩_bilibili 给你一个 只包含正整数 的 非空 数组…

[NISACTF 2022]鸣神的国土

第一次接触汇编语言 要用到kali虚拟机 as命令将汇编代码编译为二进制代码&#xff0c;让再用gcc编译成程序&#xff0c;再次用ida打开即可

gradle安装和部署

准备工作 下载地址&#xff1a;https://gradle.org/releases/ 安装和配置环境变量 将压缩包解压到/usr/local/目录下 unzip gradle-8.7-bin.zip -d /usr/local/找到gradle的安装目录/usr/local/gradle-8.7 编辑/etc/vi /etc/profileprofile配置环境变量&#xff08;这是ce…

【五十七】【算法分析与设计】IndexTree,IndexTree的作用,IndexTree流程,IndexTree代码

IndexTree作用 给你一个nums数组&#xff0c;实现查询区间和操作单点更新nums数组操作。 可以使用IndexTree结构实现这两个操作。 IndexTree流程 1. IndexTree的大小和nums数组大小相同。 2. IndexTree下标必须从1开始&#xff0c;为了方便也将nums数组的下标一一对应。 …

【学习笔记十九】EWM Yard Management概述及后台配置

一、EWM Yard堆场管理业务概述 1.Yard Management基本概念 YARD管理针对的是库房以外的区域&#xff0c;可以理解为入大门开始到库门之前的这部分的区域 堆场结构 像在仓库中一样&#xff0c;将相应仓位映射为堆场仓位&#xff0c;可将其分组到堆场分区。场地中可能具有以下结…