linux---常用linux指令(建议收藏,边用边学)

linux—常用linux指令(建议收藏,边用边学)

1、基础掌握

  • 1、进入目录指令 cd
    我们进入linux系统,要想在这个黑色的世界自由行走,先要了解的就是cd指令,它能帮助我们进入到我们想要去的地方

比如想要去/usr/local文件夹,那么执行cd /usr/local即可。注意linux的路径和window的有所区分,就不再是以盘符开头

# 进入/root目录
cd ~ 
# 返回上一级目录
cd ..
# 进入当前目录下的bin目录
cd ./bin 或者 cd bin
# 进入兄弟目录xxx(返回上一级,再进入该目录即可)
cd ../xxx
  • 2、查询列表指令 llls

ls指令用来列举目录下的文件,支持的参数有多种

# 获取当前列表下全部文件,包括隐藏文件
ls -a
# 获取当前列表下文件的全部信息,包括权限、大小、最近修改时间,ll指令就是该指令的快捷输入
ls -l 或 ll
# 获取当前列表下的全部文件,包括子目录
ls -R
# 将文件按最近一次修改时间排序
ls -i

需要注意的是这些参数是可以组合使用的,比如:

ls -li
  • 3、文本修改指令 vim \ vi

vim是文本修改指令,我们在环境部署时经常需要修改配置文件,因此vim指令的使用必不可少。但是需要注意的是如果你的linux系统安装的时候是用的最小化安装,那么是不自带vim指令的,需要单独安装,或者使用vi指令,虽然没有vim那么功能丰富,但是单纯的修改保存是完全没有问题的

vim 基础操作:

# 修改文件
vim fileName
# 切换修改模式
a
# 保存
esc + :wq 
# 强制保存
:!wq
# 直接退出,不保存修改
:q

vim高级操作:

# 向后查找指定内容
:/xxx
# 向前查找指定内容
:?xxx
# 替换所有的xxx为yyy
:%s/^xxx/yyy/g
# 切换到第一行
gg
# 切换到最后一行
GG
# 跳转指定行
:row_number
# 显示行号
:set nu
# 取消显示行好
:set nonu
# 删除光标所在行
dd
# 全部删除(三步)
esc
gg
d + G (注意这里不是输入+,而是连续操作)
  • 4、文本文件查看指令 cat \ more \ less

cat 指令:

# 一次性显示文件全部内容,适合于较小的文件
cat xxx
# 加上行号显示
cat -n xxx

less指令:

# 分页显示文件内容,适合较大的文件
less xxx
# less操作
空格键:前进一页
b键:后退一页
q键:退出阅读
/键:搜索模式
n键:搜索模式下,跳转下一个匹配行
N键:搜索模式下,跳转上一个匹配行
  • 5、查看尾行指令 tail

tail指令用于查询文本内容的最后几行,适用于针对较大的日志文件进行查询,并且能够实时显示文本内容,可以实时看到新产生的日志内容

# 查询文件末尾几行(默认10行)
tail xxx
# 查询文件末尾100行
tail -n 100 xxx
# 实时查看文件默认100行(会持续输出文件产生的新内容)
tail -f -n 100 xxx
  • 6、查看文件的头几行指令 head

head指令与tail相对,用于查询文件的头几行内容

head xxx
# 指定100行
head -n 100 xxx
  • 7、转移文件指令 mv

mv指令也就是window中我们常用的剪切指令,用于移动文件

mv 原文件名 目标文件名
# 如将当前目录下的vim_test文件移动到上级目录,并重命名为vim_test2
mv vim_test.txt ../vim_test2.txt
  • 8、复制文件指令 cp

cp也是我们比较常用的指令,用于文件复制

mv 原文件名 目标文件名
# 如将当前目录下的vim_test文件复制到上级目录,并重命名为vim_test2
cp vim_test.txt ../vim_test2.txt
  • 9、远程复制指令 scp

scp指令用于远程复制/传输文件,我们配置环境时,有时需要将一个配置文件传到另外一个服务器上,如果不想专门下载一个ftp软件的话,我们就可以用scp指令来实现

scp 文件名 目标服务器账号@目标服务器ip:目标路径
# 将当前目录下的source_project_cargo文件复制到192.168.244.11服务器上的/var/local目录下
scp source_project_cargo.sql root@192.168.244.11:/var/local/
  • 10、删除文件指令 rm

rm指令用于删除指定文件夹下的文件及子文件夹。该指令使用时要慎重,因为一旦删除是无法恢复的,所以开发圈盛传的删库跑路,就源于rm -rf指令的强悍效果

# 强制删除文件
rm -f xxx
# 删除文件及子目录
rm -r xxx
# 强制删除文件及子目录
rm -rf xxx
  • 11、创建文件夹指令 mkdir
# 创建文件夹xxx,只支持一级文件夹
mkdir xxx
# 创建多级文件夹
mkdir -p xxx/yyy/zzz
  • 12、显示当前路径 pwd

有时我们不知道自己当前操作的文件夹路径时,就可以通过pwd指令来查询当前所在路径

pwd
  • 13、模糊查询指令 grep

grep指令是我们在运维排查的过程中常用的指令,当出现报错时,我们就可以通过grep指令来定位报错的日志内容

