用过的linux命令
安装centos官方软件库scl
以安装php7为例子,scl-utils-build为scl命令,修改PATH:/etc/environment
yum install centos-release-scl-rh
yum install scl-utils-build
yum search php
yum install rh-php71
查看已安装的软件
scl -l
执行命令
scl enable rh-php70 "php -v"
scl enable rh-php70 bash
php -v
find /home -iname "*.txt"
php –v -i -m -ini
php -f hello.php
http://justcoding.iteye.com/blog/1939123
yum list installed *php*
yum search php
rpm -qa | grep subversion
rpm -ql subversion-1.6.11-10.el6_5.x86_64
ps aux --sort -rss(VSZ (total amount of virtual memory used), and RSS (total amount of physical memory used))
yum install httpd -y
yum list installed
#服务相关
systemctl daemon-reload
systemctl start mariadb
systemctl enable mariadb 开机启动
systemctl disable mariadb
systemctl list-units --type=service
#启动服务 start也可以换成stop(关闭),restart(重启),status(显示状态),enable(设为开机启动),disable(设为开机禁用),is-enabled(查看是否开机启动)
systemctl start test.service
#查看已启动的服务列表
systemctl list-unit-files|grep enabled
#查看启动失败的服务列表
systemctl --failed
#查看启动日志
journalctl -f或者 journalctl -xe
mysql_secure_installation 设置mariadb
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
php7的更新地址
cat /etc/centos-release
GRANT all ON wp_4.* TO wp@'localhost' IDENTIFIED BY '888aaaAAA'
挂载盘
控制台中先挂载盘,然后依次看命令:
fdisk -l
fdisk /dev/vdb 或者
fdisk -S 56 /dev/vdb vdb--vdz,vda为系统盘,进行分区
“n”,“p”,“1”,两次回车,“wq”
fdisk -l
mkfs.ext3 /dev/vdb1 新分区上创建一个文件系统
cp /etc/fstab /etc/fstab.bak
echo /dev/vdb1 /mnt ext3 defaults 0 0 >> /etc/fstab 写入分区信息,/mnt为自定义目录
cat /etc/fstab
mount -a 挂载文件系统 或者
mount /dev/vdb1 /mnt
df -h
进程相关
ps -aux | grep redis查看redis进程
lsof -i:3306
1:查看到进程占用的端口号
netstat -anp | grep pid
2. 查看8000端口的使用情况
lsof -i:8000
3. netstat命令各个参数说明如下:
-t : 指明显示TCP端口
-u : 指明显示UDP端口
-l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
-n : 不进行DNS轮询,显示IP(可以加速操作)
4. 查看当前所有tcp端口·
netstat -ntlp
查看所有80端口使用情况
netstat -ntulp |grep 80
查看所有3306端口使用情况
netstat -an | grep 3306
查看一台服务器上面哪些服务及端口
netstat -lanp
查看一个服务有几个端口。比如要查看mysqld
ps -ef |grep mysqld
查看某一端口的连接数量,比如3306端口
netstat -pnt |grep :3306 |wc
查看某一端口的连接客户端IP 比如3306端口
netstat -anp |grep 3306
netstat -an 查看网络端口
nmap 端口扫描
netstat -nupl (UDP类型的端口)
netstat -ntpl (TCP类型的端口)
netstat -anp 显示系统端口使用情况
用户相关
useradd username 创建用户username
passwd user_pwd 给已创建的用户username设置密码
关于useradd的某些参数:
-u UID:指定 UID,这个 UID 必须是大于等于500,并没有其他用户占用的 UID
-g GID/GROUPNAME:指定默认组,可以是 GID 或者 GROUPNAME,同样也必须真实存在
-G GROUPS:指定额外组
-c COMMENT:指定用户的注释信息
-d PATH:指定用户的家目录
userdel username 删除用户username
rm -rf username 删除用户username所在目录
su username 切换下刚才添加的用户 exit就回到了root用户了
添加用户组
groupadd groupname 添加用户组
groupdel groupname 删除用户组
PS:关于组的增加和删除信息会在etc目录的group文件中找到 命令cat /etc/group 可以看到自己的分组和分组id
查找redis的安装包
rpm -qa|grep redis
查找安装包的安装路径,大小写敏感
rpm -ql redis-3.2.10-2.el7.x86_64
#为现有用户时设置禁止shell登录
usermod -s /sbin/nologin {username}
linux服务外连接:http://www.jinbuguo.com/systemd/systemd.service.html
linux命令外连接:https://www.runoob.com
大文件查看的less命令
#打开文件
less xx.log
#直接定位到第100行
less +100g xx.log
# 定位到最后一行
less +GG xx.log
# 定位到第100个字节的位置
less +100P xx.log
# 直接定位到50%的位置
less +100p xx.log
用less打开文件并进入文件后,按回车,打开底部命令输入行(即出现一个冒号的位置),然后可以使用 键盘上的 home 键跳到文件开始,end键跳到最后,PgUp向前翻页,PgDn向下翻页,还可以在冒号后面直接输入 /要搜索的关键字 进行 高亮显示,可以 用 n 向前查找或者 N 向后查找。常用快捷键:
# 向前移动一行
j
# 向后移动一行
k
#搜索“你好”,不区分大小写,使用一个模式进行搜索,并定位到下一个匹配的文本,/serchContent
/你好
#向下查找 ,向前查找下一个匹配的文本
n
#向上查找,向后查找前一个匹配的文本
N
#显示当前行信息,如行号、字节位置等(可能要计算,毕竟没有加载整个信息!)
=
#跳到开头 **
g
#跳到文件结尾
G
#往前翻一页(一屏幕)
b
#往后翻一页(一屏幕)
f
Linux 文件夹压缩命令总结
tar命令
解包:tar zxvf FileName.tar
tar -xzvf Python-3.9.10.tgz
打包:tar czvf FileName.tar DirName
gz命令
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...
bz2命令
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
bz命令
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
Z命令
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
zip命令
解压:unzip FileName.zip 或
#指定GBK GB18030编码也是可以的
unzip -O CP936 资料.zip
压缩:zip FileName.zip DirName
查看端口
lsof命令
lsof(list open files)命令可以列出当前系统中打开的所有文件,包括网络端口。可以使用lsof命令查看某个端口被哪个进程占用。
具体的命令为: sudo lsof -i :端口号 ,其中端口号为需要查询的端口号。
netstat命令
使用netstat命令:netstat命令可以显示网络连接、路由表和网络接口信息等。可以使用netstat命令查看某个端口被哪个进程占用.
具体的命令为: sudo netstat -tlnp | grep 端口号 ,其中端口号为需要查询的端口号。
如果是windows的话就是:
协议 本地地址 外部地址 状态 PID
netstat -aon|findstr "2080"
#映像名称 PID 会话名 会话# 内存使用
tasklist|findstr "2016"
#结束该进程
taskkill /f /t /im 程序名
ss命令
ss命令可以列出当前系统中打开的套接字(socket)信息,包括网络端口。可以使用ss命令查看某个端口被哪个进程占用.
具体的命令为: sudo ss -tlnp | grep 端口号 ,其中端口号为需要查询的端口号。
fuser命令
fuser命令可以查看某个文件或目录被哪个进程占用 。对于网络端口,也可以使用fuser命令进行查询,
具体的命令为: sudo fuser 端口号/tcp ,其中端口号为需要查询的端口号。
ps命令
ps命令可以列出当前系统中正在运行的进程信息。可以使用ps命令结合grep命令来查找某个进程,然后再查看该进程打开的网络端口。
具体的命令为: sudo ps -ef | grep 进程名 ,其中进程名为需要查询的进程名。
proc文件系统
使用/proc文件系统:在Linux系统中,每个进程都有一个对应的目录,存储了该进程的相关信息。可以使用/proc文件系统来查看某个端口被哪个进程占用。
具体的命令为: sudo ls -l /proc/$(sudo lsof -t -i:端口号) | grep exe ,其中端口号为需要查询的端口号。
文件夹大小查看
linux 列出当前目录所有文件大小
ls -lh | sort -h
tar -czvf src.tar.gz --exclude=exclude_this_file /path/to/directory
* `tar` 是用于打包的命令。
* `-c` 表示创建新的压缩文件。
* `-z` 表示使用gzip压缩。
* `-v` 表示详细模式,会显示过程中被添加到压缩文件中的文件。
* `-f` 后面跟着压缩文件的名称。
* `--exclude` 后面跟着不需要包括的文件或目录名称。
* `archive_name.tar.gz` 是你想创建的压缩文件的名称。
* `/path/to/directory` 是你想要压缩的文件夹路径。