Linux常用指令介绍(一)

目录

指令0:pwd

 指令1:ls

指令2 :cd

指令3:touch

指令4:mkdir

指令5:rmdir指令 和 rm 指令

指令6:man

指令7:cp(拷贝)

指令8:mv(剪切/移动 、重命名)

指令9:cat 和 tac

指令10:more 和 less

指令11:head 和 tail

指令12:date (与时间相关的)

指令13:cal

指令14:find -name

 指令15:which 和 whereis

指令16:alias

指令17:grep

 指令18:sort  和 uniq

指令19:zip 和 unzip

指令20:tar

指令21:bc

指令22:uname

Linux常用热键:


PS:下面所有操作均在Xshell7上进行。

指令0:pwd

显示当前用户所处的路径。

 指令1:ls

1、 ls :显示当前路径下的文件或者目录名称

2、ls -l  (或写成 ll) 显示当前路径下的文件或者目录的更详细的属性信息

 3、ls -a:显示目录下所有文件(包括隐藏文件 . xxx)。  Linux下 .XXX 为隐藏文件,ls默认不显示隐藏文件

4、ls -al:显示目录下所有文件并展示,Linux下可以将命令组合使用

 5、ls -d :不进入目录,而是显示目录本身 ,ls -dl 也就是加上显示详细信息。

 6、ls -Rl:在显示目录里面的文件的同时,在下面显示目录里面包含的其他目录里的文件。

相当于递归式地展开目录

 ls 下还有很多操作,如上表里的 ls -t , ls -s 等等,在这里只是挑几个常用的介绍一下。

指令2 :cd

 Linux系统和我们常用的Windows系统一样,操作系统文件的目录结构是一颗多叉树。

 1、cd:进入路径。这里的路径有相对路径和绝对路径之分。

绝对路径:就是固定存在的,不论用户当前是处于哪一条路径上,都可以通过绝对路径前往要去的路径底下。

 相对路径:相对于当前用户所处的位置,在当前的基础上前往目的路径。

相对路径一般日常操作中使用较多,因为比较方便,绝对路径每次都需要完整的打出整条路径。

绝对路径一般是用在比较正规官方的场合,比如作为一个配置文件的一个配置,保证绝对不会出错,在任意位置都能使用

2、cd ..  :回退到上级目录。   . 是当前目录,   .. 是上级目录。

cd .. 退到根目录就无法再退了。

3、cd ~ :进入家目录(家目录:特定用户登录时,默认所处的路径),root用户下为 /root ,普通用户则是 自己所在的家目录 /home/xx

 4、cd - :在两个热点路径之间来回切换。比如上一个所在路径为a路径,现在去到了b路径,cd -可以重新回到a路径,可以来回反复横跳。

指令3:touch

 touch是Linux下创建普通文件的最常用的一种方式,它不能创建目录。

指令4:mkdir

mkdir 是创建空目录,要想创建一串路径,要用mkdir -p  a/b/c/d

指令5:rmdir指令 和 rm 指令

1、rmdir :删除空目录(使用场景不多,更多的还是rm)

2、rmdir -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除

1、rm : 默认删除普通文件。

2、rm -r:递归删除,删除的是目录(文件目录是多叉树结构)

3、rm -f:默认删除的时候系统会询问是否删除, -f 不进行询问,直接删除

注意千万不要误删了根目录 / ,会造成很严重的问题!

4、rm -i : 为了防止误删,-i 系统会询问用户,是否删除文件。

指令6:man

 man是Linux下的一个手册,可以查看 "命令、系统调用以及C语言库"。

以上3个对应编号1,2,3.

比如想查看命令ls:

就可以查看ls命令相关内容,左上角LS(1)就代表编号1,“命令”

'q' 键可以退出。

 比如想查看sprintf 的用法及头文件:

PRINTF(3) 表示编号3,也就是C库。

指令7:cp(拷贝)

上面学了man手册,可以来查一下cp的用法。

cp可以用来拷贝普通文件和目录。

如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存 在的目录,则会出现错误信息。

cp   src   dest :cp指令后跟复制源文件,最后的则是拷贝目的地。

注意:cp是拷贝,不是剪切,不会影响原文件,是把原文件的内容拷贝覆盖到目的地文件。

因为会覆盖,所以要小心拷贝。

cp -r  ,  cp -f   ,  cp -i 这些命令选项都和之前讲的 rm指令里面一样。

 cp只能复制普通文件,不能复制目录, -r 可以递归复制目录。

如果复制的目的地目录下有和被拷贝文件重名的文件,可以 cp -i 询问是否有重名,若有,编译器会显示出来。

指令8:mv(剪切/移动 、重命名)

 上面讲了cp是拷贝不是剪切,这里mv可以说是剪切,或者说是移动。

mv可以移动文件和目录。PS:不是所有文件都可以mv 、cp的,比如挪到根目录底下,这些操作是受权限约束的。

重命名:必须在有文件名的 前提下操作:

 

指令9:cat 和 tac

 cat 和 tac都是用来查看文件内容的。区别是cat是正序查看,tac是反过来的。

举个例子:现在我写一个简单的脚本,自动生成10000行 "hello world" 内容

