linux常用命令
linux的基本命令:
shutdown -h now 立刻关机【可以指定时间关机】---仅限root用户执行
reboot 重启
shutdown -r now 立刻重启
---以上仅限root用户执行
exit 注销当前用户
上传下载文件,这两个命令需要安装,不是自带的命令
#yum -y install lrzsz
#rz和sz都只能操作文件,不能操作文件夹
rz 上传
sz filename 下载文件
reboot 立刻重启
su 切换成系统管理员身份
sudo su - 实验楼里面切换root用户
sudo su Linux终端中切换 root用户
&& 执行多条命令 可以使用两个&来连接:cd/Users/brf/Desktop && touch brf.txt
Ctrl + Alt 切回到本机
Ps:
root 用户是linux中权限最高的用户,可以做任何的操作。
[root@VM_152_28_centos ~] # :root 最后显示是 #,普通用户显示是 $;@前边是用户,@后边是主机名;~代表当前在哪个目录下;
添加、删除用户、切换用户:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | logout xxx 注销用户 pwd 显示在哪个目录下 useradd+用户名 添加用户 passwd+用户名 给用户设置密码 useradd myuser 添加用户 userdel myuser 删除用户 userdel -r 用户名 删除用户,并且把关于此用户的家目录一并删除 <br>切换用户: su + user(用户名) #不会重新加载用户的环境变量<br>su - user(用户名) #重新加载用户的环境变量 <br>#因为都使用root用户,权限会比较大,会容易误操作,所以就创建普通用户,避免一些问题 sudo reboot: 普通用户获取root用户权限,在命令前面加上sudo即可 who : 查看当前已经登录的用户 whoami 查看当前用户 sudo reboot 普通用户获取root用户权限,在命令前面加上sudo即可 userdel yun 删除yun用户但不删除该目录下的文件 userdel -r yun 删除yun用户并删除该用户下的主目录 切换用户: su username——不会加载用户的环境变量 su - username ——重新加载用户的环境变量【推荐使用这个,使用上边的有些命令会使用不了】 sudo su ——切换root用户 |
ls - l 后:
-rw -rw -r -1 gnx gnx 216 Jul 13 10:11 a.py : -rw -rw -r 代表权限; Jul 13 10:11是创建时间
drwxr - xr - x 2 root root 4096 Jul 13 10:12 dsk: d代表是文件夹,什么都没有是 - :代表是文件;
——第一个 root:代表是在哪个组里面,第二个root代表是哪个用户创建的,文件是谁创建的,就只能谁来操作(除root用户)。
查看ip地址、系统信息:
(1):q 退出vi
(2):q! 不保存退出
(3):wq 保存退出
(4):x 保存退出
(5):w 保存
(1)M 移动光标到页面中央
(2)L移动光标到页面尾处
(3)H移动光标到页面开始处
(4)Ctrl+f向后翻页
(5)Ctrl+b向前翻页
(6)0移动光标到行首
(7)$移动光标到行尾
(8)/:从上往下开始查找,然后按n寻找下一个
(9)?:从下往上开始查找,然后按n寻找下一个
(10):n 快速去到n行
撤销、重复、查找:
(1)/xxx 从上往下开始查找
(2)?xxx 从下往上开始查找
(3)u 撤销
(4). 重复前一个动作
复制、粘贴、删除:
(1)nyy 复制光标所在的向下n行内容
(2)p 在光标处粘贴复制的内容
(3)ndd 删除光标所在向下n行的内容
(4)ctrl + d 往下翻半屏内容
(5)ctrl + u 往上翻半屏内容
(6)shift + g 到文件末尾
(7)dd 删除整行
(8):set number 显示行号
(9):set nonu 取消显示行号
(10):1,3y 复制第一行到第三行
(11):1,3d 删除第一行到第三行
(12):1,3s/str/str_new/g 替换第一行到第三行中的字符串
(13):%s/str/str_new/g 替换所有行中的字符串
(14)x 删除一个字符
(15)u 撤销
(16)nu 显示行号
常用命令:
ls #查看当前目录下内容【查看不了隐藏的】
ls /tmp #显示/tmp目录下的内容,如果后面没有跟路径则显示当前目录下的内容
ls -l #查看详细信息显示
ls -a #显示所有文件,包括隐藏文件
ls -la #详细模式显示所有文件
ls -al #详细具体信息查看
ls - lt #按照创建时间,倒序排序
ls --help\man ls #查看所有的命令都是什么
ll 等于 ls -l
id #查看当前使用的哪个用户,或是在哪个组
whoami #查看当前具体是哪一个用户
cd #进入某个目录
cd - #回到上一次操作的目录
cd ~ / cd #回到用户的家目录
cd /tmp
cd .. #返回上一级目录
cd ../../ #返回上两级目录
cd:改变当前的目录或者处理绝对目录和相对目录
- 用法:cd目录
- 举例:
- cd回车:退到当前用户个人目录
- cd / :退到最根目录
- cd ../xx:退到上级目录的xx目录
- cd .:停留在当前目录
- cd .. :返回上级目录
- cd –:回到上一次操作的目录
- cd ~: 回到用户家目录
- pwd显示当前路径
cp #复制,用的时候全部加上 -rf参数,什么都能复制
cp -rf a.txt /tmp
mv #移动文件,也有重命名的作用,
#改名和移动区别是,如果后面是一个文件名,那么就是改名,如果后面写的是一个路径,那么就是移动
mv a.txt /tmp #移动a.txt到/tmp目录下
mv b.txt my.txt #把b.txt改成my.txt
tree #以结构的形式把目录显示出来
rm #删除文件、文件夹,删除后不能恢复,用的时候用加上 -rf 参数就什么都能删掉了
rm -rf a.txt
pwd #显示当前绝对路径(查看当前在哪个目录下)
mkdir.文件名 #创建隐藏的文件
mkdir dir #创建文件夹
cat #查看文件内容
cat a.txt
more 分屏查看文件内容,文件内容比较多的时候用,ctrl+c退出
more a.txt
less 分屏查看文件内容,文件内容比较多的时候用,输入q退出
less a.log
tail 从文件末尾开始查看文件内容,一般都加上-f参数,可以动态的看,退出tail,ctrl+c退出
tail -f a.log
tail -50f a.log #从末尾第50行开始看
touch 创建空文件,如果文件存在的话,那么会更新文件的修改日志
touch a.txt
du 文件占用大小
du -sh * #查看当前目录下所有文件占用的空间
du -sh /tmp #查看tmp目录下占用的大小
df 查看当前磁盘占用空间
df -lh
chmod 给文件/文件夹修改权限
chmod加权限有两种方式,数字方式和文本方式
r:读,数字是4
w:写,数字是2
x:执行,数字是1
chmod 777 a.sh #7 = 4+2+1就是可读可写可执行的权限,数字就是把那几位加起来
文本模式
chmod +x a.sh #加上执行权限
chmod +wrx a.sh #加上可读可写可执行的权限,也就是和777一样
为啥有3个7呢,第一位代表这个文件所属的用户的权限,第二位代表本组的用户的权限,第三位代表其他用户的权限
文本模式想分别赋权限的话,就得指定到底是哪个组的
u -- 所有者
g -- 同组
o -- 其他以外的人;
a -- 所有
+ -- 增加权限
- -- 去掉权限
-R 递归,主要用于一个目录,把这个目录下所有的文件/文件夹赋权限
chmod -R a+x abc #为文件abc及其子目录底下的所有文件的全体用户增加x权限
chmod u-x abc #为abc文件的用户拥有者去除x权限
grep 查找文件内容
grep 'besttest' a.txt #从a.txt中查besttest
grep -v 'besttest' a.txt #排除besttest
ps 查看进程
ps有很多参数,具体参数解释可以看 http://man.linuxde.net/ps
一般常用ps来看一个进程是否启动
ps -ef|grep java #ps -ef查到所有的进程,然后从所有的进程里面找带有java的,“|”是管道符,可以理解为把ps -ef命令的
结果通过这个管道传给grep,然后让grep从里面搜索。
ps -ef|grep mysql #查询mysql相关进程
默认会有多余的一个进程,就是grep本身,意思就说,ps -ef|grep xx的时候,最少会有一条进程,如果说你ps -ef|grep 查询进程的时候
只有一条,就代表你要查询的这个进程不存在
ps -ef|grep httpd|grep -v grep #这一条命令就是3个连着用了,找到httpd之后,再把grep本身的这一条给排除掉
kill 用来停止进程,也就是Windows里面强制给他关掉
kill -9 pid #杀掉这个这个进程,pid可以用ps -ef查到
top 动态的监控服务器的资源使用,ctrl+c退出
find 查找文件
find / -name a.txt #第一个参数是路径,-name是按照文件名来查询,这个是从根目录下开始查找名字为a.txt的文件
tar 用来打包、解包
tar czvf my.tgz my #把my这个文件夹压缩并打包成为my.tgz
tar cvf my.tar my #把my这个文件夹打包成为my.tar,不加z这个参数就只是打包,不压缩
tar czvf my.tar.gz my #把my这个文件夹压缩并打包为my.tar.gz,后缀两种都行,你用tgz和tar.gz都可以
tar xvf my.tgz #解包,解开的时候只需要这一种姿势,都能解开
#tar解包的时候可以截后缀为 .tgz .tar.gz .tar这三种的
gzip、ungzip 用来打包、解压.gz结尾的压缩包
ungzip a.gz #解压
gzip a.txt #压缩,压缩完之后原来的文件就没有了
zip 、unzip 打zip包
http://man.linuxde.net/zip
http://man.linuxde.net/unzip
yum 安装软件
yum就是傻瓜式的安装软件,你要装什么,yum什么就行了,红帽系统才有yum,乌班图和debian是没有的
yum -y install nginx#安装nginx
rpm 也是安装软件的,如果一个软件包名是以.rpm结尾的,那么就用rpm安装
rpm -ivp mysql.rpm
http://man.linuxde.net/rpm
crontab 定时任务
crontab -e 添加crontab任务
http://man.linuxde.net/crontab 看下面的实例
执行shell脚本
如果一个文件是以.sh结尾的就是一个shell脚本
执行的话前面加上sh就可以了
sh start.sh
本文来自博客园,作者:他还在坚持嘛,转载请注明原文链接:他还在坚持嘛 https://www.cnblogs.com/brf-test/p/11106906.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架