Linux命令的执行需要依赖于Shell命令解释器。Shell实际上是在Linux系统中运行的一种特殊程序,Shell直译过来就是壳的意思,它位于操作系统内核之上,负责接受用户输入的命令并进行解释,将需要执行的操作传递给系统内核执行,Shell在用户和内核之间充当了一个“翻译官”的角色。当用户登陆到Linux系统时,会自动加载一个Shell程序,以便给用户提供可以输入命令的操作环境。

Linux发展过程中出现了多种Shell程序,Bash就是其中一种比较好用的Shell程序,它有一个很好用的功能,通常输入命令时你不必把命令输全,Shell 就能判断出你所要输入的命令,并显示出来,按住Tab键就能补全。文件位于/bin/bash,它根据Linux命令与Shell程序的关系,一般分为以下两种类型:

内部命令:指的是集成于Shell解释器程序(如Bash)内部的一些特殊指令,也成为内建(Built-IN)指令。内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无需从硬盘中重新读取文件,因此执行效率更高。

外部命令:指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是属于Shell解释器程序之外的命令,所以称为外部命令。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。

Linux系统默认会将存放外部命令、程序的目录(如/bin、/usr/bin、/usr/local/bin等)添加到用户的“搜索路径”中,当使用位于这些目录中的外部命令时,用户不需要指定具体的位置。因此在大多数情况下,不用刻意去分辨内部、外部命令,其使用方法是基本类似的。

下面介绍几种比较常用的命令。

一、基本系统命令

1、命令提示符

root@localhost~$

root表示当前登录用户;localhost表示主机名;~表示当前所在目录;$表示普通用户;#表示超级用户

2、man 帮助命令

man 命令

用来获取指定命令的帮助,或者用 命令 --help 也可以

3、shutdown/halt/poweroff/init 0 关机命令

shutdown [选项] 时间

常用选项:

-c 取消前一个关机命令

-h 关机

-r 重启,还有reboot/init 6

4、alias 命令别名

查看系统中的所有命令别名

alias 别名= ‘原命令’

设定命令别名

5、history 历史命令

history [选项] [历史命令保存命令]

常用选项:

-c 清空历史命令

-w 把缓存中的历史命令写入历史命令保存文件~/.bash-history

(1)使用上下箭头调用以前的历史命令

(2)使用!n重复执行第n条历史命令

(3)使用!!重复执行上一条命令

6、常用快捷键

ctrl + c 强制终止当前命令

ctrl + l 清屏

ctrl + a 光标移动到命令行首

ctrl + e 光标移动到命令行尾

ctrl + u 从光标所在位置删除到行首

7、管道符

(1)多命令顺序执行

命令1;命令2 多个命令顺序执行,命令之间没有逻辑关系

命令1 && 命令2 逻辑与,如果1能执行那么2也能执行,如果1不能执行,那么2也不能执行

命令1 || 命令2 逻辑或,如果1不能执行,那么2执行,如果1执行,那么2不会执行

(2)命令1 | 命令2

把命令1的正确输出作为命令2的操作对象

8、通配符

* 匹配任意内容

? 匹配任意一个字符

[] 匹配任意一个中括号内的字符,例如[abc]代表一定匹配一个字符,要么是a,要么是b,要么是c

[ - ] 匹配中括号中的任一个字符,“-”代表一个范围,例如[a-z]代表匹配一个小写字符

9、ps 显示进程信息

ps -ux 显示当前用户的进程

ps -uxwww 显示当前用户的进程的详细信息

ps -aux 显示所有用户的进程

ps -ef 显示系统所有进程信息

10、top 查看系统cpu、内存等使用情况

二、文件、目录操作命令

1、ls --查询目录内容

ls [选项] [目录或者文件]

常用选项有:

-a 显示所有文件,包含隐藏文件

-l 显示详细信息

-d 查看目录属性

-h 人性化显示文件大小

-i 显示inode

2、文件、目录权限

例如 -rwxrw-r--

可以把它分为四段:[-][rwx][rw-][r--]

[-]:"-"表示文件,"d"表示目录

[rwx]:拥有者的权限,r可读,w可写,x可执行

[rw-]:同组其他人的权限,可读可写不可执行

[r--]:其他使用者的权限,只可读不可写不可执行

也可以用十进制或者二进制来表示读写执行权限:r-4(100B),w-2(010B),x-1(001B)

用chmod命令可以对目录或者文件给予权限,eg:chmod 764 xxx

3、mkdir/rmdir 建立目录/删除目录

mkdir是make directories的缩写,rmdir是remove empty directories的缩写

mkdir [目录名]

rmdir [目录名]

