Linux简述及常用命令

  • Post author:
  • Post category:linux



Linux

于1991年由芬兰大学生开发,是一个类Unix开源版操作系统。

特点:

·强大的硬件支持

·安全性高、稳定性强(开源稳定漏洞少)

·Linux使用范围广(应用服务、效率要比微软高)


Shell

·Linux系统中运行的一种特殊程序

·在用户和内核之间充当“翻译官”

·用户登录Linux系统时,自动加载一个Shell程序

·Bash是Linux系统中默认使用的Shell程序

流程:接收用户输入的命令→解释命令→传递给系统内核执行


Linux命令分类

内部命令和外部命令的区别:

内部命令:继承于Shell解释器程序内部的一些特殊指令,属于Shell的一部分,没有单独对应的系统文件,自动载入内存可以直接使用。

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


编辑Linux命令行的辅助操作

Tab键:自动补齐

反斜杠”\”:强制换行

Ctrl+U:清空至行首

Ctrl+K:清空至行尾

Ctrl+L:清屏

Ctrl+C:取消本次命令编辑

Ctrl+J:回车

Ctrl+H:删除

获得命令帮助:

help (查看Shell内部命令的帮助信息)

命令的“–help”选项 (适用于大多数Linux外部命令)


col

col是一个命令程序,用于过滤文本中的一些特殊控制字符;另外还使用了“|”和“>”符号,这是Shell环境中的两种特殊运用。

例:man ls | col -b > lshelp.txt

附:>(保存,会覆盖)

附:>>(在原有基础上追加)

更改主机名:set-hostname 主机名 (命令+改成XX主机名)


切换工作目录 cd

将用户的工作目录更改到其他位置

pwd (显示用户当前所在工作目录位置)

cd 目标位置 (切换到目标位置)

cd … (回到上一层目录)

cd ~ (回到当前的家目录,cd后面可以什么都不加)

cd – (回到上次的目录)

**绝对路径:**以根目录“/”作为起点。在Linux系统中根目录只有一个,无论当前处于哪个目录中,都可以通过绝对路径非常准确地表示一个目录或文件所在位置。但如果路径较长,输入的时候就会变得繁琐。

**相对路径:**一般以当前工作目录作为起点,不以“/”为开头,使用更加简短、便捷。比如直接使用目录名或文件名表示当前工作目录中的子目录、文件的位置。比如,“public.conf”可表示当前目录下的public.conf文件,使用一个点号“.”开头可以明确表示以当前的工作目录作为起点。 “./public。conf”也可表示当前目录下的public.conf文件。使用两个点号开头表示以上一级目录作为起点。


列表显示目录 ls

ls 【选项】 【文件或目录】

-d 查询当前路径下的所有目录

-a 显示带“.”的文件,这是隐藏文件

-c 按文件修改时间排序

-i 在输出首位显示文件|节点号

-l 以长格式显示文件的详细信息

-r 按逆序显示ls命令的输出结果

-R 递归的显示指定目录的各个目录中的文件

结合通配符:

“?” (文件名中的一个未知字符)

“*” (文件名中的任意多个字符)


设置别名alias

通过别名机制简化常用的、比较长的命令

alias 命令别名=命令

例:alias myls = ‘ ls-alh’←(这条命令的别名就是myls)

统计指定目录及文件空间占用情况 du

统计指定目录或文件所占用磁盘空间的大小

du 【选项】 【文件或目录】

-a 统计磁盘空间占用时包括所有的文件

-h 以更人性化的方式(默认以KB计数,但不显示单位)显示统计结果

-s 只统计所占用空间大小,而不是每个子目录、文件的大小


创建新目录

mkdir 【选项】 目录位置及名称

在当前目录下创建名为abc的子目录

mkdir abc

在创建的目录下创建子目录,创建目录/abc,在/aa/bb下创建子目录cc

mkdir -p /abc/aa/bb/cc


创建空文件 touch命令

touch a (a是文件名)

touch a b c (同时创建多个文件,a、b、c都是文件名)


创建连接文件 ln

为文件或目录建立链接文件,类似于windows系统的快捷方式

链接文件类型

软链接:ln 【-s】 源文件或目录 链接文件或目标位置

硬链接:ln 源文件

软链接可以创建文件或目录,硬链接只能创建文件。


删除文件或目录 rm

rm 【选项】 要删除的文件或目录

-f 不提示,直接强制删除

-i 提示,询问是否删除,Yes/NO

-r 递归删除子目录和子目录中的文件

rm -rf * 删除所有文件

(高危命令,一定要注意,在生产环境中一旦不小心把所有数据删除了,是有很大可能要负刑事责任的)

rm -rf a* 删除开头为a的文件


注意:

在修改文件之前,一定要备份!

备份命令格式: copy 文件名abk年月日

例:copy 123abk20200707


复制文件或目录

将需要复制的文件或目录重建一份,并保存为新的文件或目录

cp 【选项】 源文件或目录 目标文件或目录

-f 覆盖目标同名文件或目录时不进行提醒,直接强制复制

-i 覆盖目标同名文件或目录时提醒用户确认(YES/NO)

-p 复制时保持源文件的权限、属主及时间标记等属性不变

-r 复制目录时必须使用此选项,表示递归复制所有文件及子目录


移动文件或目录 mv

将指定文件或目录转移位置,如果目标位置与源位置相同,则相当于执行重命名操作


查找命令/文件存放的目录 which

搜索范围由环境变量PATH决定(echo $PATH)

which 命令|程序名 或 which -a 命令|程序名

例:which ls


查找文件或目录 find

采用递归的方式,根据目标的名称、类型、大小等不同属性进行精细查找

find 【查找范围】(查找文件或子目录位置) 【查找条件表达式】(查找条件类型)

常用查找条件类型:

按名称查找: -name 根据目标文件的名称进行查找,允许“*”及“?”通配符。

按文件大小查找: -size 根据目标文件的大小进行查找。一般使用“+”“-”号设置超过或小于指定的大小作为查找条件。常用容量单位包括kB(k小写)、MB、GB。

按文件属主查找: -user 根据文件是否属于目标用户查找。

按文件类型查找: -type 根据文件的类型进行查找,文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等。


使用find命令实现多个查找条件


”-a“表示 and (可以理解为逻辑关系中的与)

”-o“表示 or (可以理解为逻辑关系中的或)

例:find /boot -size +1024k -a -name “ab*”

find/boot -size +1024k -o -name“a*c”


VI编辑器

(可以对如txt的文件内容进行编辑)

vi 123.txt (编辑文本)

方向键 (控制光标位置)

i (插入命令)

backspace键 (删除内容)

esc (退出编辑模式)

shift : wq (保存并退出)

q! (不保存退出)



版权声明:本文为KY05QK原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。