天天看点

Linux实用命令环境变量配置文件关机和重启vi和vim编辑器用户管理用户组管理运行级别(含找回root密码)帮助指令文件目录类查看文件内容(cat、more、less)输出重定向注追加指令echo、head、tailln(软连接)、history时间日期类指令搜索查找(find、locate、grep和管道符)压缩与解压(gzip、gunzip,zip、unzip,tar)文件权限权限管理任务调度(crond)进程服务管理

Linux实用命令

  • 环境变量配置文件
  • 关机和重启
  • vi和vim编辑器
  • 用户管理
  • 用户组管理
  • 运行级别(含找回root密码)
  • 帮助指令
  • 文件目录类
  • 查看文件内容(cat、more、less)
  • 输出重定向注追加指令
  • echo、head、tail
  • ln(软连接)、history
  • 时间日期类指令
  • 搜索查找(find、locate、grep和管道符)
  • 压缩与解压(gzip、gunzip,zip、unzip,tar)
  • 文件权限
  • 权限管理
  • 任务调度(crond)
  • 进程
  • 服务管理

环境变量配置文件

vim ~/.bashrc

source ~/.bashrc

关机和重启

shutdown -h now 立刻关机

shutdown -h 1 一分钟后关机

shutdown -r now 立刻重启

halt 关机

reboot 重启系统

sync 将内存数据同步到磁盘上

vi和vim编辑器

三种常见模式:正常模式、编辑模式、命令行模式

正常模式下的常用指令:(其他模式切换到正常模式,esc)

yy拷贝当前行,5yy拷贝向下的5行(数字是几就几行),p粘贴

dd删除当前行,5dd删除向下5行(数字是几就几行)

G到达文件最末行,gg到达文件最首行

u取消刚刚输入

10 shift+g:光标跳到第10行(数字是几就几行)

进入编辑模式的指令:

i:在当前位置输入

I:在当前行,行首输入

a:在当前位置后输入

A:在当前行,行尾输入

o:在当前行之后插入一行

O:在当前行之前插入一行

命令行模式下的常用指令:(进入命令行:英文的冒号 : 或 /)

:wq 保存退出

:q! 不保存退出

:q 没有修改退出

/关键字(回车):关键字查找,n 下一个

:set nu 设置行号

:set nonu 取消行号

用户管理

useradd -m 用户名:新建用户,同时会新建一个与用户同名的用户组,且此用户属于这个组,-m 会在home目录下生成一个用户目录(有的时候不自动生成)。

useradd -g 用户组名 -m 新用户名:在指定用户组下新建用户

passwd 用户名:为用户设置密码(新用户若登录后只出现$,则需要修改/etc/passwd文件最后对应用户名那一行,将sh修改为bash)

userdel 用户名:删除用户

userdel -r 用户名:删除用户,不保留home目录

id 用户名:查看用户信息(显示uid、gid、group)

exit:退出当前用户

who am i :查询当前用户

usermod -d 目录 用户名:修改用户初始登录目录

用户组管理

groupadd 组名:新建用户组

groupdel 组名:删除组

usermod -g 新组名 用户名:修改用户对应用户组

/etc/group文件存有用户组信息

/etc/shadow 存有口令配置文件(也有可能没有这个文件)

运行级别(含找回root密码)

运行级别的配置文件/etc/inittab(也有可能没有)

0、关机

1、单用户

2、多用户状态没有网络服务

3、多用户状态有网络服务

4、系统未使用保留给用户

5、图形界面

6、系统重启

切换指定运行级别 init 0 :修改数字切换级别(轻易不切换4)

找回root密码,通过进入单用户模式,因为进入单用户无需密码(不能远程找回)

步骤:

开机引导时回车 >> 输入e >> 新界面光标第二行,输入e >> 出现行,输入1,回车 >> 输入b

进入单用户模式之后,可以passwd修改root密码

帮助指令

man + 指令

help + 指令

文件目录类

touch 文件名:创建一个空文件

touch 文件1 文件2 文件3:创建多个文件

pwd:显示当前工作目录的绝对路径

ls -a 文件:显示文件

