【Linux全面学习】6.Linux常用命令(重点)

Linux常用命令
(1)ls
查看当前目录下所有目录和文件


ls -l会将目录和文件竖着排,并且可以提供文件数据

上图最左边以“d”开头的是目录,以“-”开头的是文件。后面是文件和目录的权限,后面是占了多少空间的大小,然后是创建人和所有人是谁,然后是实际当中所占空间,后面是创建的时间,最右边是目录或文件的名字。

ls -m会适合左右屏幕宽度将目录和文件列出

后面的不常用的不再介绍,用到可以去查

(2)cd
打开目录

cd /打开根目录
cd /dev 打开dev目录(绝对路径)
cd /之后再cd dev 打开dev目录(相对路径)
cd ..返回上层路径

(3)pwd
查看当前路径是什么


(4)mkdir,rmdir,touch,rm
“创建目录”和“移除目录”

首先在根目录下创建一个测试目录,我们在这个目录下进行目录的创建与移除实验:


我们在测试目录下创建一个目录,叫dl


删除dl目录使用“rmdir dl”


然后我们重新创建dl目录,在dl目录下创建一个ddl目录


此时我们再去删除dl目录的时候,是删除不掉的

错误信息为“目录非空”。也就是说rmdir指令只能删除内容为空的目录。但是一般我们不用这个,可以直接删除文件夹而不用判断文件夹是否为空的时候,使用“递归”算法来删除目录。Linux给我们提供了递归删除的指令“rm -r”

我们来删除dl目录一级目录下所有文件

但是一直会弹出询问框问你是否要删除,这样很麻烦,所以常用的还有一个指令是强制删除叫“rm -rf dl”,会直接删除该目录一级目录下的所有文件。


“rm -rf”命令不仅可以删除目录,也可以删除文件。我们创建dl,在dl下创建一个名为“test”的文件:

上面我们还创建了一个dd1的目录与其作比较,“-”打头的是目录,“d”打头的是文件。

我们使用“rm -rf”命令删除文件:


(5)cp,mv
cp就是copy拷贝的意思,而mv就是move移动的意思

在dl下创建“dd1”目录和一个名为“test2”的文件,然后我们返回父级目录testdir使用“ls -R”查看文件一层一层的整体结构:


我们来到dl下,将test2文件拷贝一个为test3


但是我们不能直接用“cp”去拷贝目录,需要使用“cp -r”使用递归的方式去拷贝目录,这样的拷贝就能将目录以及目录下的所有文件拷贝:


我们接下来使用“mv”指令,dd1文件夹移动到父级目录testdir中


移动目录下有子目录有子文件什么的,还是要加“-r”进行递归移动。

(6)vi
向文件中编辑信息的指令,也是一个文本编辑器。

我们在dirtest目录下执行“vi test3”,如果存在test3文件,就编辑它,如果不存在就创建test3然后编辑它


按回车我们进入文件的编辑:


默认进入,是“命令模式”,就是说不能直接在文件中打字,需要输入命令,我们这里使用“append”切换到编辑文字模式,可以打字


敲“ESC”回到命令模式,然后敲冒号“:”就可以输指令,敲“w”是存盘,敲“q”是退出,敲“q!”是不存盘退出,敲“wq”是存盘并退出,我们这里存盘退出


其它的编辑命令还有很多,不用记,只需要记最基本的就好,需要再去查相关文档。

(7)more,cat,tac,head,tail
列出文件中的详细内容,more,cat,tac分别为“详细内容”,“正序内容”,“逆序内容”。

我们查看刚刚我们创建的test3文件的内容,分别使用more,cat,tac指令查看:


还有一个head和tail指令:
用法:
head将每个指定文件的头X行显示到标准输出。比如我们只想看文件的前面3行:


tail将每个指定文件的末尾X行显示到标准输出。比如我们只想看文件的最后3行:


(8)find
查找文件所在的位置(按照大小/时间等条件)

假设我们记不清test2在testdir目录下哪里了(连名字也只记得含有est2),我们就使用以下指令来搜索:


(9)whereis
whereis+命令名,如“whereis ls”,它会告诉你ls这个命令从哪来的,敲ls命令的时候执行的是哪一个文件,以及这个命令它的一些帮助文档在什么地方。


(10)echo
通过命令行查看当前所用的环境变量指的是什么(这个指令window几乎一样)

分隔符是冒号“:”

(11)ln
ln是链接命令。我们下面来使用它
首先我们创建一个test文件夹,然后在下面创建一个3.txt的文本文档

我们使用vi命令在3.txt中存入以下信息


我们将3.txt链接到4,然后我们查看4的内容,发现和3一摸一样:

那么大家会认为,链接和拷贝不是一样的效果吗?其实不是,链接的情况,当修改3的内容的时候,4的内容也会跟着改:



他们是两个不同的文件,而这两个文件之间存在关联,这就叫链接,而且上面那种叫做“硬链接”,就是相当于把文件复制了一份,然后在两个文件中加链接。

还有一种叫做“软连接”,也叫符号链接(加-s,-s就是single),相当于windows的“快捷方式”,只是以某个文件做导向,文件本身没有内容。


