学习Linux系统中命令的简单方法
如果说如何快速学习、了解Linux的话,我的答案是学命令、背命令!为何呢?对于一名新手来说,去学习Linux的思想、了解Linux的架构、明白Linux中“一切皆文件”概念虽然说是没有错,是对的。但是个人认为去学习这些“高大上”的东西不是一时半会的事儿,它需要一定的时间和经验去沉淀才能掌握。那么如何最快速了解Linux并使用呢?我依然觉得学命令、背命令,掌握命令是比较笨但却是比较快的方式。

我开始学习Linux的时候,问了前辈:我入门Linux需要掌握哪些命令呢?前辈说:你掌握60个不重复的命令就差不多入门了。好吧!我就按照这个去网上找了相关命令的资料。命令总共分为文件目录、硬件监控、软件网络、系统管理四个大类,当然并非标准的,我只是简单的归类一下以便形成结构,有助于记忆。本文只简单讲命令,具体参数可以看后面的学习方法。大家可以看看网上的《Linux就该这么学》介绍常用命令的第二章,虽然不多,但是能先背下也有很大用处。篇幅有限,本次就讲解目录类的命令,其他后面再写。
命令基本上大部分格式都是差不多,有些命令参数会有两个或者更多:命令 选项 参数
• 三个W:
Whereis:用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。
Whatis:是用于查询一个命令执行什么功能,并将查询结果打印到终端上。
Which:用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。这三个命令很有用,再查找命令位置、环境变量配置或了解简要信息可以用。
•目录类:
cd:切换用户当前的工作目录,若目录名称省略,则变换至使用者的home directory,与加上~一样,也表示home directory的意思(家目录),.则是表示目前所在的目录,..则表示目前目录位置的上一层目录。
ls:用来显示目标列表,在Linux系统中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。
mv:用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。第一个参数表示源文件或目录,第二个表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖,可指定选项忽略。
cp:用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。
pwd:以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标准输出。
rm:可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。(慎用)
mkdir:用来创建目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。
rmdir:用来删除空目录。当目录不再被使用时,或者磁盘空间已到达使用限定值,就需要删除失去使用价值的目录。利用rmdir命令可以从一个目录中删除一个或多个空的子目录。
•文件类:
find:用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。
locate:其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。
man:后面直接跟命令,如man ls 回车,就会显示ls的相关信息 ,这个页面叫man page帮助手册。
以上的这些命令,基本上囊括了与目录相关的常用命令,下面我们来说说如何学习命令、背命令。一般一个命令会有很多选项,每个选项都有不一样的含义,对于初学者我认为需要掌握该命令常用的3-5个选项,另外很多选项在不同命令下面表示的意义是一样的。你先发现其规律,也就并不难了。
其实无论学习什么,持之以恒才能见成效,这几个命令或许你下来10分钟就掌握了,但是需要不断的练习,使用,在大脑形成永久记忆才是最好的效果
学习Linux系统中命令的简单方法的更多相关文章
- Linux 系统中堆栈的使用方法
本节内容概要描述了Linux内核从开机引导到系统正常运行过程中对堆栈的使用方式.这部分内容的说明与内核代码关系比较密切,可以先跳过.在开始阅读相应代码时再回来仔细研究. Linux 0.12系统中共使 ...
- 在Linux系统中运行并简单的测试RabbitMq容器
以前使用的是Windows下面的RabbitMq,需要先安装 Erlang的语言环境等,这次直接在Linux中的Docker容器来测试一下 1:docker配置RabbitMq的指令 docker r ...
- 学习Linux系统的方法经验
Linux系统是一个开源的高效的以命令行为主的操作系统,主要用于服务器操作系统领域.对于Linux操作系统更多详细准确的解释大家可以网上找到<Linux就该这么学>的第0章介绍的比较详细: ...
- Linux系统中存储设备的两种表示方法
转:https://blog.csdn.net/holybin/article/details/38637381 一.对于IDE接口的硬盘的两种表示方法: 1.IDE接口硬盘,对于整块硬盘的两种表示方 ...
- linux系统中ls命令的用法
普通文件: -,f目录文件: d链接文件(符号链接): L设备文件:字符设备:c块设备:b命名管道: p套接字文件: s linux文件时间戳 时间分为三种类型:创建时间,修改时间:open访问时间: ...
- linux系统及命令学习
1,基本概念 Shell(命令行):是一个程序,接受键盘输入的命令,并将命令传递给操作系统进行执行. Bash:Bourne Again Shell, 是大多数linux系统分之中所带的一种shell ...
- Linux系统中的Device Mapper学习
在linux系统中你使用一些命令时(例如nmon.iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. ...
- 在 Linux 系统中安装Load Generator ,并在windows 调用方法
在 Linux 系统中安装Load Generator ,并在windows 调用 由于公司需要测试系统的最大用户承受能力,所以需要学习使用loadrunner.在安装的时候碰到了不少问题,所以写下此 ...
- Linux系统中如何查找大文件或文件夹的方法
在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...
随机推荐
- 54.超大数据快速导入MySQL
超大数据快速导入MySQL ----千万级数据只需几十分钟本地测试方法1.首先需要修改本地mysql的编码和路径,找到my.ini.2.在里面添加或修改 character-set-server=u ...
- laravel框架基础(1)---入门与介绍
1.安装laravel5.7 (composer )2018-12-28 11:59:02 [作者:struggler] Php的版本要求:php>=7.1.3 打开php OpenSSL扩展 ...
- Unity骨骼动画资源解析与优化
一,背景 最近发现项目的动画文件有点大,不光内存大,而且文件也很大,所以从这2个方面下手处理 二,动画文件大小优化 为了优化动画文件大小,我们可以先分析下文件,Ctrl+D将动画文件从FBX拷贝出来, ...
- MySQL变量的使用
在mysql文档中,mysql变量可分为两大类,即系统变量和用户变量. 但根据实际应用又被细化为四种类型,即局部变量.用户变量.会话变量和全局变量. 一.局部变量 mysql局部变量,只能用在begi ...
- hive sql执行的job在map时报java.lang.OutOfMemoryError的错误
较为详细且重要的一段报错信息是org.apache.hadoop.mapred.YarnChild: Error running child : java.lang.OutOfMemoryError: ...
- JavaWeb-----ServletConfig对象和servletContext对象
1.ServletConfig ServletConfig:代表当前Servlet在web.xml中的配置信息 String getServletName() -- 获取当前Servlet在web. ...
- SolrJ的入门
什么是SolrJ? solrj是访问solr服务的java客户端,提供索引和搜索的请求方法, SolrJ和图形界面操作的区别就类似于数据库中使用jdbc和mysql客户端的区别一样. 我在测试Solr ...
- C#调用endtask
原文最早发表于百度空间2009-03-23 写这个小工具主要是因为自动化测试那边反馈了一个问题和endtask有关,结果写完之后发现这个问题从程序外部测试不了……c#调endtask主要也是用DllI ...
- nginx-相关功能分析 第四章
# Nginx服务器的rewrite.全局变量.重定向和防盗链相关功能 一:Nginx 后端服务器组的配置: 1.upstream: 用于定义可由proxy_pass,fastcgi_pass,uws ...
- Java并发系列之Synchronized
每一个刚接触多线程并发编程的同学,当被问到,如果多个线程同时访问一段代码,发生并发的时候,应该怎么处理? 我相信闪现在脑海中的第一个解决方案就是用synchronized,用锁,让这段代码同一时间只能 ...