cnt=0; while [ $cnt -le 10000 ]; do echo "hello world [$cnt]"; let cnt++; done

 这样就自动生成了10000行,并且是直接刷到底部的。

我们将其放到一个test.txt文件里面:

 然后用nano工具打开,nano是一个文本工具。

 这样同样可以查看文件内容并且进行修改。

回到cat,上面说cat查看内容是看到文件底部的。

 既然如此,那cat就不适合用来查看大文本(大型工程代码、日志),只适合用来查看小文本和代码片段。

如果想查看大文本,就需要用到下面讲的more 和 less。

指令10:more 和 less

more:

1、more和cat都是查看文本,区别在于more是从头开始显示,满一页就不再往下显示了,用键盘" 回车" 可以往下翻。

2、more -n 和 cat -n 都可以显示行号。

3、more -999:可以将999行上面一段文本显示出来。

 more 在文本中还可以查找相应内容所在位置并显示。

我先将test.txt中一行改成xxxx:

 用more打开文本,输入/xxxx:

 回车,就会自动匹配找到第一次出现的xxxx:

 less:

 less相较于more更加灵活,more不能向前翻,但是less可以,因此通常用less查看文本。

指令11:head 和 tail

 head 、tail 顾名思义,一个是查看头部10行文本,tail是查看尾部10行文本。

加上对应数字则查看对应行数:

 现在我们可以拿到文本的前10行和后10行了,那怎样拿到文件的中间10行呢?

1、可以先创建一个新文件,用head 取出前5010行,重定项 > 到新文件中,再用tail -10就可以得到中间10行的内容了,这样做需要创建新文件不太合适。

2、管道。head -5010 test.txt | tail -10  管道实际上可以将多条命令组合到一起实现。一边是入口,一边是出口。

head -5010向显示器上打印,tail -10默认从文件中读取数据。

指令12:date (与时间相关的)

 想格式化地显示时间,可以用到date命令:

 这里的 Y: 年 ; m:月; d:日; H:小时;M:分钟;S:秒

并且年、小时、分钟、秒要大写,月、日小写。

除了%以外,其余符号可改变,以此改变日期显示形式。

如果直接date,显示的是格林尼治时间:

 date +%s,显示的是时间戳(格林尼治从1970.1.1午夜0:00开始累积的秒数):

 

date  -d@1508749502 (时间戳秒数):将时间戳秒数转化成我们认识的时间:

指令13:cal

 cal就是显示日历(公历)

指令14:find -name

find命令是非常重要的一条命令,它有很多应用,完全可以写一篇万字长文了。

为什么它如此重要,因为find命令去系统里帮你找东西,是全盘仔细地搜索,甚至没有加载到内存的在磁盘中的文件都能帮你找出来,当然需要花上一定的时间,成本比较高,效率比较低,但是查出来的东西都比较真实。

我们今天只说一下find里面的一个选项 -name。find -name是以文件名搜索文件。

还有很多查找指令,我们下面说一下。

 指令15:which 和 whereis

which查找的是命令,也就是找一个命令所在的路径。

whereis查找范围要比which大一些,比find小,所以which < whereis <find

它会去指定目录底下查找,一般是根目录或公共路径。

也就是说它在特定的路径下,查找指定的文件名对应的指令或文件。

指令16:alias

alias:对指令重命名。

 

指令17:grep

 grep是文本内容的行过滤工具。

默认会匹配文本中的关键字,匹配上的进行行显示。

在以之前写的10000行脚本文本为例,如果想匹配文本里有999的行显示出来:

 1、grep默认区分大小写,-i 则忽略大小写。

2、-v 是反向选择,不匹配的显示出来。

3、统计行数,要统计匹配的内容有多少行,可以

 指令18:sort  和 uniq

sort是对文本排序,uniq是去重(相邻两行重复的保留一行)。

指令19:zip 和 unzip

在Windows下我们经常会压缩文件,格式有zip、tgz等等,同样在Linux下也一样存在。

不同的格式处理方式也不同,今天先来看zip和tgz。

zip是压缩命令,命令方式: zip      压缩包(名字自定义)  要打包压缩的目录

 基本操作如上,但我们发现一个问题,进入压缩包,里面是空的。

这是因为zip默认对一个目录打包压缩的时候,只会对目录文件打包压缩。也就是说它只打包了个外壳,里面的文件都没有打包。

所以要用到 zip -r ,递归式打包压缩。

打包压缩完后,需要解压得到压缩包里的东西,unzip  压缩包:

这样会默认解压到当前目录里,如果需要解压到指定目录下,可以用 unzip -d 指定目录

指令20:tar

 tar 也是打包压缩文件的,形式与zip类似:   tar  -czf   压缩包   指定目录

 解压则是:

 将czf 换成 xzf即可。

再说几个常用的选项:

1、-t :查看 tarfile 里面的文件但不解压。

2、-v :压缩的过程中显示文件。

3、-C : 解压到指定目录。(与zip不同)

 

指令21:bc

相当于Linux下的计算器,可以进行一些简单的运算。

 bc计算器支持命令行,可以和管道结合使用:

指令22:uname

uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称 

指令23:内核信息

Linux常用热键:

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值