我们把3.txt删除就可以看出区别来,我们将3.txt删除,看看4和5分别是什么:

我们可以看到,4还依旧存在,而5因为缺失链接已经失效了。

转载请注明出处:http://blog.csdn.net/acmman/article/details/51985270

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。

Web Service学习总结 - 2016-07-22 18:07:07

Web service到底是什么, 在什么情况下你应该使用Web service:      研究一下当前的应用开发程序 ,你会发现一个绝对的倾向:人们开始偏爱基于浏览器 的客户端应用程序。这当然不是因为客户端能够提供更好的用户界面,而是因为它能够避免花在桌面应用程序 发布上的高成本。发布桌面应用程序 成本很高,一半是因为应用程序安装和配置的问题,另一半是因为客户端和服务器之间通信的问题。      传统的Windows客户应用程序使用DCOM来与服务器进行通信和调用远程对象。配置好DCOM使其在一个大型
咱们不搞一开始就一大堆理论知识介绍,怕把人讲懵了...... 咱们换一个思维方式——"从现象看本质",先说说我们看到了什么,再从看到的现象中提出问题,最后深入寻找答案。 我们看到的 cookie 我自己创建了一个网站,网址为 http://ppsc.sankuai.com 。在这个网页中我设置了几个 cookie : JSSESSIONID , PA_VTIME , skmtutc , test 。 在 chrome 浏览器中打开这个网站,进入开发者模式,点击 Resources 栏 - 选择 cooki
MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息。 文档顶层结构: configuration 配置           properties 属性           settings 设置           typeAliases 类型命名           typeHandlers 类型处理器           objectFactory 对象工厂           plugins 插件           envir
大话设计模式 1 策略模式UML图 2 策略模式的概念 策略模式(Strategy) :它定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到算法的客户。【DP】 3 策略模式和简单工厂模式的比较 简单工厂模式需要让客户端认识 两个类 ,而策略模式和简单工厂结合的用法,客户端就只需要认识 一个类 就可以了,耦合度更低。 4 策略模式解析 策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,他可以以相同的方式调用所有的算法,减少了
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为 阻塞队列和非阻塞队列 ,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。 注:什么叫 线程安全 ?这个首先要明确。 线程安全的类  ,指的是 类内共享的全局变量的访问必须保证是 不受多线程形式影响的 。如果由于多线程的访问(比如修改、遍历、查看)而使这些变量结
偿还技术债 - 通过重构拯救老代码 尝试去接管一个陈旧的代码库使他成为达成一个可控的状态? 这几年的大型的旧web应用程序开发给了我们如下这些建议。 通过重构去拯救旧代码 松鼠会因为忘记自己把松果放在那里,使得每年多了几千棵松树。类似的,这些事情在项目中都没有什么关系。 你的项目是可以被拯救的 无论代码多么的杂乱,让人疯狂。 但是你的老板让你上了,你要相信不管前路多么曲折坎坷,你总能搞定的! 心无畏惧 公平的说。比起冲进一个四处鲜血还有巨龙守在门口的沼泽地待几年,你更愿意在一片清新的草原上散步。 不幸的是

hibernate缓存详解 - 2016-07-22 18:07:56

为什么要用hibernate缓存? hibernate是一个 持久层框架 ,经常访问物理数据库。为了降低应用程序对物理数据源访问的次数,从而提高应用程序的运行性能,我们想到使用hibernate缓存机制。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 hibernate缓存的原理 缓存的主要作用是查询 。 hibernate缓存包括三大类: hibernate一级缓存、hibernate二级缓存和hibernate查询缓存 。 一

MAT使用的几张图例 - 2016-07-22 18:07:51

下面三个是内存泄漏可能性比较大的地方 problem suspect 1 problem suspect 2 problem suspect 3 点击detail 可以看详细 在dominator_tree 可以对象按照group by package 分类 便于查看那部分代码出问题 选中一个节点 右键查看with incoming reference 可以看  ps :( ListObjects with incoming references  表示的是 当前查看的对象,被外部应用 ListObjec

Hibernate的核心接口和类 - 2016-07-22 18:07:25

Hibernate的核心类和接口一共有6个,分别为: Session、SessionFactory、 Transaction、Query、Criteria和Configuration 。这6个核心和类接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这6个核心接口和类分别加以介绍。 Configuration Configuration类的作用是对Hibernate进行配置,以及对它进行启动。在Hibernate的启动过程中,Configuration 类的实
1、概述 在我开始构思这几篇关于“自己动手设计ESB中间件”的文章时,曾有好几次动过放弃的念头。原因倒不是因为对冗长的文章产生了惰性,而是ESB中所涉及到的技术知识和需要突破的设计难点实在是比较多,再冗长的几篇博文甚至无法对它们全部进行概述,另外如果在思路上稍微有一点差池就会误导读者。 一个可以稳定使用的ESB中间件凝聚了一个团队很多参与者的心血,一个人肯定是无法完成这些工作的 。但是笔者思索再三,还是下决心将这这即便文章完成,因为这是对本专题从第19篇文章到第39篇文章中所介绍的知识点的最好的总结。我们