Linux命令简介
文章目录
记录 Linux 操作系统常用命令的备忘
通用命令格式:
命令名称 [命名参数] [命令对象]
基础命令
获取登录信息
w
显示已登录用户以及他们正在干什么
who
显示已登录用户,信息没有 w
来得全面
last
显示最近登录的用户列表
lastb
显示用户错误的登录列表,此指令可以发现系统的登录异常
查看命令的说明和位置
whatis
显示命令的简短说明
which
查找并显示给定命令的绝对路径,环境变量 PATH 中保存了查找命令时需要遍历的目录
whereis
显示指令的二进制程序、源代码文件和 man 手册页等相关文件的路径
清除屏幕上显示的内容
clear
查看帮助文档
man [manual]
命令手册页
manpages-zh
中文命令手册
info
更加详细的命令文档
查看系统和主机名
uname
显示系统信息
hostname
显示或设置系统的主机名
时间和日期
date
cal
重启和关机
reboot
shutdown
shutdown [OPTIONS…] [TIME][WALL…]
可选参数[TIME] 表示时间的字符串(通常是 now,+m ) [WALL…]用于发送给所有登录用户的警告信息
如果使用了[TIME]参数, 那么在关机流程开始前 5 分钟将会创建 /run/nologin 文件, 以禁止用户登录。
退出登录
exit
logout
查看历史命令 history
实用程序
文件和文件夹操作
创建/删除目录
mkdir
rmdir
创建/删除文件
touch
rm
切换和查看当前工作目录
ls
-
R 递归展开
-
a 显示隐藏文件
-
d 仅显示目录
-
t/r 排序 (正向,反向)
cd
查看文件内容
cat (正看)
tac (倒看)
head
tail
more
less
rev (反向)
od
拷贝/移动文件
cp
mv
文件重命名
rename
查找文件和查找内容
find
|
|
grep
创建链接和查看链接
ln
readlink
压缩/解压缩和归档/解归档
gzip
gunzip
unar
中文不会乱码
xz
tar
将标准输入转成命令行参数
xargs
其他相关工具
对内容排序 sort
拆分文件 split
判断文件类型 file
统计文件行数、单词数、字节数 wc
去掉相邻重复内容 uniq
替换指定内容为新内容 tr
剪切/黏贴内容 cut paste
编码转换 iconv
管道和重定向
管道 |
输出重定向和错误重定向
输出>
追加>>
错误输出 2>
输入重定向 <
多重定向 tee
别名
alias
unalias
文本处理
字符流编辑器 sed
用法: sed 脚本 文件
sed 's,A,B,' FILE 把 FILE 中的 A 用 B 替换
-
a 追加
-
i 插入
-
d 删除
-
s 替换
例子
1
[root ~]# sed '2,4d' fruit.txt
模式匹配和处理语言 awk
处理表格
例子
|
|
用户管理
创建和删除用户
useradd
userdel
创建和删除用户组
groupadd
groupdel
修改密码 passwd
批量修改用户密码 chpasswd
查看和修改密码有效期 chage
切换用户 su
以管理员身份执行命令 sudo
显示用户与用户组的信息 id
显示当前终端 tty
write
向指定登录用户终端上发送信息
|
|
进程管理
查看进程 ps
显示进程状态树 pstree
查找与指定条件匹配的进程 pgrep
通过进程号终止进程 kill
通过进程名终止进程 killall / pkill
将进程置于后台运行 &
查询后台进程 jobs
让进程在后台继续运行 bg
将后台进程置于前台 fg
用户登出后进程继续工作 nohup
跟踪进程系统调用情况 strace
查看当前运行级别 runlevel
实时监控进程占用资源状况 top
-
`-c` - 显示进程的整个路径。
-
`-d` - 指定两次刷屏之间的间隔时间(秒为单位)。
-
`-i` - 不显示闲置进程或僵尸进程。
-
`-p` - 显示指定进程的信息。
磁盘管理
访问权限
改变文件模式 chmod
改变文件所有者 chown
改变用户组 chgrp
磁盘管理
列出文件系统的磁盘使用状况 df
磁盘分区表操作 fdisk
磁盘分区工具 parted
格式化文件系统 mkfs
|
|
文件系统检查 fsck
转换或拷贝文件 dd
挂载/卸载 mount / umonut
创建/激活/关闭交换分区 mkswap / swapon / swapoff
模块管理
配置服务
启动服务 systemctl start [SERVER]
终止/重启服务 stop/restart
查看状态 status
设置/禁用服务开机自启 enable / disable
网络访问和管理
安全远程连接 ssh
通过网络获取资源 wget
发送和接收邮件 mail
网络配置工具(旧) ifconfig
网络配置工具(新) ip
网络可达性检查 ping
显示或管理路由表 route
查看网络服务和端口 netstat / ss
-
netstat -lntp 查看所有监听端口
-
netstat -antp 查看所有已建立的连接
网络监听抓包 tcpdump (需要管理员权限)
监视指定网络接口的数据包
tcpdump -i eth1
监视指定主机和端口的数据包
如果想要获取主机 210.27.48.1 接收或发出的 telnet 包,使用如下命令 tcpdump tcp port 23 host 210.27.48.1
对本机的 udp 123 端口进行监视 123 为 ntp 的服务端口 tcpdump udp port 123
安全文件拷贝 scp
文件同步工具 rsync
安全文件传输 sftp
查看公网 IP
-
curl cip.cc
-
curl icanhazip.com
-
curl ident.me
计划任务
在指定的时间执行命令
将任务排队,在指定的时间执行 at
指定 3 天以后下午 5 点要执行的任务。
[root ~]# at 5pm+3days at> rm -f /root/*.html at> <EOT> job 9 at Wed Jun 5 17:00:00 2019
查看待执行的任务队列 atq
从队列中删除待执行的任务 atrm
计划任务表 crontab
输入`crontab -e`命令会打开 /etc/crontab
|
|
系统诊断
系统启动异常诊断 dmesg
查看系统活动信息 sar
-
`-A` - 显示所有设备(CPU、内存、磁盘)的运行状况。
-
`-u` - 显示所有 CPU 的负载情况。
-
`-d` - 显示所有磁盘的使用情况。
-
`-r` - 显示内存的使用情况。
-
`-n` - 显示网络运行状态。
查看内存使用情况 free
虚拟内存统计 vmstat
CPU 信息统计 mpstat
查看进程使用内存状况 pmap
报告设备 CPU 和 I/O 统计信息 iostat
显示所有 PCI 设备 lspci
显示进程间通信设施的状态 ipcs
工具软件
合并 pdf
|
|
图片处理
压缩转换 convert
录制视频短片 peek
|
|
像素识别
|
|
wireshark
数据链路层:
筛选 mac 地址为 04:f9:38:ad:13:26 的数据包—-eth.src = 04:f9:38:ad:13:26
筛选源mac地址为04:f9:38:ad:13:26的数据包----eth.src =
04:f9:38:ad:13:26
网络层:
筛选 ip 地址为 192.168.1.1 的数据包—-ip.addr == 192.168.1.1
筛选 192.168.1.0 网段的数据—- ip contains "192.168.1"
筛选 192.168.1.1 和 192.168.1.2 之间的数据包—-ip.addr = 192.168.1.1 && ip.addr =
192.168.1.2
筛选从 192.168.1.1 到 192.168.1.2 的数据包—-ip.src = 192.168.1.1 && ip.dst =
192.168.1.2
传输层:
筛选 tcp 协议的数据包—-tcp
筛选除 tcp 协议以外的数据包—-!tcp
筛选端口为 80 的数据包—-tcp.port = 80
筛选12345端口和80端口之间的数据包----tcp.port =
12345 && tcp.port = 80
筛选从12345端口到80端口的数据包----tcp.srcport =
12345 && tcp.dstport == 80
应用层:
特别说明—-http 中 http.request 表示请求头中的第一行(如 GET index.jsp HTTP/1.1),http.response 表示响应头中的第一行(如 HTTP/1.1 200 OK),其他头部都用 http.header_name 形式。 筛选 url 中包含.php 的 http 数据包—-http.request.uri contains ".php" 筛选内容包含 username 的 http 数据包—-http contains "username"
feh
图片显示,设置背景,截图
设置背景 feh –bg-scale
Pandoc
文档转换
pandoc x.html -o x.md pandoc -f html -t markdown http://www.fsf.org -f 参数用于指定源文件格式 -t 参数用于指定输出文件格式 -o 参数用于指定输出文件
apt 软件包管理
-
update - 重新获取软件包列表
-
upgrade - 进行更新
-
install - 安装新的软件包
-
remove - 移除软件包
-
autoremove - 自动移除全部不使用的软件包
-
purge - 移除软件包和配置文件
-
source - 下载源码档案
-
build-dep - 为源码包配置编译依赖
-
dist-upgrade - 发行版升级
-
dselect-upgrade - 依照 dselect 的选择更新
-
clean - 清除下载的归档文件
-
autoclean - 清除旧的的已下载的归档文件
-
check - 检验是否有损坏的依赖
-
sudo add-apt-repository –remove ppa:whatever/ppa (移除源)
进程占用端口
(1)查看程序对应的进程号: ps -ef | grep 进程名字 (2)查看进程号所占用的端口号: netstat -nltp | grep 进程号 ubuntu :查看进程占用端口号:netstat -anp | grep pid
linux 下查看端口号所使用的进程号: (1)使用 lsof 命令:lsof -i:端口号
输入法
in file /.bashrc
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
fcitx+rime 稍微配置下,增加点词库,我认为比搜狗好用。 目前搜狗还有点问题,某些单词,要是输入过快,会直接字母上屏,还没有去找原因,rime 就没有这个问题。
根据自己的需要可以卸载 ibus
卸载 ibus。 sudo apt-get remove ibus 清除 ibus 配置。 sudo apt-get purge ibus 卸载顶部面板任务栏上的键盘指示。(根据个人需要)
sudo apt-get remove indicator-keyboard