grep [option] pattern filename
# 查询xxx.log中的“张三”所在行
grep '张三' xxx.log 
# 查询xxx.log中“张三”所在行及之后的3行内容,A:after
grep -A 3 '张三' xxx.log
# 查询xxx.log中“张三”所在行及之前的3行内容,B:before
grep -B 3 '张三' xxx.log
# 查询xxx.log中“张三”所在行及前后的3行内容
grep -C 3 '张三' xxx.log
# 查询指定文件的总行数
grep -c '' /data/logs/xxx.log
# 查询指定张三出现的行数
grep -c '张三' /data/logs/xxx.log
# 查询并显示行号
grep -n -A 3 '张三' xxx.log
  • 14、重启指令 reboot

重启大法能够解决"80%"的软件问题,这是我们必须掌握的指令!

reboot
  • 15、切换用户指令 su
# 切换root账号
su
# 切换指定用户elastic
su elastic

2、进阶掌握

  • 1、查找可执行文件的路径 which

有时我们会面临忘记自己安装的软件在哪个文件夹下,或者需要用到某个软件不知道放哪儿了,这时我们就可以通过which 来帮助我们寻找安装目录

# 查找java安装路径
which java
  • 2、查找文件位置指令 find

find指令用于查找指定文件的路径

find <path> <fileName> <todo>
# 在/var/local文件夹下查找xxx.log文件
find /var/local xxx.log
  • 3、赋权指令 chmod \ chown

在linux系统中,文件具有不同的权限,针对没有写入权限的文件,我们是不能修改的,因此我们就需要修改文件权限,这时就需要用到chmod,chown指令

chown指令:改变文件所有者

# 将/var/local/elasticsearch文件夹的所有者改为elastic,群组改为elastic,-R表示递归设置所以的子文件夹
chown -R elastic:elastic /var/local/elasticsearch

chmod指令:修改文件权限

# 递归设置对/var/local/elasticsearch文件夹及子文件具有最高权限
chmod -R 777 /var/local/elasticsearch 

针对权限内容,当然不止777最高权限,还分了其他很多权限等级,因篇幅关系,大家可自行学习,先做了解,实际应用时再深入理解即可

  • 4、查询进程指令 ps

ps指令可以让我们查询进程名,我们在linux系统中后台运行某些软件时,是不能想window那样有运行窗口可视化的,我们想要找到这些进程的话就需要利用ps指令

# 查询全部进程
ps -ef
# 结合grep指令实现查询指令名称的进程,如查询java进程
ps -ef | grep java
  • 5、终止进程指令 kill

kill用来强制杀死正在运行的进程,类似window中的强制退出,一般配合ps指令来使用,ps指令查询出指定的进程号,然后通过kill退出进程

kill 进程号
  • 6、远程连接指令 ssh

ssh用于我们远程连接服务器,如果不想下载远程连接软件的话,ssh指令是不错的选择

ssh 账号@服务器ip -p 端口
# 通过22端口远程连接192.168.244.11服务器
ssh root@192.168.244.11 -p 22
# 端口默认22,所以上述指令可以简写为
ssh root@192.168.244.11
  • 7、软件下载指令 yum

yum是一个软件包管理器,我们可以通过这个指令来快捷安装软件,以此来方便的搭建运行环境

# 显示已经安装的和可以安装的软件
yum list
# 查找安装包
yum search <name>
# 安装软件包
yum install xxx
# -y是无需再询问是否安装,比如直接安装java
yum -y install java
# 卸载安装的软件
yum remove xxx
# 更新所有软件包
yum update
# 更新指定软件包
yum update xxx
  • 8、下载文件指令 wget

wget用于从指定的url下载文件,这样我们就不再需要在本地下载后再从本地上传到服务器了。当然该工具不是自带的,需要我们提前安装

# 通过yum安装wget
yum -y install wget
# 下载文件
wget url
# 下载文件并重命名
wget -O 55555.zip http://55555.com/download
  • 9、打包、解压指令 tar

tar指令用于打包文件夹, 或者解压压缩包,在环境搭建时非常常用

其支持的参数如下:

-c   # 创建打包文件
-t  # 查看压缩包含有哪些文件名
-x # 解压缩
-z # 通过gzip的方式进行压缩/解压缩
-v # 显示正在解压/打包的文件名
-f # 指定文件名

一般我们是将这些参数组合使用的,下面列举几个常用的:

# 压缩xxx文件夹为.tar.gz文件
tar -czvf xxx.tar.gz xxx
# 解压xxx.tar.gz文件
tar -zxvf xxx.tar.gz
# 显示压缩文件内容
tar -tzvg xxx.tar.gz
  • 10、zip文件解压缩指令 zip/unzip

zip指令专用于解压/打包zip文件,同样需要提前安装

# yum安装zip,unzip指令
yum install zip
yum install unzip
# 解压zip文件
unzip xxx.zip
# 打包zip文件
zip [option] 文件名 路径
# 打包xxx文件夹为xxx.zip,-v表示可视化打包过程,-r表示递归打包所有子文件夹
zip -vr xxx.zip /var/local/xxx
# 追加user.txt文件到xxx.zip文件中
zip -u xxx.zip user.txt
# 加密压缩
zip -e xxx.zip /var/local/xxx
  • 11、后台运行程序 nohup

nohup指令用于后台运行程序,有时我们需要运行多个软件时,如果都在前台运行则只能运行一个,无法继续输入指令,这时我们就需要指定程序后台运行

# 后台运行xxx.jar,搭配“&”使用,表示退出终端程序依旧可以后台运行,不会挂断
nohup java -jar xxx.jar & 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值