4、cd 切换目录

cd [目录]

cd ~表示进入当前用户的家目录

cd .. 进入上一级目录

cd - 进入上次目录

5、pwd 查询所在目录位置 print working directory

6、rm 删除文件或者目录

rm [选项] [文件或者目录]

常用选项:

-r 删除目录

-f 强制删除

7、cp 复制

cp [选项] [源文件或目录] [目标目录]

常用选项:

-r 复制目录

-p 连带文件属性复制

-d 若源文件是链接文件,则复制链接属性

-a 相当于-pdr

8、mv 剪切或改名

mv 文件名1 文件名2 将文件名1改为文件名2

mv 文件名 目录名 将文件剪切到目录中

mv 目录名1 目录名2 若目录名2存在,则将目录1剪切到目录2;若不存在,则将目录1改名为目录名2

9、locate/find 文件搜索命令

locate 文件名

find [搜索范围] [搜索条件]

find命令的用法很多,这里只介绍常用的几种

eg:find /kernel -iname install.log

-iname表示不区分大小写,如果需要匹配搜索内容,可以使用通配符

eg:find / -iname "install*"

find . -iname "ab[ad]"

10、whereis/which 文件搜索命令

whereis 文件

搜索文件所在路径及帮助文档所在位置,默认只会在指定目录查找(/bin ,/etc ,/usr)

-b: 只查找二进制文件

-u: 查找不包含指定类型的文件

-B<目录>: 只在指定目录下查找二进制文件

-M<目录>:只在指定目录查找帮助文件

-S<目录>:只在指定目录查找源码目录

which 文件

which命令只会在PATH环境变量定义的路径及命令别名中查找,所以范围有限

11、grep 字符串搜索命令

grep [选项] 字符串

常用选项:

-i 忽略大小写

-n 显示字符串在文件中行号

-r 递归搜索子目录

12、ln 链接命令

ln -s [源文件] [目标文件]

生成链接文件,源文件一定要写绝对路径

绝对路径:从根目录下开始指定,一级一级递归查找

相对路径:参照当前所在目录,进行查找

硬链接特征:

(1)拥有相同的inode和存储block块,可以看作是同一个文件

(2)可以通过inode识别,但不能跨分区,不能针对目录使用

软链接特征:

(1)类似于Windows的快捷方式,拥有自己的inode和存储block块,但是数据中只保存了源文件的文件名和inode,并没有实际的文件数据

(2)删除了源文件,软链接将不能使用

13、压缩和解压缩命令

常用的压缩格式有:.zip/.gz/.bz2/.tar.gz/.tar.bz2

(1).zip格式压缩

zip 压缩文件名 源文件 #压缩文件

zip -r 压缩文件名 源目录 #压缩目录

unzip 压缩文件 #解压缩

(2).gz格式压缩

gzip 源文件 #压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件 #压缩文件,源文件会保留

gzip -r 目录 #压缩目录下的所有子文件,但不能压缩目录

gzip -d 压缩文件/gunzip 压缩文件 #解压缩

gunzip -r 目录 #解压缩目录下的所有子文件

(3).bz2格式压缩

bzip2 -d 源文件 #压缩文件

bunzip2 压缩文件 #解压缩

(4)tar打包

tar [选项] 打包文件名 源文件

常用选项:

-c 打包

-v 显示过程

-f 指定打包后的文件名

tar -xvf 打包文件名 #解打包

(5).tar.gz和.tar.bz2都是先打包为.tar格式,再压缩

三、查看文件内容命令

1、touch 改变文件或目录的访问时间和修改时间

touch [选项] [-t<日期时间>] [目录或文件]

选项:

-a 只修改访问时间

-m 只修改时间

-t 使用指定日期时间,而非系统时间

如果指定目录文件不存在,则会直接创建一个空文件,所以touch也常用来创建一个空白文件

2、file 用于识别文件的类型

file [选项] 文件或目录

选项:

文件或目录 需要识别的文件或目录

-b 显示识别结果时,不显示文件名

-c 显示执行过程

-L 直接显示符号链接文件指向的文件类型

-z 尝试去解读压缩文件的内容

3、cat 显示文件的内容

4、vi/vim 打开并编辑文件

底行模式中的常用命令

:w 保存

:q 退出

:! 强制执行

:n 切换到后一个

:N 切换到前一个

:ls 列出当前编辑器中打开的所有文件

:15 光标快速定位到第15行

/xxx 光标从当前文职向后搜索到xxx第一次出现的位置