ls -a 目录:显示目录里的所有文件和目录

ls -l 文件或目录:显示文件的详细信息 或 显示目录里的所有文件和目录的详细信息

ls -lh 文件:能够将文件大小以易于观察的单位显示出

mkdir 目录:创建目录

mkdir -r 目录1/目录2/目录3:创建多级目录

rmdir 目录名:删除空目录

rm -rf 目录名:删除非空目录,并且不报告

cp 文件 目录:复制文件到指定目录(可以是相对目录也可以是绝对目录)

cp -r 目录:复制目录到指定目录

mv 文件或目录 /目录/目录/新名字:剪切文件到新目录下,也可以不指定新名字

查看文件内容(cat、more、less)

cat 文件名:查看文件内容

cat -n 文件名:显示行号查看

cat -n 文件名 | more :分页查看

more 文件:按页显示内容

空格:向下翻页

回车:向上翻页

q:离开

= :输出当前行号

:f 输出文件名和行号

less(分屏查看文件内容,不是一次性加载完,而是根据显示加载,比较适合浏览大文件)

pagedown或空格:向下翻页

pageup:向上翻页

/关键字 :向下寻找 关键字功能

?关键字:向上寻找 关键字功能

q:离开

输出重定向注追加指令

一个向右尖括号 > :输出重定向指令

两个向右尖括号 >>:追加指令

ls -l > a.txt : 把ls -l 显示的内容覆盖到a.txt文件中,如果文件不存在则创建

ls -l >> a.txt :把显示的内容追加到文件中,如果文件不存在则创建

cat 文件1 >> 文件2 :将文件1的内容覆盖到文件2中

cat 文件1 > 文件2:将文件1的内容追加到文件2中

echo 内容 >或>> 文件:将内容覆盖或追加到文件中

cal >> /目录/目录/文件:将日历追加到指定目录下的文件中

echo、head、tail

echo输出到控制台

echo $PATH

echo $JAVA_HOME

head显示文件头部内容

head -n 5 文件:查看文件前5行

head 文件:显示文件头部大部分内容

tail默认输出文件的后10行

tail -n 5 文件:输出文件的后5行

tail -f 文件:实时监控文件,若有人操控文件,会动态显示

ln(软连接)、history

ln -s 原文件或目录 软连接名称 :相当于新建一个文件或目录,但它指向你前面设定好的文件或目录

rm -rf 软连接名称:删除软连接

history查看已经执行过的历史指令

history :(不带参数)显示所有历史指令

history 10:显示最近10个指令

!100:执行行号为 100 的命令

时间日期类指令

date:显示当前的时间

date ‘+%Y’ :显示年

date ‘+%m’ :显示月

date ‘+%d’ :显示天

date ‘+%Y-%m-%d’:显示年月日(分隔符可以随意设置,不一定是 - )

date ‘+%H’:显示时

date ‘+%M’:显示分

date ‘+%S’:显示秒

date ‘+%H:%M:%S’:显示时分秒

字串时间设置日期

date -s ‘2021-2-2 8:30:20’ :将时间设置成字符串表示的时间

cal:显示当月日历

cal 2021:显示一年的日历

搜索查找(find、locate、grep和管道符)

find 目录范围 【选项】

find 目录 -name 文件名 :根据文件名在指定目录下查找文件

find 目录 -user 用户名:根据用户名在指定目录下查找文件

find 目录 -size +20M:查找文件大小大于20M的文件(-20M是小于、20M是等于)

find 目录 -name *a.txt :查找名称以a.txt结尾的文件

locate可以快速定位文件路径(他有文件路径的数据库,不需要遍历整个系统)

使用之前需要执行updatedb(更新或创建数据库)

grep和管道符:管道符 “|” 可以将前面的处理结果传送给后面的过滤处理

cat 文件 | grep -n hello:返回文件中hello所在的行和行号

cat 文件 | grep -ni hello :和上面的一样但是不区分大小写

压缩与解压(gzip、gunzip,zip、unzip,tar)

gzip 文件:压缩出一个gz包,但是不保留源文件

gunzip gz包 :解压出gz包,也不保留gz包源文件

