Linux常用操作命令

1、find 查找命令
2、rpm  RPM软件包管理命令
3、sudo  全称是super user do,使普通用户执行管理员的权限
4、chmod  权限赋值命令
5、grep  文本搜索工具
6、ps  进程查看
7、top 任务管理器
8、pgrep  查找进程ID
9、kill  结束进程
10、netstat  网络监控命令
11、tar  压缩解压缩命令
12、unzip  解压缩.zip命令
13、cd命令
14、ls命令
15、编辑文本
16、防火墙
17、ifconfig/netstats命令不存在
18、查看服务状态
19、配置环境变量
20、make命令
21、du查看文件大小
22、查看系统状态
23、查看进程文件路径
24、service命令
25、ln软连接
26、查看端口号协议
27、查看文件属性
28、修改tcp连接超时设置

99、其他命令列表

http://ftp.gnu.org/gnu
GNU项目FTP服务站点,提供源码、tar.gz格式下载。

https://pkgs.org/
项目打包后的文件搜索、下载,并可以方便查看依赖包,提供rmp格式下载。

 

1、find 查找命令
find /root -iname "*text*"            #查找/root路径下包含text的文件,不区分大小写
find /root -iname "*text*" -type d    #只查找目录
find /root -size 2M/+2M/-2M           #查找等于/大于/小于2M的文件
find /root -mtime/-mmin +5 -print     #查找root下5天/分钟内没有修改过的文件
find /root -mtime/-mmin -5 -print     #查找root下5天/分钟内修改过的文件
--命令参数
-name filename:查找名为filename的文件,区分大小写
-type<文件类型>:文件类型过滤,f: 普通文件,l: 符号连接,d: 目录
-mtime:        显示文件上一次修改的时间(天),支持小数值
-mmin:         显示文件上一次修改的时间(分钟)

--查出文件后执行某些命令
find path -option [ -print ] [ -exec -ok command ] {} /;
--命令参数
path:                #查找路径,忽略表示当前路径
-print                #将查找到的文件输出到标准输出

-exec command {} /;   #将查到的文件执行command操作,{} 和 /;之间有空格
{}                    #表示查找到的文件
-ok                   #在操作前询问用户

--示例查找大于100M的名称为nohup.out的文件
find /usr/local -type f -size +102400k -name "nohup.out" -exec du -h {} \;

--查找文件时排除某些目录/文件
find /root -path '/usr/dir1' -a -prune -o -print
find /root -name "dir1" -a -prune -o -print
find /root \( -path '/usr/dir1' -o -path '/usr/dir2' \) -a -prune -o -print
--命令参数
-path:        表示路径
\:            表示引用,后面的字符交由find命令解释
-a <表达式1>:  条件语句,前面值为真则执行表达式1
-o <表达式1>:  条件语句,前面值为假则执行表达式1
-a <表达式1> -o <表达式2>:三目运算符,前面值为真则执行表达式1,否则执行表达式2

 

2、rpm  RPM软件包管理命令
rpm -ivh your-package     #直接安装
rpm -ql name              #查询,列出安装位置
rpm -e fullname           #卸载
rpm –qa                   #列出所有安装过的包
rpm -q name               #获得某个软件的文件全名
rpm -qf '程序名'           #根据程序名返回软件的全名
rpm -qif '程序名'          #根据程序名返回软件的有关信息
rpm -qlf '程序名'          #根据程序名返回软件的文件列表
--命令参数
用法: rpm [选项...]
-a:查询所有软件;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<软件>或--erase<软件>:删除指定的软件;
-f<文件>+:查询拥有指定文件的软件;
-h:软件安装时列出标记;
-i:显示软件的相关信息;
-i<软件>或--install<软件>:安装指定的软件档;
-l:显示软件的文件列表;
-p<软件档>+:查询指定的RPM软件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示软件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<软件>或--upgrade<软件>:升级指定的软件;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。

RPM 的其他附加命令
–force 强制操作 如强制安装删除等;
–requires 显示该包的依赖关系;
–nodeps 忽略依赖关系并继续操作


3、sudo  全称是super user do意思是指我们可以用这命令,使普通用户执行管理员的权限
可以使用sudo或su
sudo           #切换到root用户
sudo user      #切换到user用户
sudo -         #切换到root用户,把环境变量也一起带过去
sudo -h        #查看命令帮助

 

4、chmod  权限赋值命令,不能执行命令前面加 sudo
chmod -R ABC ×××    #A:所有者权限;B:组用户权限;C:其他用户权限;xxx:目标文件
A、B、C必须是数字,分别代表所有者、组用户、其他用户对文件/夹的读、写、执行权限
权限字母  权限含义  权限数值
r        读权限      4
w        写权限      2
x        执行权      1

