Linux常用命令+末尾附设置静态IP地址

Linux命令

Linux命令手册

linux查看帮助命令

1.man 想查看的命令

2.想查看的命令 --help

3.info 想查看的命令

Linux开关机命令

shutdown -r #立刻重启

reboot #立即重启

shutdown -r10 #十分钟之后重启

shutdown -h now #立刻关机

halt #立刻关闭系统,需手工切断电源

poweroff #立刻关闭系统,且关闭电源

shutdown -h 10 #十分钟之后关机

Linux常用快捷键

1.CTRL + c #取消当前操作

2.CTRL + l #清空屏幕内容

3.CTRL + d #退出当前用户

4.CTRL + a #光标移到行首

5.CTRL + e #光标移到行尾

6.CTRL + u #删除光标到行首的内容

ls常用命令

list 列出文件夹的内容

ls 语法

ls 可选参数 可选的文件夹对象

-a all的意思,显示出所有的文件内容,以及隐藏的文件

-l 详细的输出文件夹中内容

-h 以可阅读的形式,输出文件的大小

--full-time 以完整的时间格式输出

-t 根据最后修改的时间排序文件

-F 在不同文件结尾,输出不同的特殊符号 以/结尾的就是文件夹 以*结尾的就是可执行的文件 以@结尾的就是软连接(快捷方式) 普通文件类型 结尾什么都没有

-d 显示文件夹本身信息,不输出其中的内容

-r reverse 逆转排序

-S 大写的S,针对文件大小进行排序,默认是从大到小

-i 显示出文件的inode信息(文件的身份证号,存储了文件的元信息,文件的大小,位置,权限等等)

touch命令

绝对路径:从根目录开始查找的路径就是绝对路径 相对路径:只要不是从根目录开始查找的全部都是相对路径

touch命令

touch有两个作用 1.创建普通文件,在linux下文件的后缀格式仅仅是一个名字而已,通过touch创建的都是普通文件 2.修改文件的时间

不存在的文件将会被创建为空文件,除非使用-c 或者是-h选项

touch{连续数字或字母} 创建多个文件序列 touch{1..100} touch{a..z}

touch -c #不创建任何文件

