当前位置: 首页 > news >正文

Linux实用命令

文章目录

  • 一.系统与设置命令
        • 1. Linux的用户与用户组
        • 2.当前用户的详细信息 id
        • 3.提高普通用户的权限sudo
        • 4.实时显示进程的信息 top
        • 5.查看进程信息ps
        • 6.杀死进程kill
        • 7.关机重启
        • 8.显示当前登陆系统的用户who
        • 9.校正服务器时间,时区 timedatectl
        • 10.清屏命令clear
  • 二.目录管理
        • 1.ls列出目录内容(list)
        • 2.cd切换目录(change directory)
        • 3.pwd显示当前目录(print working directory)
        • 4.mkdir 创建目录(make directoriy)
        • 5.rm删除文件或目录。(remove)
        • 6.cp 复制文件或目录。(copy)
        • 7.mv移动或更名现有的文件或目录。(move)
        • 8.文件权限:chmod 变更文件或目录的权限。(change mode)
        • 9.chown 分配文件所属用户及所属组
  • 三.文件管理
        • 1.touch 创建文件
        • 2.vi 或 vim 命令
        • 3.cat显示文本文件内容(小文件)(catenate)
        • 4.less分页显示文件内容,操作更详细。
        • 5.tail用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
        • 6.head 查看文件前面内容
        • 7.grep过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。(Global Regular Expression Print)
        • 8.echo 展示文本
        • 9.awk 是一种处理文本文件的语言,是一个强大的文本分析工具
        • 10.软连接(快捷方式)
        • 11.find查找文件或目录。
  • 四:备份与压缩
        • 1.gzip 压缩文件
        • 2.gunzip 解压文件
        • 3.tar 打包压缩和解压(常用)
        • 4.zip 压缩文件
        • 5.unzip 解压
        • 6.bzip2 压缩文件更小,压缩时间长
        • 7.bunzip2 解压
  • 五.网络与磁盘管理
        • 1.ifconfig 查询网卡信息(常用)
        • 2.ping 判断网络通畅(常用)
        • 3.netstat 显示网络状态
        • 4.lsblk 查看磁盘使用情况
        • 5.df 文件系统层角度展示磁盘使用情况
        • 6.mount 挂载linux系统外的设备(例如u盘)
        • 7.yum 下载,安装软件,解决软件依赖
        • 8.rpm 只能安装已经下载到本地机器上的rpm包
  • 其它命令
        • 1.rmdir 删除空的文件夹
        • 2.管道 |
  • 问题记录:

一.系统与设置命令

1. Linux的用户与用户组
  • 添加用户 useradd aaa
  • 为新增用户设置密码 passwd aaa
  • 切换用户 su 用户名
    su -c ls root(通过root账户执行ls命令)
  • 删除用户 userdel
    userdel test 删除test用户(不会删除home目录)
    userdel -r test 删除用户以及home目录
  • 修改用户名称: usermod -l 新名称 aaa(使用前退出用户)
    退出当前用户ctrl+d
    修改用户属性和配置usermod
  • 查看所有用户sudo grep bash /etc/passwd
  • 添加组 groupadd 用户组名
  • 修改组 groupmod -n 新组名 用户组名
  • 查询用户所属组 groups 用户名
  • 删除用户组 groupdel 用户组名
  • 添加某个用户,顺便给这个用户指定组 useradd 用户名 -g 用户组名
  • 管理组内成员 gpasswd 组名
    gpasswd用于将一个用户添加到组或者从组中删除
    添加gpasswd -a 用户名 组名
    查看grep ‘组名’ /etc/group
  • 显示用户logname
  • 修改用户的用户组chgrp -v 组名 用户名
2.当前用户的详细信息 id
3.提高普通用户的权限sudo

通过root权限操作文件sudo -u root ls

4.实时显示进程的信息 top

实时显示进程的信息(显示完整命令) top -c
实时显示指定进程的信息 top -p PID
按q退出
原文地址

5.查看进程信息ps

所有进程信息 ps -a
所有进程详细信息ps -ef
指定用户的的进程信息 ps -u 用户名

6.杀死进程kill

