【Linux 之一 】Linux常用命令汇总

Linux常用命令

  • ./
  • cat
  • cd 命令
  • chmod
  • clear
  • cp
  • history
  • htop
  • ln
  • mkdir
  • mv
  • pwd
  • rm
  • tail
  • uname
  • wc
  • whoami

  我从2021年4月份开始才开始真正意义上接触Linux,最初学习时是一脸蒙圈,啥也不会,啥也不懂,做了很多乱七八糟,没有条理的笔记。不知不觉现在已经过去两年的时间了,回头翻看自己曾经的笔记,个人觉得有必要对过去所学进行一次梳理,这也是写本篇博客的初衷,也算是对自己的一种激励吧。好了,废话不多说,直接步入正文吧。

备注:很多命令可能有很多参数,但是我在介绍各种命令的时候,仅列出了我平时经常用的一些参数,若想了解某个命令全部信息,可在“终端”中使用 man 命令进行查看。

./

  也许 ./ 符号本身不是命令,但在这个列表中值得一提。它允许shell直接从终端运行可执行文件,并在系统中安装任何解释器。不再双击图形文件管理器中的文件!
  运行可执行文件时,请确保它具有可执行(x)权限,您可以使用chmod命令修改该权限。

cat

说明:用于连接文件并打印到标准输出设备上。英文全拼:concatenate
格式cat [para] fileName
参数

  • -n :由 1 开始对所有输出的行数编号
  • -b :和 -n 相似,只不过对于空白行不编号

举例

  • 将文件textfile1 的内容添加上行号,然后输出到文件textfile2中
jack@fw02:~$ cat -n textfile1 > textfile2
  • 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里
jack@fw02:~$ cat -b textfile1 textfile2 >> textfile3

cd 命令

说明:用于切换当前工作目录。cd的英文全拼为 change directory。 其中,dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录)。
格式cd [dirname]
举例

jack@fw02:~$ cd /usr/bin	/* 跳到 /usr/bin/目录 */
jack@fw02:~$ cd ~		 	/* 切换到自己的home目录 */
jack@fw02:~$ cd				/* 切换到自己的home目录 */
jack@fw02:~$ cd ../../		/* 切换到上两级目录 */

(1)~ :表示为 home 目录 的意思
(2). 则是表示目前所在的目录
(3) 则表示目前目录位置的上一层目录。

chmod

说明:用于修改文件权限,Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)
如下图所示,每一个组占个bit, 分别表示“读、写、执行”
在这里插入图片描述

格式chmod [para] mode file...
参数

  • mode : 权限设定字串,格式为:[ugoa...] [+ - =] [rwx]
    • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是
    • +表示增加权限、- 表示取消权限、= 表示唯一设定权限
    • r 表示可读取,w 表示可写入,x 表示可执行
  • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)

举例

jack@fw02:~$ chmod 777 test1.c		/* 赋予test1.c最大的权限,所有用户均可读、可写、可执行 */
jack@fw02:~$ chmod ugo+r test2.c	/* 设置所有用户都可读 */
jack@fw02:~$ chmod a+x test3.c		/* 设置所有用户可执行该文件 */
jack@fw02:~$ chmod -R a+r *			/* 将目前目录下的所有文件与子目录皆设为任何人可读取 */

clear

格式
说明:清除终端(terminal)上的内容
参数:无
举例

jack@fw02:~$ clear			/* 清除当前终端屏幕上的内容 */

cp

说明:用于复制文件或者文件夹,可以实现单个文件的复制,也可以实现多文件或者文件夹的复制
格式cp [option] source dest
参数

  • -f:覆盖已经存在的目标文件而不给出提示
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中
  • -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件

举例

history

  如果你正在努力记住一个命令,history就会派上用场。此命令显示一个枚举列表,其中包含您过去使用过的命令:

htop

  htop是一种交互式流程查看器,可让您直接从终端管理计算机的资源。在大多数情况下,默认情况下它并没有安装。关于htop更详细的使用说明,详见文章:https://blog.csdn.net/KXue0703/article/details/130398926

ln

   ln是Linux系统中非常常用且重要的一个命令,用于创建硬链接或者软链接(符号链接)。当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
   关于ln命令的详细说明详见文章:https://blog.csdn.net/KXue0703/article/details/145009468

mkdir