gzip 文件1 文件2 文件3:将三个文件分别压缩为三个包

gunzip 包1 包2 包3:解压三个包

zip a.zip a.txt:将a.txt文件压缩为a.zip包,需要先指定压缩后的文件名,保留源文件

zip -r 包名 目录:参数-r递归压缩目录

zip 包名 文件1 文件2 文件3:多个文件压缩为一个压缩包

unzip 包名:解压到当前目录

unzip -d 目录 包:指定解压目录

tar命令对应参数

-c:产生.tar的打包文件

-v:显示详细信息

-f:指定压缩后的文件名

-z:打包同时压缩

-x:解压tar包

tar -zcvf a.tar.gz a.txt:将a.txt压缩成名为a.tar.gz的tar包

tar -zxvf tar包:将tar包解压到当前目录

tar -zxvf tar包 -C 目录:(大写C)将tar包解压到指定目录,指定目录要存在

文件权限

ls -lh 文件名:文件大小以m为单位

ls -l查看文件详细信息

Linux实用命令环境变量配置文件关机和重启vi和vim编辑器用户管理用户组管理运行级别(含找回root密码)帮助指令文件目录类查看文件内容(cat、more、less)输出重定向注追加指令echo、head、tailln(软连接)、history时间日期类指令搜索查找(find、locate、grep和管道符)压缩与解压(gzip、gunzip,zip、unzip,tar)文件权限权限管理任务调度(crond)进程服务管理

第一个位置代表文件类型:- 代表普通文件;d代表目录;l软连接;c字符设备;b块文件

接下来三个代表拥有者权限:rwx:读 写 执行(若有 - 代替,则表示没哟这项权限)

接下来三个拥有组的权限:rwx:读 写 执行(若有 - 代替,则表示没哟这项权限)

接下来三个其他组的权限:rwx:读 写 执行(若有 - 代替,则表示没哟这项权限)

(用数字表示:r=4,w=2,x=1;可以通过相加表示权限)

接下来的一个数组

接下来是拥有者

接下来是拥有的组

接下来是文件大小

接下来是文件最后修改时间

权限管理

u表示所有者,g表示所有组,o表示其他人,a表示所有人(ugo的总和)

chmod u=rwx g=rw o=r 目录或文件:给用户或组赋权

chmod u+r 目录或文件:给用户或组赋权

chmod u-r 目录或文件:减去权限***

chmod 777 文件或目录:权限操作仅限此目录或文件

chmod 777 -R 目录:递归修改,此目录下的所有文件或目录,权限一并修改

修改问文件所有者或所有组

chown 新用户:新用户组 文件:修改文件所有者和所有组

chown 新用户:新组 -R 目录:修改目录下所有文件或目录

chown 新用户名 文件名:修改文件拥有者为新用户名

chown 新用户名 -R 目录:递归修改目录权限

chgrp 新组名 文件名:修改文件所在组

任务调度(crond)

调度里面可以写脚本,然后按时执行

步骤:

crontab -e:新建调度

开头模式: */ * * * * *

斜杠右边的星星,左边起,第一个代表分(0-59),第二个代表时(0-23),第三个代表天(1-31),第四个代表月(1-12),第五个代表星期(1-7)

案例:

crontab -e(回车)

(输入)

*/ 1 * * * * cal >> a.txt

(保存退出)

次调度即为每分钟向a.txt文件中追加一次日历

crontab -l :查看调度

crontab -r :删除调度

service crond restart:重启任务调度

进程

ps -aux

-a 显示当前终端所有进程信息

-u一用户格式显示进程信息

-x显示后台进程运行的参数

显示内容中:PID进程识别号; TTY终端机号; TIME进程所消耗CPU时间; CMD正在执行的进程或命令

管道符按条件查找

ps -aux | grep 条件值:按条件查找进程

kill 进程号:关闭进程

killall 进程名称:关闭相关的所有进程

kill -9 进程号:强制杀掉终端或进程

ps -aux | grep bash查看终端

pstree 树状图展示进程

pstree -pu 树状图展示带上pid和user

服务管理

service 服务名称 start、stop、restart、reload、status

继续阅读