linux压缩文件命令_Linux基础篇(二)--Linux常用命令相关推荐

  1. Linux从入门到精通(基础篇二)

    七.Centos7软件包的安装 一.rpm软件包的管理 1. 命令格式:rpm [参数] 软件包 -i: 是install的意思, 安装软件包 -v: 显示附加信息,提供更多详细信息 -V: 校验,对 ...

  2. linux 音频文件切割_Linux 对音频万能处理的命令——SOX

    what's the SOX SoX(即 Sound eXchange)是一个跨平台(Windows,Linux,MacOS 等)的命令行实用程序,可以将各种格式的音频文件转换为需要的其他格式.SoX ...

  3. mysql切换用户命令_linux基础04:linux用户相关的命令有哪些?怎样切换用户?

    通过前面的几节课,我们在windows系统中安装好了linux虚拟机,也通过xshell远程终端连接上了linux虚拟.从今天开始,我们就可以正式开始学习linux的知识了.今天,我们主要介绍的是用户 ...

  4. linux vi文件出现o e r d,vim常用命令大全

    在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行.你可以试试把代码缩进任意打乱再用n==排版,相当于一般IDE里的code format.使 ...

  5. linux清屏命令_linux下的7个常用命令的基本使用

    02.Linux下的7个常用命令的基本使用 小技巧: 使用[ctrl + shift + = ]可以放大终端窗口的字体显示使用[ctrl + -]可以缩小终端窗口的字体显示 ls:查看当前目录下的文件 ...

  6. linux root权限不够_Linux基础篇之用户管理

    一.基本介绍 Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向 系统管理员申请一个账号,然后以这个账号的身份进入系统. 注意:Linux的用户至少要属于一个组(一 ...

  7. Linux系统编程1:基础篇之Linux中使用率最高的一些命令

    文章目录 Linux基本指令 (1)pwd(显示所在目录) (2)ls(列出文件或目录) (3)cd(改变目录) (4)touch(创建文件) (5)mkdir(创建目录) (6)rmdir和rm(删 ...

  8. Linux平台Makefile文件的编写基础篇和GCC参数详解

    问:gcc中的-I.是什么意思....看到了有的是gcc -I. -I/usr/xxxxx..那个-I.是什么意思呢 最佳答案 答:-Ixxx 的意思是除了默认的头文件搜索路径(比如/usr/incl ...

  9. 用Kotlin撸一个图片压缩插件-插件基础篇(二)

    简述: 前两天写了篇用Kotlin撸一个图片压缩插件-导学篇,现在迎来了插件基础篇,没错这篇文章就是教你如何一步一步从零开始写一个插件,包括插件项目构建,运行,调试到最后的上线发布整个流程.如果你是插 ...

最新文章

  1. 微服务架构 为什么需要配置中心
  2. php add 返回id,PHP curl_multi_close函数
  3. java局部刷新session过期_Ajax局部页面刷新和History API结合的陷阱
  4. 转HTML+CSS总结/深入理解CSS盒子模型
  5. 以个人身份加入.NET基金会
  6. LeetCode之Single Number
  7. (组合数学笔记)格点路径问题分析求解
  8. poj1548Robots dfs实践
  9. 日历php 价格 库存,jQuery web 组件 后台日历价格、库存设置的代码
  10. 辨异 —— Java 中 String 的相等性比较
  11. [翻译][Trident] Storm Trident 教程
  12. qemu-img命令详解
  13. 为什么恢复后的文件打不开?U盘数据恢复常见问题
  14. iOS系列—wakeup in XNU
  15. 滴滴裁员2000人启示:牛逼的人,都有铁饭碗
  16. 降本提效!注册中心在蚂蚁集团的蜕变之路
  17. 【02】Hadoop入门
  18. 如何修改mc服务器密码是什么意思,mc服务器密码设置密码
  19. 计算机水平每分钟多少字,电脑打字每分钟打多少在一才算快啊? 一般拼音打字一分钟多少才算可以?...
  20. C#中的Action是什么意思

热门文章

  1. 程序员的遗憾:为什么我没早学数据分析?
  2. 熬夜写代码,不如换女装入 GitHub 获上千 Star?
  3. 如何使用 Lucene 做网站高亮搜索功能?
  4. iPhone X 再曝新 Bug:电话无法接听!
  5. 还争什么流量场景,罗振宇已经用时间挣钱了!
  6. php _get invalid,PHP 错误: ZipArchive::getFromName(): Invalid or unitialized Zip object in 解决方法...
  7. 如何用一段代码证明JVM加载类是懒加载模式?分享PDF高清版
  8. android alsa,android下alsa驱动alsa_arecord录音问题
  9. python gevent async_详解python之协程gevent模块
  10. mysql打开闪退 ini_解决MySql客户端秒退(找不到my.ini)