说明:该命令用于创建一个目录,英文全拼为:make directory
格式mkdir [-p] dirName
参数

  • -p 确保目录名称存在,不存在的就建一个

举例

jack@fw02:~$ mkdir jack_test		/* 创建一个名为 jack_test 的文件夹 */
jack@fw02:~$ mkdir jack/test		/* 创建一个名为 test 的文件夹,若jack目录不存在则首先会创建jack文件夹 */

mv

说明:mv(move file)命令可以用来修改文件或者文件夹的名字(即重命名)、也可以用于将文件或者文件夹移动到其它的位置、也可以在移动文件或文件夹位置的时候同时对其重命名
格式mv [options] src dst
参数

  • -b:当文件或者文件夹存在时,在执行覆盖前会为其创建一个备份
  • -i:如果待移动的文件(或文件夹)与目标目录中的文件(或者文件夹)重名时,则会首先询问是否覆盖旧的文件,输入y表示直接覆盖,输入n表示取消该操作
  • -f:如果待移动的文件(或文件夹)与目标目录中的文件(或者文件夹)重名时,不会询问,直接覆盖旧的文件
  • -n:不要覆盖任何已经存在的文件(或文件夹)

举例

/* 将文件 bibake.sh 重命名为 bitbake.exe */
jack@fw02:~$ mv bitbake.sh bitbake.exe	/* 将 bitbake.exe 移动到 test文件中 */
jack@fw02:~$ mv bitbake.exe test/
jack@fw02:~$ cd test/
jack@fw02:~/test$ ls
bitbake.exe/* 将 bitbake.exe 移动到 ../ 目录中,并同时重命名为 bitbake.sh */
jack@fw02:~/test$ mv bitbake.exe ../bitbake.sh

pwd

说名:Linux pwd(英文全拼:print working directory)命令用于打印当前工作目录,pwd始终是以绝对路径的方式打印工作目录,即从根目录(/)开始到当前目录的完整路径。
格式pwd [option],一般情况下,该命令不需要加任何参数,直接写pwd即可。
参数

  • L:打印逻辑上的工作目录(默认选项)
  • P:打印物理上的工作目录

举例

/* 查询engine文件夹的目录 */
jack@fw02:~/engine$ pwd
/home/jack/engine

rm

说明:删除一个文件或者目录,英文全拼:remove
格式rm [para] name...
参数

  • -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认
  • -r 将目录及以下之档案亦逐一删除

举例

jack@fw02:~$ rm test1.c			/* 删除test1.c */
jack@fw02:~$ rm -rf test2		/* 删除test2文件夹及文件夹中的所有内容 */

tail

说明:tail命令用于查看文件的内容,特别是参数-f特别常用,用于查看正在变化的日志文件信息。tail -f filename会把filename文件里最尾部的内容显示在屏幕上,并且不断刷新,只要filename文件产生更新,就可以实时看到最新地文件内容。
格式tail [参数] [文件]
参数

  • -f:循环读取,只要文件有更新,就会显示出来
  • -c <数目> 显示的字节数
  • -n <行数> 显示文件尾部地n行内容

举例

tail printf.log			// 这种情况,仅默认显示printf.log的最后10行tail -f printf.log  	// 实时显示printf.log文件的变化tail -n 100 printf.log 	// 显示printf.log文件的最后100行数据tail -c 100 printf.log	// 显示printf.log文件的最后100字节

uname

说明:用于打印系统的某些信息。当不带参数时,与带参数 -s 效果是一样的(简而言之,就是uname默认查询的是内核的名字)
格式uname [OPTION]...
参数

  • -a:打印所有的信息
  • -s:显示内核名称
  • -n:显示网络节点主机名
  • -r:显示内核的版本信息
  • -v:显示内核版本
  • -m:显示硬件架构名称
  • -p:打印处理器的类型
  • -i:打印硬件平台类型
  • o:打印操作系统类型

举例

jack@jack-G480:~$ uname
Linuxjack@jack-G480:~$ uname -s
Linuxjack@jack-G480:~$ uname -r
5.15.0-91-genericjack@jack-G480:~$ uname -m
x86_64jack@jack-G480:~$ uname -p
x86_64jack@jack-G480:~$ uname -o
GNU/Linuxjack@jack-G480:~$ uname -a
Linux jack-G480 5.15.0-91-generic #101~20.04.1-Ubuntu SMP Thu Nov 16 14:22:28 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