touch -t 要修改的时间(#使用200310281206格式) 文件 #修改文件的时间

touch 文件名 #把此文件的时间修改为当前时间

touch -r 指定文件 当前文件 #使用指定文件的时间属性代替当前文件时间

tar gzip zip命令

tar 命令

格式: tar 参数 要压缩后的文件名 要压缩的内容

-A : 新增文件到以存在的备份文件

-B : 设置区块大小

-c : 建立新的备份文件

-C <目录> : 这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项 格式: tar -zxvf 原来存在的压缩包 -C 要把解压文件放到的目录

-d : 记录文件的差别

-X : 从备份文件中还原文件

-t : 列出备份文件的内容

-z : 通过gzip指令处理备份文件

-Z : 通过compress指令处理备份文件

-f <备份文件> : 指定备份文件

-v : 显示指令执行过程

-r : 添加文件到已经压缩的文件

-u : 添加改变了和现有的文件到已经存在的压缩文件

-j : 支持bzip2解压文件

-l : 文件系统边界设置

-k : 保留原有文件不覆盖

-m : 保留文件不被覆盖

在某一个压缩包中单独不要解压的一个文件:

tar -zxvf 要解压的压缩包名字  --exclude 要排除的文件

压缩快捷方式的源文件: tar -zchf 想要压缩成的名字 软连接(快捷方式)名字


gzip命令

gzip 压缩命令,gzip无法压缩文件夹,必须先tar对文件夹打包后才可以gzip压缩

gzip -l 压缩文件 #看压缩文件里面的内容


zip命令

压缩语法: zip 压缩文件名 要压缩的内容 解压缩语法 : unzip 压缩文件

-A : 自动解压文件

-c : 给压缩文件加注释

-d : 删除文件

-F : 修复损坏文件

-k : 兼容DOS

-m : 压缩完毕后删除源文件

-q : 运行时不显示信息处理信息

-r : 处理指定目录和指定目录下的使用子目录

-v : 显示信息的处理信息

-x "文件列表" :压缩时排除文件列表中指定的文件

-y : 保留符号链接

-b <目录> : 指定压缩到的目录

-i <格式> : 匹配格式进行压缩

-L :显示版权信息

-t<日期> : 指定压缩文件的日期

-<压缩率> :指定压缩率

cp命令

cp 复制文件命令

1.复制普通文件 cp 想要复制的文件名字 复制之后的文件名

2.复制普通文件,且改名,放入另外一个文件夹中 复制放入其他文件夹中,保留源文件的名字:cp 想要复制的文件名 ./想要放入的文件位置/ 复制文件放入其他文件夹中,并且改名:cp 想要复制的文件名 ./想要放入文件的位置/想要替换的名字

3.一次性复制多个文件 , 放入另一个文件夹中 cp 文件1 文件2 ./想要放入文件的位置/

4.复制文件夹 使用 -r 参数 -r :递归式复制目录,即复制目录下的所有层级的子目录及文件 cp -r 想要复制的文件夹名 复制之后的文件夹名

5.复制且保持文件属性不变 ,-p参数用法 -p :复制的时候保持属性的不变 cp -p 想要复制的文件夹名 复制之后的文件夹名

6.拷贝软连接时候,保持连接属性不变使用 -d 参数 -d :复制快捷方式的时候,保持复制出来的新快捷方式同样指向之前的文件 cp -d 旧软连接名字 新软连接名字

7.-i 参数的用法 , 覆盖文件前进行提示,备注:默认系统做了alias别名功能,让我们输入cp的时候,其实是已经输入了cp -i参数 cp -i 文件1 文件2 #如果文件2已经存在,则会覆盖,-i会让用户进行输入y确认覆盖

cut命令

cut命令,在文件中每一行按要求提取片段

-b 以字节未单位的分割

-n 取消分割多字节符,与-b一起用

-c 以字符为单位

-d 自定义分割符,默认以tab为分割符 cut -d ":" -f -3 文件名 #意思就是以 : 冒号为分割符,查找第三个冒号前面的内容.

-f 与-d参数一起使用,指定显示哪个区域

N 第 N 个字节,字符, 或字段,从 1 计数开始截取 N- 从第 N 个字节,字符,或者是字段直至行尾开始截取 N-M 从第 N 到第 M (包括M) 个字节,字符 或字段开始截取 -M 从第 1 到第 M (包括M )个字节,总府,或字段开始截取

find和xargs命令

stat 命令用于显示文件的状态信息,stat命令的输出信息比ls 命令的输出信息更要详细.

1.stat 文件名

这样查出来的信息可以获得三个时间戳 : 1.访问时间(access) : 用户最近一次访问时间(文件名修改了,还未被读取过,则不变) 2.修改时间(change) : 文件最后一次修改时间 (数据变动) 3.更改时间(modify) : 文件数据元(例如权限等) 最后一次修改时间

find命令用来在指定目录下查找文件.任何位于参数之前的字符串都视为欲查找的目录名,如果使用该命令时不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进行显示.

find 查找目录和文件,语法:

   find 路径  -命令参数   [输出形式]

参数: 1.-maxdepth <目录层级>:设置最大目录层级

2.-mindepth <目录层级>:设置最小目录层级
​
3.-atime    按照文件访问access的时间查找,单位是天
​
4.-ctime    按照文件改变change状态来查找文件,单位是天
​
5.-mtime    根据文件修改modify时间查找文件[最常用]
​
6.name      按照文件名字查找,支持 * ? []通配符
​
7.-size     按照文件的大小查找
​
8.-type     查找某一些类型的文件 :  f 文件类型  , d 文件夹类型
​
9.-delete   删除找出的文件
​
10.-path    配合-prune参数排除指定目录
​
11.-prune   使find命令不在指定的目录寻找
​
12.-exec或-ok    对匹配的文件执行相对应sell命令
​
13.-print   将匹配的结果标准输出
​
14. !       取反
​
15. -a -o   取交集 , 并集,作用类似 && 和 \

xargs命令,又称管道命令,构造参数等等.

是给命令传参数的一个过滤器,也是组合多个命令的一个工具,它把数据流分割为一些足够小的块,以方便过滤器和命令进行处理

-d #为输入指定一个定制的分隔符,默认分隔符是空格

-i #用 {} 代替传递的数据

-I string #用string来代替传递的数据-n[数字] 设置每次传递几行数据

-n #选项限制单个命令行的参数个数

-t #显示执行详情

-p #交互模式

-P n #允许的最大线程数量数为n

-s[大小] #设置传递参数的最大字节数(小于131072字节)

-x 大于 -s #设置的最大长度结束 xargs命令执行

-0 #--null项用null分隔,而不是空白,禁用引号和反斜杠处理

grep命令

grep命令是Linux中的三剑客,主要作用是对文件进行过滤 筛选 grep 命令 语法:

grep 参数 匹配模式 文件名

-v #排除匹配结果

-n #显示匹配行与行号

-i #不区分大小写

-c #只统计匹配的行数

-E #使用egrep命令,也就是支持使用扩展正则表达式元字符

--color=auto #为grep过滤结果添加颜色

-w #只匹配过滤的单词

-o #仅显示匹配到字符串本身

-q #静默模式,即不输出任何信息

mkdir命令

make directory 创建文件夹 语法 创建一个文件夹: mkdir 文件夹的名字 创建多个文件夹: mkdir {文件夹1,文件夹2,文件夹3,文件夹4} 创建100个文件夹,利用lbash脚本:mkdir 文件夹名字{1..100} 递归创建文件夹: mkdir -p ./头文件夹/子1文件夹/子2文件夹/子3文件夹 #用绝对路径创建,创建时要回到头文件夹的位置

rm命令

mv 命令就是move的缩写 ,作用是移动或是重命名文件

1.移动文件到另一个文件夹 mv ./需要移动的文件名 ./需要移到的文件夹名

2.移动多个文件,放到另一个文件夹中 mv 文件名* ./需要移动到的文件夹名/ #当前目录所有以文件名开头的文件,文件夹,都移动到需要移动到的文件夹中

3.重命名的用法 mv 旧的文件名 新的文件名 4.强制性覆盖 -f mv -f 旧文件名 新文件名 #覆盖不会提示

rm命令就是remove的含义,删除一个或者是多个文件,这是Linux系统重要命令

-f 强制删除文件,文件夹不能删除.忽略不存在的文件,不提示确认

-i 在删除前需要确认,系统默认已经有了

-I 在删除超过三个文件或者是递归删除前要求确认

-d 删除空目录

-r 递归删除目录及其内容

-v 详细显示当前系统进行的步骤

sort命令

sort命令将输入的文件内容按照规则排序,然后输出结果

1.-n 根据字符串的数值排序 对第一个字符进行排序,默认从小到大 sort -n 文件名 #想要反转排序在-n参数中加入rs

  1. 对排序结果去重

    sort -u 文件名

3.指定分割符号,指定区域进行排序.

sort -n -t "." -k 4 文件名 #从小到大按照 . 符号进行排序

sed命令

sed命令也是Linux中的三剑客,主要是对文件的增删改查

语法: sed [参数] [sed内置命令字符] [文件]

参数选项 作用

-n 取消默认sed的输出,常与sed内置命令p一起用

-i 直接将修改结果写入文件,不用-i,sed修改的是内存数据

-e 多次编辑,不需要管道符

-r 支持正则扩展

sed的内置命令字符用于对文件进行不同的操作功能,如对文件增删改查

sed的内置命令字符 作用

a append,对文本追加,在指定后面添加一行/多行文本

d Delete,删除匹配行

i insert,表示插入文本,在指定行前添加一行/多行文本

p Print,打印匹配行的内容,通常p与-n一起使用

s/正则/替换内容/g 匹配正则内容,然后替换内容(支持正则),结尾g代表全局匹配

uniq,wc,tr 命令

uniq命令

注:echo命令是标准输出命令,类似python中的print

uniq命令可以输出或者忽略文件中的重复行,常与sort排序结合使用

1.去除连续的重复行

uniq 文件名

2.结合sort使用,去重更准确,要统计每一行重复的次数,在uniq后面加上 - c 即可

sort -n 文件名 | uniq

3.只找出文件中重复行,且统计次数

sort -n 文件名 | uniq -d -c

4.找出只出现过一次的行

sort -n 文件名 | uniq -c -u

wc命令

wc命令用于统计文件的行数,单词,字节数

-c #打印字节数

-m #打印字符数 当你输出hkz这个词的字符数的时候,会显示4个而不是3个,这是因为在hkz后面 还有一个$符号是隐藏的,可以用cat -E 参数来看看

-l #打印行数

-L #打印最长行的长度

-w #打印单词数

tr命令

tr命令从标准输入中替换,缩减或删除字符,将结果写入到标准输入

1.替换标准输入中的大小写

echo "my name is hkz" | tr 'a-z' 'A-Z'

2.使用 -d 删除参数

例:echo "my name is hkz" | tr -d 'a-z' #删除a到z的单词,''里面的东西可以改变

3.把文件当作标准输入,进行字符替换

tr 'a' 'A' < 文件名 #把文件中的小写a都替换成大写A

4.把多个连续的字符删除 -s

echo "iiiii am hhhhhhkkkkkkzzzzzz" | tr -s 'ihkz'

vim编辑

vim使用流程

vim默认机器是不安装的,需要手动安装这个工具命令

yum install vim -y #通过yum软件管理工具,安装命令vim,且默认是yes,命令之前需联网

当vim打开不存在的文件的时候,默认会创建文件

#语法是 1.vim 文件名 #打开文件

2.输入 字母 i,进入编辑模式,代表insert 输入字母 o ,在光标的下一行开始编辑 输入字母a ,在光标的行尾开始编辑

3.写完代码之后,按下esc,退出编辑模式

4.此时输入冒号,进入底线命令模式,然后输入 :wq! 强制写入文件内容且退出vim, write quit !强制性的

5.输入的冒号记得要是英文冒号

vim快捷键

上下左右:

h 向左
     
j 向下
​
k 向上
​
l 向右

光标移动:

w 移动到下一个单词
​
b 移动到上一个单词
​
数字 0 移动到行首
​
字符 $ 移动到行尾   
​
按下 g 移动到文章的开头
​
按下 G 移动到文章的结尾
​
按下 H 移动到屏幕的开头
​
按下 L 移动到屏幕的结尾
​
按下 M 移动到屏幕的中间

命令模式下的查找:

向下查找    /你要找的内容
向上查找   ?你要找的内容  ,按下n寻找下一个单词

命令模式下的复制,粘贴,删除:

输入 yy 复制光标所在行
​
输入 4yy 复制4行内容
​
输入 p 打印粘贴内容
​
输入 dd 删除光标所在行
​
输入 D 删除光标当前位置到行尾的内容
​
输入 x 删除光标当前字符,向后删除
​
输入 X 删除光标当前字符,向前删除
​
输入 u 撤销上一步的动作

快捷操作 :

删除光标所在位置,到行尾的内容,且进入编辑模式,输入大写C 
​
输入 o 在当前光标的下一行开始编辑
​
输入 O 在光标的上一行开始编辑
​
输入 A 快速进入行尾,且进入编辑模式
​
输入 zz 快速保存退出

批量快捷操作

快捷删除:
​
1.输入ctrl + v 进入可视块模式
​
2.用上下左右命令,选择你选操作的块
​
3.选中块后,输入 d 删除内容
快捷插入多行
​
1.选中块后,输入大写的 I ,进行写代码
​
2.按下esc两次,会自动生成多行代码

vim交换文件的解决办法

vim在编辑时如果异常关闭并未保存,此时系统会生成一个你刚刚编辑的文件名加.swp文件,这个文件就是你刚刚编辑的内容,按下 R 键可以恢复,你想删除的话就按 D 键 ,退出 Q 键 ,中止 A 键 , 直接编辑 E 键

修改权限

更改文件权限命令

chmod u+x 文件名 #给文件的user属主添加可执行权限

chmod 0 文件名 #取消文件所有的权限

文件权限的数字与字母转化

r read 4

w wirte 2

x exec 1

"-" 0

user 最大权限 rwx 4+2+1=7

r-w 4+0+1=5 -w- 0+2+0=2

更改文件的属主和属组

chown 命令,修改文件的属性

语法:

chown 新属主的名字 文件/文件夹

chown :属组 文件 #修改文件用户组

chown 属主:数组 文件 #同时修改文件的属主和属组

-R 递归修改文件的属组和属主

chown -R 属主:属组

更改文件的扩展属性,比chmod更改的更为底层

参数:

a #只能向文件中添加数据,不得删除

-R #递归更改文件目录属性

-V #显示命令执行过程

显示出文件的特殊权限

lsattr 文件名

模式:

" + " #增加参数

" - " #移除参数

= #更新为指定参数

A #不让系统修改文件最后访问的时间

a #只能追加文件数据,不得删除

i #文件不能被删除,改名,修改内容

创建用户

1.创建用户hong,且uid为1500

useradd -u 1500 hong #用户信息写入/etc/passwd

2.查看用户名

id 想要查看的用户名字

3.新建用户jerry,无法登录,且设置用户目录是/var/jerry

useradd -s /sbin/nologin -d /var/jerry

参数:

-c<备注> #加上备注文字,备注文字会保存在passwd的备注栏中

-d<登入目录> #指定用户登入时的启始目录

-D # 变更预设值

-e<有效期限> #指定用户有效期限

-f<缓冲天数> #指定在密码过期后多少天即关闭该账号

-g<群组> #指定用户所属的群组

-G<群组> #指定用户所属的附加群组

-m #自动建立用户的登入信息

-M #不要自动建立用户的登入信息

-n #取消建立以用户名称为名的群组

-r #建立系统账号

-s<shell> #指定用户登入后所使用的shell

-u<uid> #指定用户id

常用通配符

常用通配符

" * " 匹配任意,0或多个字符,字符串

? 匹配任意一个字符,有且只有一个字符

[abcd] 匹配abcd中任意一个字符,abcd也可以是不连续的任意字符

[a-z] 匹配a-z之间任意一个字符,要求连续字符,也可以连续数字,匹配[1-9]

[!abcd] 不匹配括号中的任意一个字符,也可以书写[!a-z]

[^abcd] 也是不匹配括号中的任意一个字符

特殊通配符

[[:upper:]] 匹配所有大写字母

[[:lower:]] 匹配所有小写字母

[[:alpha:]] 匹配所有字母

[[:alnum:]] 匹配所有的字母和数字

[[:space:]] 匹配所有标点符号

重定向符号

重定向符号

重定向的意思就是将数据传到其他地方

符号:

>       #输出覆盖重定向
​
>>      #输出追加重定向
​
< 或 <<      #标准输入重定向

1.读取文件的内容,且写入到另一个文件中,覆盖写入文件内容

cat 写入文件 > 被写入文件

2.追加写入文件内容

cat 写入文件 >> 被追加写入文件

3.重定向写入符

cat < 想要读取的文件 #把文件中的数据,发送给cat命令去读取

4.将文本内容拆分成多行

xargs -n 3 < 文件 # 3 是想要一行输出3个字符,可以变化的

5.重定向追加写入符 <<

可以结合cat命令使用

cat >> 想要被追加的文件 << EFO ,然后按回车,输入你想要加入的内容,最后再一次输入EFO关键字表示结束

EFO 是关键字,在开头表示开始的意思,在结束的时候也要写 EFO

正则表达式BRE集合

基本正则表达式BRE集合 :

^ 尖角号,用于模式的最左侧,如 "^oldboy" ,匹配以oldboy单词开头的行

$ 美元符,用于模式的最后册,如"oldboy$" ,匹配以oldboy单词结尾的行

^$ 组合符,表示空行

. 匹配任意一个且只有一个字符,不能匹配空行

\ 转义字符,让特殊含义的字符出现原形,还原本意,例如 . 代表小数点

" * " 匹配前一个字符(连续出现)0次或者1次以上,重复0次代表空,即匹配所有的内容

.* 组合符,匹配所有内容

^.* 组合符,匹配任意多个字符开头的内容

.*$ 组合符,匹配以任意多个字符结尾的内容

[abc] 匹配[]集合内的任意一个字符,a或b或c,可以写成[a-c]

[^abc] 匹配除了^后面的任意字符, ^表示对[abc]的取反

扩展正则表达式ERE集合:

扩展正则必须用grep -E 才能生效

字符 作用

" + "匹配前一个字符一次或多次

[:/]+ 匹配括号内的":"或者"/"字符一次或多次

? 匹配前一个字符0次或1次

| 表示或者,同时过滤多个字符串

() 分组过滤,被括起来的内容表示一个整体

a{n,m} 匹配前一个字符最少n次,最多m次

a{n,} 匹配前一个字符最少n次

a{n} 匹配前一个字符正好n次

a{,m} 匹配前一个字符最多m次

awk命令

awk命令也是Linux中的三剑客,适合编辑,处理匹配到文本的内容

awk更是一门编程语言,支持条件判断,数组,循环等功能,最常用的是print printf

语法:

awk 参数 '条件动作' 待处理文件

awk内置变量

内置变量 解释

$n 指定分隔符之后,当前记录的第n个字符

$0 完整的输入记录 $1表示取出第一列,$2表示取出第二列,以此类推

FS 字段分隔符,默认是空格 例: awk -F ':' '{print $1}' 1.txt , 以 : 冒号作为分隔符,取出以冒号作为分割点的第一列

NF 分隔后,当前行一共有多少字段(字段数量的意思)

NR 当前记录数,行数 例: awk 'NR==2 {print $0}' 1.txt , 表示打印出文本内容的第二行

RS 输入记录分隔符,指定输入时的换行符

ORS 输出记录分隔符,输出时使用指定符号代替换行符

FNR 各文件分别计数的行号

FILENAME 当前文件名

ARGC 命令行参数的个数

ARGV 数组,保存的是命令行所给定的个参数

对pwd文件格式化输出: awk -F":" 'BEGIN{printf "%-25s\t %-25s\t %-25s\t %-25s\t %-25s\t %-25s\t %-25s\n ","用户名","密码","UID","GID","用户注释","用户家目录","用户使用的解释器"} {printf "%-25s\t %-25s\t %-25s\t %-25s\t %-25s\t %-25s\t %s\n", $1,$2,$3,$4,$5,$6,$7}' pwd.txt

...

参数

-F 指定分割字段符

-V 定义或修改一个awk内部的变量

-f 从脚本文件中读取awk命令

Linux静态ip设置

切换root用户,使用vim命令

vim /etc/sysconfig/network-scripts/ifcfg-ens33

进入目录之后把BOOTPROTO="static" #改为static

配置IP地址: IPADDR="X.X.X.X" #设置自己想要的IP

配置子网掩码: NETMASK="255.255.255.0" #一般是这个

配置网关 : GATEWAY="X.X.X.X" #查看自己的网关为多少

配置DNS1="8.8.8.8" #此处为谷歌的DNS

配置完成之后保存退出: :wq

重启网卡: systemctl restat network

完工!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值