杀死指定进程kill PID
强制杀死kill -9 PID
杀死指定用户下的进程kill -9 $(ps -ef | grep 用户名)
方式二 killall -u 用户名

7.关机重启
重启命令:reboot
关机命令:立即关机halt

方式二 sudo shutdown
取消关机 shutdown -c
立即关机 shutdown -h now
一分钟后关机 shutdown +1 “警告信息”
一分钟后重启 shutdown -r +1 “警告信息”
帝乙岩

8.显示当前登陆系统的用户who

显示标题 who -H
原文地址

9.校正服务器时间,时区 timedatectl

ntp时间服务器
查看时区timedatectl list-timezones
回车下一页,q退出
设置时区 timedatectl set-timezone “Asia/Shanghai”
禁用时间同步set-ntp false
开启时间同步set-ntp true
设置时间 timedatectl set-time “2024-01-01 00:00:00”

10.清屏命令clear

二.目录管理

1.ls列出目录内容(list)
	格式:ls [参数] [文件或目录]常用ls -l		--> 此命令非常常用,提供简化版命令 llll /home/		--> 显示指定目录下的内容

ls -al 显示所有文件与文件夹
-a或–all 下所有文件和目录。注意隐藏文件、特殊目录、. 和 …
-l 使用详细格式列表。
-t 用文件和目录的更改时间排序。
-r 反向排序
–help 在线帮助。

2.cd切换目录(change directory)

相对路径 cd 目录
绝对路径 cd /目录
cd ~ ,当前用户目录
cd / ,根目录
cd - ,上一次访问的目录
cd … ,上一级目录
cd ,缺省当前用户目录

3.pwd显示当前目录(print working directory)
4.mkdir 创建目录(make directoriy)
		-p 父目录不存在情况下先生成父目录 (parents)-v 显示命令执行过程中的详细信息
5.rm删除文件或目录。(remove)
	语法:rm [-dfirv][--help][--version][文件或目录...]-f或--force  强制删除文件或目录。 -r或-R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。例rm ./ip2.logrm -f ./ip2.log			#强制删除文件rm -f ./xxxrm -rf ./xxx			#强制删除目录rm -rf ./* 删除当前目录下所有东西
6.cp 复制文件或目录。(copy)
	语法:cp [参数]   [源文件或目录]  [目标文件或目录]-r或--recursive  递归处理,将指定目录下的文件与子目录一并处理。例cp ./abc ./xxx				#无法复制目录,更改文件名字cp -r ./abc ./xxx			#复制目录必须使用 -r参数,cp ip.log ip2.logcp -b ip.log ip2.log
7.mv移动或更名现有的文件或目录。(move)
	语法:mv  [源文件或目录][目标文件或目录]-f或--force  若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录。例mv ./abc/123/ ./xxx/111		重命名	#移动一个空目录 或 一个文件mv -f ip.log ./abc/ip.logmv ip.log ./abc/ip.logmv abc*  xxx.log #移动一个空目录 或 一个文件,*前为批量移动的共有文件名
8.文件权限:chmod 变更文件或目录的权限。(change mode)
	语法:chmod [参数] [<权限范围><符号><权限代号>]-R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。权限范围的表示法如下: u:User,即文件或目录的拥有者。 g:Group,即文件或目录的所属群组。 o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。 a:All,即全部的用户,包含拥有者,所属群组以及其他用户。符号:+ 添加权限-取消权限有关权限代号的部分,列表于下: r:读取权限,数字代号为"4"。 w:写入权限,数字代号为"2"。 x:执行或切换权限,数字代号为"1"。 -:不具任何权限,数字代号为"0"。 例mkdir xxxll | grep xxxchmod u-rwx xxx		#取消xxx目录,用户“读写执行”权限chmod g-rwx xxx 	#取消xxx目录,组“读写执行”权限chmod u+rwx xxx		#增加xxx目录,用户“读写执行”权限

常用
chmod 777 xxx #给xxx目录添加所有权限
chmod -R 777 添加权限到指定目录及子文件
原文地址

	linux 权限格式:<类型><用户><组><其他用户>
9.chown 分配文件所属用户及所属组