wc

说明:用于计算字数,利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。
格式wc [参数][文件...]
参数
举例

jack@fw02:~$ wc u-boot.bin bitbake.sh  /* 读取这两个文件的行数,字数 ,字节数,名完成了汇总 */2193  12392 424008 u-boot.bin7     21    103 bitbake.sh2200  12413 424111 total

whoami

格式:whoami
说明:该命令(who am I的缩写)显示当前操作的用户名
举例

jack@fw02:~$ whoami
jack  /* 指明了当前用户名为 jack,但是我觉得此命令用处不大呢 */

边学习,边更新。。。
边学习,边更新。。。
边学习,边更新。。。

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

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

相关文章

Hexo + NexT + Github搭建个人博客

文章目录 一、 安装二、配置相关项NexT config更新主题主题样式本地实时预览常用命令 三、主题设置1.侧边栏2.页脚3.帖子发布字数统计 4.自定义自定义页面Hexo 的默认页面自定义 404 页自定义样式 5.杂项搜索服务 四、第三方插件NexT 自带插件评论系统阅读和访问人数统计 五、部…

开发神器之cursor

文章目录 cursor简介主要特点 下载cursor页面的简单介绍切换大模型指定ai学习的文件指定特定的代码喂给ai创建项目框架文件 cursor简介 Cursor 是一款专为开发者设计的智能代码编辑器&#xff0c;集成了先进的 AI 技术&#xff0c;旨在提升编程效率。以下是其主要特点和功能&a…

当前目录不是一个git仓库/远程仓库已经有了一些你本地没有的更改

目录 问题1&#xff1a;问题2&#xff1a;解决1解决2 问题1&#xff1a; fatal: not a git repository (or any parent up to mount point /) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set). # 初始化 Git 仓库 git init需要到本地目录下先添加…

差异基因富集分析(R语言——GOKEGGGSEA)

接着上次的内容&#xff0c;上篇内容给大家分享了基因表达量怎么做分组差异分析&#xff0c;从而获得差异基因集&#xff0c;想了解的可以去看一下&#xff0c;这篇主要给大家分享一下得到显著差异基因集后怎么做一下通路富集。 1.准备差异基因集 我就直接把上次分享的拿到这…

BGP边界网关协议(Border Gateway Protocol)路由引入、路由反射器

一、路由引入背景 BGP协议本身不发现路由&#xff0c;因此需要将其他协议路由&#xff08;如IGP路由等&#xff09;引入到BGP路由表中&#xff0c;从而将这些路由在AS之内和AS之间传播。 BGP协议支持通过以下两种方式引入路由&#xff1a; Import方式&#xff1a;按协议类型将…

使用FFmpeg和Python将短视频转换为GIF的使用指南

使用FFmpeg和Python将短视频转换为GIF的使用指南 在数字时代&#xff0c;GIF动图已成为表达情感和分享幽默的重要媒介。无论是社交媒体上的搞笑片段还是创意项目中的视觉效果&#xff0c;GIF都能迅速抓住观众的注意力。然而&#xff0c;很多人不知道如何将短视频转换为GIF。本…

LLM - 大模型 ScallingLaws 的迁移学习与混合训练(PLM) 教程(3)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/145212097 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Scalin…

解决leetcode第3418题机器人可以获得的最大金币数

3418.机器人可以获得的最大金币数 难度&#xff1a;中等 问题描述&#xff1a; 给你一个mxn的网格。一个机器人从网格的左上角(0,0)出发&#xff0c;目标是到达网格的右下角(m-1,n-1)。在任意时刻&#xff0c;机器人只能向右或向下移动。 网格中的每个单元格包含一个值coin…

蓝桥杯 Python 组知识点容斥原理

容斥原理 这张图初中或者高中数学课应该画过 也就是通过这个简单的例子引出容斥原理的公式 这张图的面积&#xff1a;s1 s3 s7 - 2 * s2 - 2 * s4 - 2 * s6 3 * s5 通过此引导出容斥原理公式 那么下面来一起看看题目 题目描述 给定 n,m 请求出所有 n 位十进制整数中有多…

GitLab:添加SSH密钥之前,您不能通过SSH来拉取或推送项目代码