读写执行权 7 = 4 + 2 + 1
读写权    6 = 4 + 2
读执行权  5 = 4 + 1
chmod -R 764 ×××    #对目标文件/夹,所有者有全部权限,组用户有读写权,其他用户只有读权限


5、grep  文本搜索工具,支持正则表达式,支持其他命令结果搜索如"rpm -qa | grep docker"
grep 搜索字符串 [filename]
grep 正则表达式 [filename]
--命令参数
-i:不区分大小写(用于单字符)
-n:显示匹配的行号
-v:显示非匹配的行


6、ps  进程查看
ps aux             #以简单的列表形式显示出进程信息
ps –elf            #以长格式显示系统的进程信息,并包含更丰富的内容
ps aux pid         #通过进程id查看进程信息
--命令参数
a:显示当前终端下的所有进程信息,包括其他用户的进程
u:以用户为主的进程状态
x:通常与 a 这个参数一起使用,显示当前用户在所有终端下的进程信息
-e:显示系统内所有的进程信息
-l:使用长格式显示进程信息
-f:使用完整的格式显示进程信息

--查看cpu、内存占用
ps -e -o 'pid,pcpu,rsz,comm,args' --sort -rsz
-e 显示所有进程
-o 定制显示信息
pid 进程id
comm 进程名
args 启动命令
pcpu 占用CPU百分比
rsz 占用物理内存大小
vsz 占用虚拟内存大小
stime 进程启动时间
user 启动用户
--sort 排序

 

7、top 任务管理器(直接敲入top回车)
top命令将会在当前终端以全屏交互式的界面显示进程排名,及时跟踪CPU、内存等系统资源占用情况,
默认情况下每三秒刷新一次,其作用类似于windows系统中的任务管理器。空格手动刷新。


8、pgrep  查找进程ID
pgrep -l processname        #查找显示进程processname的ID号


9、kill  结束进程
kill -9 XXX                 #强制结束进程

 

10、netstat  网络监控命令
netstat –antp               #列出所有TCP端口及其程序名
netstat –antpl              #列出所有TCP监听端口其程序名
netstat -antp | grep ssh    #列出程序名含有ssh的所有TCP端口
netstat -antp | grep 22     #列出PID包含22的TCP监听端口
netstat –anp                #列出所有端口及其程序名,包括socket内容
netstat –anpl               #列出所有TCP监听端口其程序名,包括socket内容
--命令参数
-a或--all:显示所有连线中的Socket;
-c或--continuous:持续列出网络状态; 
-e或--extend:显示网络其他相关信息;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table; 
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;


11、tar  压缩解压缩命令
tar -xvf FileName.tar                #tar包解压到本地文件夹
tar -cvf FileName.tar DirName        #DirName文件夹压缩为tar文件
tar -zxvf FileName.tar.gz            #.tar.gz、.tgz包解压到本地文件夹
tar -zcvf FileName.tar.gz DirName    #DirName文件夹压缩为.tar.gz、.tgz文件
--命令参数
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。


12、unzip  解压缩.zip命令
unzip FileName.zip       #解压缩zip到当前目录
unzip -v FileName.zip    #解压缩zip到当前目录,显示解压详细信息

13、cd命令
cd dir          #切换到dir目录
cd ..           #返回上一级
cd ~            #返回根目录


14、ls命令
ls -a dir       #列出dir下所有文件和目录,不加dir显示当前路径下的
ls -A dir       #列出dir下所有文件和目录,不列出 “.” (当前目录) 及 “…” (父目录)
ls -R dir       #递归列出所有子目录
ls *.so         #查找以.so结尾的文件

默认色:代表普通文件。
绿色:代表可执行文件。
红色:代表tar包文件。
蓝色:代表目录文件。
水红:代表图象文件。
青色:代表链接文件。
黄色:代表设备文件。

 

15、编辑文本
vi filenae      #编辑文件
vim filename    #编辑文件
ENTER + INSERT  #进入编辑状态
ENTER + i       #进入编辑状态
ESC             #退出编辑状态
:q!             #不保存文件,强制退出
:w              #保存文件,不退出
:wq             #保存文件并退出
:wq!            #保存文件并强制退出


16、防火墙
firewall-cmd --zone=public --add-port=端口号/tcp –permanent        #开放端口
firewall-cmd --zone=public --remove-port=端口号/tcp --permanent    #关闭端口
firewall-cmd –reload                                              #配置立即生效

firewall-cmd --zone=public --list-ports      #查看所有开放端口
systemctl stop firewalld.service             #关闭防火墙
systemctl start firewalld.service            #启动防火墙
firewall-cmd –state                          #查看防火墙状态
systemctl disable firewalld.service          #禁止防火墙开机启动
systemctl enable firewalld.service           #设置防火墙开机启动