chown 属于用户名 文件名
chown 属于用户名:属于组名 文件名
chown -R 属于用户名:属于组名 文件名 修改所有文件

三.文件管理

1.touch 创建文件

touch 文件名
touch 文件名{1…10}.txt 创建多个文件
stat 文件名 查看文件的详细信息

2.vi 或 vim 命令
	2.1基本操作输入“vim 文件名”进入“一般模式”按下“i”从一般模式,进入“插入模式”按下“esc”从“插入模式”退出到“一般模式”在“一般模式”下,输入“:wq”,保存并退出编辑。在”一般模式下”,输入””q!” 不保存并退出编辑2.2vi基本概念基本上vi可以分为三种模式 1) 命令行模式command mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。 2) 插入模式(Insert mode) 只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。 2.3常用命令插入(从一般模式进入到插入模式)i	在光标前插入shift + i		在光标当前行开始插入a	在光标后插入shift + a	在光标当前行末尾插入o	在光标当前行的下一行插入新行shift + o	在光标当前行的上一行插入新行复制或粘贴(在插入模式下)yy	单行复制将光标移动到将要复制的行处nyy	多行复制将光标移动到将要复制的首行处p	粘贴将光标移动到将要粘贴的行处定位	gg	到文本的第一行shift + g	到文本的最后一行

g 到文本的最后一行
vim 文件名 +行号 打开文件到到指定
删除
dd 删除光标所在行
ndd 删除n行
ctrl+L清屏
ctrl+u删除字符
退出后自动创建文件
shift+zz 保存退出
:q 退出vi(没有做任何修改时)
:q! 强制退出不保存
:w 保存不退出
:wq 保存后退出
其它
查看行:set number
原文地址
2.4异常处理
问题:当文件编辑状态卡死,退出后导致报错
ll -al 显示隐藏文件
rm -rf 文件名.swp
生成.swp文件,按a
rm -rf 文件名.swp 删除swp文件
帝乙岩

3.cat显示文本文件内容(小文件)(catenate)
	cat 文件名

cat -n 文件名 显示行号

4.less分页显示文件内容,操作更详细。
	语法:less [参数] 文件-m  显示类似more命令的百分比-N  显示每行的行号操作空格键:前进一页 或 page downb:后退一页 或 page upd:前进半页u:后退半页回车键:前进一行 或 方向键向下y:后退一行	或 方向键向上/字符串:向下搜索?字符串:向上搜索v:进入vim编辑器左右方向键:相当于水平滚动条q:退出less -mN /root/install.log
5.tail用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
	格式:tail[必要参数][选择参数][文件]

-数字 文件名 显示最后几行
-n +2 显示2行到末尾
-f 循环读取
-c 数字 文件名 显示最后多少个字符
ping 127.0.0.1 > ip.log &
tail -f ip.log
& 表示后台运行,否则占用终端
ctrl + c 退出
tail -50f catalina.out 动态查看日志末尾的50行
原文地址

6.head 查看文件前面内容
7.grep过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。(Global Regular Expression Print)
	格式:grep [option] pattern [file]

grep 关键字 文件名 把包含关键字的行展示出来
grep -n 关键字 文件名 把包含关键字的行展示出来并加行号
grep -i 关键字 文件名 把包含关键字的行展示出来,搜索忽略大小写
grep -v 关键字 文件名 把不包含关键字的行展示出来
例:
grep 参数 过滤条件 文件
grep -i control /root/install.log
#查看install.log文件中含有“control”字符的内容

	其他命令 |  grep  参数  过滤条件cat /root/install.log | grep -i control		#在cat命令输出结果基础上,进行过滤

ps -ef | grep sshd 查找进程sshd
ps -ef | grep sshd | grep -v “grep” 查找指定的进程信息,不包含grep进程
ps -ef | grep -c sshd 查找进程个数
帝乙岩

8.echo 展示文本

echo 字符串 展示文本
echo 字符串 > 文件名 将字符串写到文件中(覆盖)
echo 字符串 >> 文件名 将字符串写到文件中(不覆盖)
echo 文件内容 > 文件路径(快速生成简单内容文件)
cat 不存在的目录 & >> error.log 将命令的失败结果追加error.log文件的后面