1、查看服务器是否配置过 [rootkingbal-ecs-7612 ~]# cd .ssh/ [rootkingbal-ecs-7612 .ssh]# ls authorized_keys id_ed25519 id_ed25519.pub id_rsa id_rsa.pub2、创建密钥 $ ssh-keygen -t rsa -C kingbalkingbal.com # -C 后写你的邮箱 一路回车 3、复制密钥 [rootk…

day10_Structured Steaming

文章目录 Structured Steaming一、结构化流介绍&#xff08;了解&#xff09;1、有界和无界数据2、基本介绍3、使用三大步骤(掌握)4.回顾sparkSQL的词频统计案例 二、结构化流的编程模型&#xff08;掌握&#xff09;1、数据结构2、读取数据源2.1 File Source2.2 Socket Source…

【设计模式】 单例模式(单例模式哪几种实现,如何保证线程安全,反射破坏单例模式)

单例模式 作用&#xff1a;单例模式的核心是保证一个类只有一个实例&#xff0c;并且提供一个访问实例的全局访问点。 实现方式优缺点饿汉式线程安全&#xff0c;调用效率高 &#xff0c;但是不能延迟加载懒汉式线程安全&#xff0c;调用效率不高&#xff0c;能延迟加载双重检…

无公网IP 实现外网访问本地 Docker 部署 Navidrome

Navidrome 是一款可以在 macOS、Linux、Windows以及 Docker 等平台上运行的跨平台开源音乐服务器应用&#xff0c;它支持传输常见的 MP3、FLAC、WAV等音频格式。允许用户通过 Web 界面或 API 进行音乐库的管理和访问。本文就介绍如何快速在 Linux 系统使用 Docker 进行本地部署…

解决conda create速度过慢的问题

问题 构建了docker容器 想在容器中创建conda环境&#xff0c;但是conda create的时候速度一直很慢 解决办法 宿主机安装的是anaconda 能正常conda create,容器里安装的是miniforge conda create的时候速度一直很慢&#xff0c;因为容器和宿主机共享网络了&#xff0c;宿主机…

【Hive】新增字段(column)后,旧分区无法更新数据问题

TOC 【一】问题描述 Hive修改数据表结构的需求&#xff0c;比如&#xff1a;增加一个新字段。 如果使用如下语句新增列&#xff0c;可以成功添加列col1。但如果数据表tb已经有旧的分区&#xff08;例如&#xff1a;dt20190101&#xff09;&#xff0c;则该旧分区中的col1将为…

【Python】Selenium根据网页页面长度,模拟向下滚动鼠标,直到网页底部的操作

最近在弄selenium的爬取的过程中&#xff0c;我发现一些网站上的表格&#xff0c;是需要手动拉到底部才能加载完成的。 如果没有拉到底部&#xff0c;那么在获取网页表格的时候&#xff0c;表格就会只有显示的一部分&#xff0c;页面就不完整。 所以我就整理了一些模拟滚动鼠…

openharmony电源管理子系统

电源管理子系统 简介目录使用说明相关仓 简介 电源管理子系统提供如下功能&#xff1a; 重启服务&#xff1a;系统重启和下电。系统电源管理服务&#xff1a;系统电源状态管理和休眠运行锁管理。显示相关的能耗调节&#xff1a;包括根据环境光调节背光亮度&#xff0c;和根…

麒麟操作系统服务架构保姆级教程(十一)https配置

如果你想拥有你从未拥有过的东西&#xff0c;那么你必须去做你从未做过的事情 在运维工作中&#xff0c;加密和安全的作用是十分重要的&#xff0c;如果仅仅用http协议来对外展示我们的网站&#xff0c;过一段时间就会发现网站首页被人奇奇怪怪的篡改了&#xff0c;本来好好的博…

RabbitMQ---消息确认和持久化

&#xff08;一&#xff09;消息确认 1.概念 生产者发送消息后&#xff0c;到达消费端会有以下情况&#xff1a; 1.消息处理成功 2.消息处理异常 如果RabbitMQ把消息发送给消费者后就把消息删除&#xff0c;那么就可能会导致&#xff0c;消息处理异常想要再获取这条消息的时…

Linux:System V - 共享内存

1.System V共享内存的原理 通过为用户提供系统调用接口&#xff0c;让用户可以申请一块空间&#xff0c;进程A/B也可以通过系统调用接口将创建好的内存通过页表映射进进程的地址空间。完成让不同的两个进程看见同一份资源的目的。如果未来不想继续通信&#xff0c;取消进程和内…