17、ifconfig/netstats命令不存在
--安装Net-tools(https://pkgs.org/download/net-tools)
--(1)上传net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
--(2)执行安装命令
rpm -ivh /usr/local/gisinfo/net-tools-2.0-0.25.20131004git.el7.x86_64.rpm


18、服务操作
systemctl list-unit-files #查看自启动服务列表
systemctl start service-name #启动服务
systemctl restart service-name #重启服务
systemctl stop service-name #停止服务
systemctl status service-name #查看服务状态
systemctl enable service-name #设置服务开机启动
systemctl disable service-name #设置服务开机不启动
systemctl is-enabled service-name #查询服务是否开机自启动

19、配置环境变量
--编辑/etc/profile文件,在文件最后添加环境变量PATH:
#mongodb
export PATH=$PATH:$/usr/local/mongodb4.0/bin
--使环境变量生效
source /etc/profile


20、make命令
--首先cd进入源码跟路径
configure            #生成makefile文件。
make                 #根据Makefile文件编译源代码、连接、生成目标文件、可执行文件。
make clean           #清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
make install         #将编译成功的可执行文件安装到系统目录中,一般为/usr/local/bin目录。
make uninstall       #卸载安装的软件。
make dist            #distribution package,发布软件包为PACKAGE-VERSION.tar.gz,
                     #configure.in中定义的AM_INIT_AUTOMAKE(PACKAGE, VERSION)。
make distcheck       #发布软件包,并进行检查。
make distclean       #类似make clean,但同时也将configure生成的文件全部删除掉,包括Makefile文件。
make install PREFIX=/usr/local/redis    #安装到指定路径

 

21、du查看文件大小
--du [选项][文件]
du test.tar.gz       #显示文件大小,可以空格添加多个
du -h test           #显示路径下文件夹大小
du -ah test          #文件和目录都显示
du -s test           #显示test文件夹大小
--命令参数
-a   #显示目录中文件的大小
-h   #以K、M、G为单位显示大小
-s   #显示总计

 

22、查看系统状态
free -h   #查看内存使用情况
lscpu     #查看cpu信息
pwdx pid  #查看进程号为pid的进程执行文件路径

 

23、查看进程文件路径
ll /proc/[pid]             #通过ps找到进程pid,通过pid查看路径
ls -l /proc/[pid]|grep cwd #通过ps找到进程pid,通过pid查看路径

ls -l /proc/[pid]          #通过ps找到进程pid,通过pid查看路径

 

24、service命令
service name status #查看服务name状态
service name stop   #停止服务name
service name start  #启动服务name

 

25、ln软连接
ln -s source target #添加source到target的软连接
unlink linkName     #删除软连接,或者可以用rm直接删除文件

 

 

26、查看端口号协议
getent services 22 #查看端口号协议

 


27、查看文件属性
stat a.txt #列出文件路径、大小、Inode、访问/修改时间
--查询创建时间,要求文件系统版为ext4(centos6使用)
ls -i a.txt #获取文件的Inode、路径
df -Th #查看文件系统类型、文件存储的磁盘路径
debugfs -R 'stat <inode>' dev-path #获取创建时间

 


28、修改tcp连接超时设置
--查看超时设置
sysctl -a | grep net.ipv4.tcp_keepalive
--临时设置超时时间,重启失效
sysctl -w net.ipv4.tcp_keepalive_time=60 net.ipv4.tcp_keepalive_probes=3 net.ipv4.tcp_keepalive_intvl=10
--永久设置超时时间,打开文件/etc/sysctl.conf并添加以下内容
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl = 10
--然后保存退出,执行以下语句使之生效
sysctl -p
--命令参数
-a, --all #显示所有变量
-n, --values #仅打印变量的值
-w, --write #启用将值写入变量,临时修改,重启失效
-p, --load[=] #从文件中读取值,默认从/etc/sysctl.conf中读取

 

 

 

 

99、其他命令列表
reboot               #重启
ip addr              #查看ip、mac(link/ether后面)
vi或vim              #编辑文本文件,insert键开始编辑,esc然后:qw! 强制保存并退出
touch                #创建文件
jps –l               #查看java程序进程pid和包名
cat /proc/version    #查看系统版本
rpm -q centos-release #查看操作系统版本
uname -a             #查看系统内核版本
tail -f filename     #查看文件尾部内容,并滚动显示新增内容
pwd                  #显示当前目录路径
pwdx pid             #查看进程号为pid的进程执行文件路径
userdel -rf username #完全删除用户,包括用户信息关联文件

 

posted @ 2021-12-24 11:49  publiter  阅读(186)  评论(0编辑  收藏  举报