9.awk 是一种处理文本文件的语言,是一个强大的文本分析工具

awk [参数选项] ‘语法’文件
cat a.txt | awk ‘/a|b/’ 查找文件a.txt中含有a和b的内容
cat a.txt | awk -F ‘ ’ ‘{print $1,$2,$3}’ 查找文件a.txt按照空格进行切割,并按列打印

cat a.txt | awk -F ‘ ’ ‘{OFS=”==”}{print $1,$2,$3}’查找文件a.txt按照空格进行切割,多字符串间按照==进行分割,并按列打印

toupper() 字符串转成大写
tolower() 字符串转成小写
length() 返回字符长度
cat a.txt | awk -F ‘ ’ ‘{print toupper($1)}’ 查找文件a.txt按照空格进行切割,转为大写并按列打印
cat a.txt | awk -F ‘ ’ ‘BEGIN{}{totel=totel+$4}END{print totel}’第四列的和
cat a.txt | awk -F ‘ ’ ‘BEGIN{}{totel=totel+$4}END{print totel.NR}’第四列的和及个数
cat a.txt | awk -F ‘ ’ ‘BEGIN{}{totel=totel+$4}END{print totel.NR.(totel/NR)}’第四列的和及个数及平均分
原文地址

10.软连接(快捷方式)

ln -s 目标文件路径 快捷方式路径
例:
当前目录下创建软连接
ln -s aaa/bbb/a.txt a.txt

11.find查找文件或目录。
	语法:find [目录...] [参数] -name 文件或目录名find /root/ -name 'test*'

find . -name “.txt” 当前目录下查找.txt结尾的文件
-ctime -n或+n 按照时间来查找文件,-n指n天以内,+n指n天以前
find . -ctime -1 查找一天内的操作过的文件
find / -name “
.txt” 在根目录下查找.txt结尾的文

四:备份与压缩

1.gzip 压缩文件

gzip 文件名
gzip * 压缩当前目录下所有文件
gzip -dv * 解压所有文件并列出详细信息

2.gunzip 解压文件

gunzip * 解压所有

3.tar 打包压缩和解压(常用)
			-c 建立一个压缩文件的参数指令(create)--压缩-x 解开一个压缩文件的参数指令(extract)--解压-z 是否需要用 gzip 压缩-v 压缩的过程中显示文件(verbose)-f 使用档名,在 f 之后要立即接档名(file)常用解压参数组合:zxvf常用压缩参数组合:zcvf压缩tar -zcvf a.tar ./bbb/解压rm -rf ./ccc  			#将“ccc”移除,再解压ll | grep -i ccctar -zxvf ./ccc.tar  -C解压到指定目录

查看
tar -ztvf aaa.gz
rz 上传文件
unzip 解压zip压缩包 -d 解压到指定目录

4.zip 压缩文件

zip 必要参数 选择参数 文件
zip -q -r aaa.zip aaa 压缩文件aaa到aaa.zip

5.unzip 解压

unzip 必要参数 选择参数 文件
-l 显示压缩文件
-d 解压文件
unzip -l aaa.zip 查看压缩文件内容
unzip -d bbb aaa.zip 解压aaa.zip到bbb文件中
原文地址

6.bzip2 压缩文件更小,压缩时间长

bzip2 参数选项 文件
默认删除压缩原始文件
bzip2 a.txt 压缩文件

7.bunzip2 解压

bunzip2 参数选项 文件
bunzip2 -v a.txt.bz2 解压并显示详细信息
帝乙岩

五.网络与磁盘管理

1.ifconfig 查询网卡信息(常用)

ifconfig ens37 down 关闭ens37网卡
ifconfig ens37 up 启动ens37网卡
ifconfig ens37 192.168.31.199 修改ip地址
ifconfig ens37 192.168.31.199 netmask 255.255.255.0 修改ip和子网掩码

2.ping 判断网络通畅(常用)

ping www.baidu.com
ctrl + c 退出
ping - c www.baidu.com 指定返回次数

3.netstat 显示网络状态

