前言
这里记录我使用过的Linux命令,岁月不饶人,记录一下,以免遗忘。
正文
mpstat/lscpu 查看CPU
pwd 命令用于显示工作目录
cd 命令切换目录 / 根目录 ~ 家目录 ./ 当前目录 ../ 上一层目录
ls -all 命令显示所有文件和文件夹信息
ls -l 命令查看当前目录下不隐藏文件信息(ll)
-a 显示所有 包括隐藏文件
ls -lt 时间最近的在前面
ls -ltr 时间从前到后
stat 文件名,命令用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。
cal 命令显示日历
date 命令显示系统时间
date -s 命令修改系统时间,格式:date -s "2020-03-28 12:00:22"
clear 命令清屏 快捷键ctrl+l
reset 命令用于终端屏幕清空重置
shutdown -r now 命令立即重启
init 6 命令重启
reboot 命令重启
shutdown -h now 命令立即关机
shutdown -P now 命令立即关机
init 0 命令关机
poweroff 命令关机
half 命令关机
init 3 命令切换字符界面
init 5 命令切换图形视图
ctrl c 命令停止执行当前命令
rm 命令删除文件命令
rm -r递归删除所有目录 -f 直接删,rm -rf / 递归删除根目录下所有文件无需确认。
w , users ,who ,whoami ,id -un 查看当前用户
last 查看系统的历史信息
su 命令切换用户
vi/vim 编辑 set nu 显示行号 /tui 找出tui关键字 gg(:1) 首行 G(:$) 尾行
cat 显示查看
more
less
tail
watch -n 5 who 5秒执行一次
watch tail log.log
/etc/locale.conf 语言文件(en_US | zh_CN)
i 编辑模式(insert)、esc 普通模式、 u撤销(CTRL-R) x删除、shift : 命令行模式 w 保存 q 退出q! 强制 wq 保存退出(x)
man 命令解释命令
nmtui 命令设置主机名、配置网络
systemctl restart systemd-hostnamed重启hostnamed服务
使用NetworkManager的nmtui接口修改了静态主机名后(/etc/hostname文件),不会通知hostnamectl。要想强制让hostnamectl知道静态主机名已经被修改,需要重启hostnamed服务
hostnamectl status 命令查看主机名
hostnamectl set-hostname qqeg.cn 命令设置新主机名为qqeg.cn
nmcli 命命令设置主机名、配置网络 纯命令式模式
nmcli general hostname 命令查看主机名
nmcli general hostname RHEL 命令设置新主机名为RHEL
systemctl restart systemd-hostnamed 重启hostnamed服务
ifconfig 命令显示网络接口配置信息(如无可用:ip add)
rmdir 命令删除目录
mkdir 命令创建目录 -p 创建子目录
cat /etc/redhat-release 输出centos系统的版本
uname -a 命令可以查看内核版本等信息。
hostname 主机名(临时用)
vim /etc/hosts 添加hosts记录
/etc/resolv.conf 设置dns
systemctl status firewalld.service #检测是否开启了firewall
systemctl stop firewalld.service #关闭firewall
systemctl disable firewalld.service #禁止firewall开机自启
systemctlis-enabled firewalld.service firewall开机自启
firewall-cmd --reload #重启firewall
firewall-cmd --complete-reload #完全重启
开启防火墙伪装: firewall-cmd --add-masquerade --permanent
//开启后才能转发端口
firewall-cmd --permanent --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080
firewall-cmd --permanent --zone=public --add-port=9001/tcp
#开放端口 firewall-cmd --permanent --zone=public --add-port=9002/tcp
# 删除端口 firewall-cmd --zone=public --remove-port=9001/tcp --permanent
systemctl status firewalld.service #检测是否开启了firewall
systemctl stop firewalld.service #关闭firewall
sytsemctl disable firewalld.service #禁止firewall开机自启
systemctlis-enabled firewalld.service firewall开机自启
firewall-cmd --reload #重启firewall
firewall-cmd --complete-reload #完全重启
查看所有打开的端口: firewall-cmd--zone=public --list-ports
setenforce 0 关闭selinux,1是开,0是关。vi /etc/selinux/config ,设置 SELINUX=disabled
chown 修改文件或目录所有者,所有组命令
chmod 修改文件或目录权限命令
groupadd oinstall
useradd -g oinstall -d /home/oracle oracle
chown -R oracle:oinstall /u01/app/ /home/Oracle*
chmod -R 775 /u01/app/ /home/Oracle*
文件权限775 这三个数字代表拥有者,组用户,其他用户的权限。
读取权限 r = 4 写入权限 w = 2 执行权限 x = 1
数字权限755;
(第一个r是文件的所有者有可读权限;
第二个r是文件的所属组有可读权限;
第三个r是其他人有可读权限。
drwxr-xr-x是什么意思
第一位表示文件类型.d是目录文件,l是链接文件,-是普通文件,p是管道;
第2-4位表示这个文件的属主拥有的权限,r是读,w是写,x是执行;
第5-7位表示和这个文件属主所在同一个组的用户所具有的权限;
第8-10位表示其他用户所具有的权限。)
touch 命令创建文件
file 命令用于查看文件的类型,格式为file 文件名
ssh 命令远程连接
exit 命令退出
useradd 命令添加用户
userdel 命令删除用户
passwd 命令设置密码
win+空格 切换输入法
cp 命令用于复制文件或目录,格式为cp [选项] 源文件 目标文件
mv 命令用于剪切文件或将文件重命名,格式为mv [选项] 源文件 [目标路径|目标文件名]
剪切操作不同于复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。如果在同一个目录中对一个文件进行剪切操作,其实也就是对其进行重命名。
nohup ./app > /dev/null 2>&1 & 后台启动
fdisk -l 查看硬盘及分区信息
wc -l统计数量
本地文件上传远程目录下
scp 本地目录/文件 远程用户@远程IP:远程路径
注:需要输入远程服务器用户对应的密码;
远程文件下载到本地目录
scp 远程用户@远程IP:远程路径/文件 本地目录
scp -r kernel-4.4/ zhangsan@192.168.2.166:/mnt ,-r: 递归复制整个目录
tar -cvf etcbak.tar etc/ 打包一个tar
tar -zcf 打包一个tar.gz
tar -zxvf 解压一个tar.gz x解压 或者用 tar -xf -C 指定解压目录
tar -zcvf 压缩后的文件名 文件1 文件2
tar -zxvf 压缩的文件名
jar xf 解压
jar cfM0 文件名 打包一个.jar
find /opt -name "*cpp"| xargs rm -rf 查找并删除
last 历史用户
history 历史命令
history -c 清除历史命令 -a 追加 -d 加序号,指定清除
cp –r test/ newtest 将当前目录 test/ 下的所有文件复制到新目录 newtest 下
sh -x 2.sh -x 参数输出执行过程
echo "hello word" > temp.out,直接清空原来的内容
echo “hello” >> temp.out继续追加内容进去
echo $ORACLE_SID 显示实例名
free top du df 系统指标
crontab -l -e 定时任务
ps -ef|grep date 显示进程
kill -9 1998 杀进程
tail -100f 动态显示文件最后100行
find 查找范围 -name 名字(模糊查找)
find /etc -name host* 查找大于100M的文件
find /etc -size +100M
du -sh 文件名 -- -查看文件大小
df -h 查看剩余空间
ln -s符号链接,省略s则为硬链接。
cat 看小文件 more或者less 看大文件 file 看文件类型 tail 默认十行 tail -f 同步显示 Ctrl c 中断
grep -v ^# /etc --- -v是反向查,找查找非#开头的。
grep -v ^# /etc|grep -v ^$ -----去掉注释 去掉空行^$
tcpdump -i eth3 tcp port 5236 and host 172.16.24.13 -w dm.cap 抓包
iptables -L 列出所有规则
iptables -F 清除所有(很久不用iptables)
service iptables save(保存规则,重启不失效)
zip -q -r html.zip /home/html 递归打包不显示过程
解压文件夹:unzip 压缩文件名.zip “*/目录名/*.*” -d 目标文件夹名字
解压指定的文件:unzip 压缩文件名.zip “*/文件名.后缀” -d 目标文件夹名字
sed 's/要被取代的字串/新的字串/g'
sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl路径`
sed -i "s/str1/str2/g" `grep str1 -rl /home/test`
在test目录下,所有文件中找str1,并将其替换为str2,\可转译
awk 文本分析工具
curl -v baidu.com 输出内容
jar xf 文件名 解压jar包
jar cfM0 1.jar ./* 打包为1.jar
du -ach * #这个能看到当前目录下的所有文件占用磁盘大小和总大小
du -sh #查看当前目录总大小
du -sh * #查看所有子目录大小
lsof | grep delete #如果怀疑删掉的数据还在占用磁盘空间试试这个
kill -9 pid #结束掉进程就能释放磁盘空间了
凝思查看系统信息用
lsb_release -a 操作系统 release 信息
cat /etc/issue 看系统信息
uname -a getconf LONG_BIT 获取系统位数
/etc/profile 系统全局的环境变量,对所有用户有效
/etc/init.d/* ,系统启动用到的服务脚本
/etc/rc.local ,随机启动配置文件,类似win的启动菜单
~/.bashrc ,当前用户目录下的环境配置信息
source ~/.bashrc
/etc/init.d/networking restart 重启网卡服务
ethtool -p eth2 30 ,查看哪个网口灯闪烁
ifdown / ifup 开启或关闭某网卡
route add -net 192.168.128.0 netmask 255.255.255.0 dev eth0 gw ip192.168.128.1,使128网段IP通过这条路由访问目的IP(重启失效,可将其添加至/etc/rc.local)
nc -zv 测试TCP端口
nc -zuv 测试udp端口
nc -l 8080 临时监听TCP8080端口(服务端)
grep -r "ssw" /home 在home目录下递归查找含ssw字符串的文件
sort 排序 cut 选取分割 uniq 去重 seq 生成两个数之间的所有整数
ss -l 列出本地端口
hwclock --systohc #以系统时钟为准,同步硬件时钟
hwclock --hctosys #以硬件时钟为准,同步系统时钟
ll /proc/pid/exe 根据进程id查找程序位置
ll /proc/pid/cwd 根据进程id查找程序位置
locale 查看系统语言集
md5sum filename 查看文件md5值
sha1sum filename 查看文件sha1值
sha256sum filename 查看文件sha256值
lsof 列出打开的文件
shred 文件名 #把一个文件用随机的字符码篡改的一塌糊涂,安全删除文件
killall -9 java 杀死所有JAVA程序
fdisk -l 列出磁盘
mount 查看挂载情况
mount /dev/sdb /opt 挂载磁盘
umount /dev/sdb或者/opt 卸载挂载的磁盘
fuser -m -v file 查找正在使用此指定file的进程
fuser -m -k file 强制卸载正在使用此指定file的进程
Chkconfig --list #查看chkconfig所有的服务
Chkconfig --list sshd #指定查看显示sshd服务的情况
Chkconfig sshd on #开启sshd服务
Chkconfig sshd off #关闭sshd服务
Chkconfig --add name #增加一项新的服务
Chkconfig --del name #删除服务
Chkconfig [--level levels] name #设置某一服务在指定的运行级是被启动还是停止或者重置的
screen
yum install -y screen
可以直接输入screen 来打开一个带有默认名字的screen界面
screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
lsblk --- 查看系统的磁盘使用情况。
gzexe myscript.sh ---加密sh脚本
gzexe -d ---解密脚本
附录
Linux下不同的颜色代表了不同的文件类型
颜色 | 类型 | 举例 |
---|---|---|
蓝色 | 目录 | /etc |
黑色 | 文件 | /etc/passwd |
浅蓝色 | 链接 | /etc/grub2.cfg |
红色 | 压缩包 | boot.tar.gz |
绿色 | 可执行文件 | /etc/init.d/network |
黑底黄字 | 设备文件 | /dev/sda |
文章名称:《Linux常用命令》
文章链接: https://www.sgtms.com/linux/44.html
本站资源仅供个人学习交流,转载或者引用本文内容请注明来源及作者,不允许用于商业用途。
网友评论抢沙发