netstat -a 显示所有详细链接情况
netstat -i 显示网卡列表

4.lsblk 查看磁盘使用情况

lsblk -f 显示系统信息

5.df 文件系统层角度展示磁盘使用情况

df 文件名 查看文件使用情况
df --total 显示所有信息
df -h 将结果变成KB,MB,GB,形式展示(常用)
原文地址

6.mount 挂载linux系统外的设备(例如u盘)

mount 参数选项 目录
注意:
目录事先存在,可以用mkdir命令新建目录;
挂载点目录不可被其他进程使用到;
挂载点下原有文件将被隐藏;
例:
mkdir aaa
mount -t auto /dev/cdrom aaa 挂载到aaa文件
umount aaa 卸载

7.yum 下载,安装软件,解决软件依赖

注意: 权限和网络畅通
yum -y install tree 安装tree并默认都同意
yum remove tree 卸载tree
yum list tom* 查找以tom开头的软件
更改yum源
yum -y install wget 下载下载工具
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.back 备份文件
wget -0 CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 阿里云源
cat CentOS-Base.repo 查看修改结果
yum clean all 清理之前的缓存,并重新加载yum
yum makecache 建立一个缓存文件
yum seatch tomcat 查看阿里云是否可用
帝乙岩

8.rpm 只能安装已经下载到本地机器上的rpm包

其它命令

1.rmdir 删除空的文件夹

rmdir -p aaa/bbb 删除多级文件夹

2.管道 |
	“命令1”的输出内容,将作为“命令2”的输入内容。一般与grep命令一起使用。格式:命令1 | 命令2

问题记录:

在新建用户的时候切换到新建用户的终端,只是显示$符号。
使用命令绑定bash即可。
usermod -s /bin/bash aaa

相关文章:

  • 嵌入式-stm32-基于HAL库的感应开关盖垃圾桶项目(开源)
  • 《动手学深度学习》学习笔记 第8章 循环神经网络
  • 基于多反应堆的高并发服务器【C/C++/Reactor】(中)HttpRequest 提取请求行、解析请求行和优化 以及解析请求头并存储
  • 响应式编程Reactor API大全(中)
  • 数据结构之基本数据类型(Python)
  • Vue的v-for指令、事件处理、表单控制
  • 前端页面优化做的工作
  • 如何确定网络的深度和每层的节点(神经元)数目?
  • Unity3d 实现直播功能(无需sdk接入)
  • GPT实战系列-简单聊聊LangChain
  • 【适用于Jetson Orin Nano的录屏软件】
  • 构建基于RHEL9系列(CentOS9,AlmaLinux9,RockyLinux9等)的MySQL8.0.32的RPM包
  • vue3+vite+ts+pinia新建项目(略详细版)
  • 使用MistNet在COCO128数据集上协作训练Yolo-v5
  • JS加密/解密之js加密小工具
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Docker 笔记(2):Dockerfile
  • ECMAScript入门(七)--Module语法
  • js
  • Material Design
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • overflow: hidden IE7无效
  • Quartz初级教程
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • ViewService——一种保证客户端与服务端同步的方法
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 大主子表关联的性能优化方法
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 汉诺塔算法
  • 聚类分析——Kmeans
  • 那些年我们用过的显示性能指标
  • 深度学习入门:10门免费线上课程推荐
  • HanLP分词命名实体提取详解
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • ​2020 年大前端技术趋势解读
  • ​人工智能书单(数学基础篇)
  • #、%和$符号在OGNL表达式中经常出现
  • #微信小程序(布局、渲染层基础知识)
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (30)数组元素和与数字和的绝对差
  • (C++17) optional的使用
  • (Python) SOAP Web Service (HTTP POST)
  • (二)正点原子I.MX6ULL u-boot移植
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (规划)24届春招和25届暑假实习路线准备规划
  • (剑指Offer)面试题34:丑数
  • (一) springboot详细介绍
  • .bat批处理(五):遍历指定目录下资源文件并更新
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构
  • [ C++ ] STL_list 使用及其模拟实现
  • [20150904]exp slow.txt
  • [Android]RecyclerView添加HeaderView出现宽度问题