Linux中常用命令主要可以两大类:一类是文件目录类命令,另一类是系统操作类命令。
第一,打开文件夹。
# 打开指定文件夹
命令:cd [目录名称]
# 打开当前用户的根目录
命令:cd ~
# 返回上级目录
命令:cd ..
# 返回进入目录
命令:cd -
# 打开根目录
命令:cd /
第二,查看文件类型。
命令:file [文件名]
第三,列出文件/目录。
# 显示所有文件,包括以.开头的隐藏文件
命令:ls -a
# 显示详细信息,可以简写为ll
命令:ls -l
# 递归显示子目录结构
命令:ls -R
# 当前目录下的文件通过最后修改时间进行排序
命令:ls -ltr
# 当前目录下的文件以文件的大小进行排序
命令:ls -lS
# 显示当前目录
命令:pwd
第四,操作文件/目录。
# 创建文件目录
命令:mkdir -p [文件夹名称]
# 将源文件/目录递归复制到目标文件/目录,同时保持相同的模式
命令:cp -pr [源文件/目录名] [目标文件/目录名]
# 创建新的空文件
命令:touch [文件名]
# 移动或者重命名文件/目录
命令:mv [源文件/目录名] [目标文件/目录名]
# 递归强制删除文件/目录
命令:rm -rf [文件/目录名]
# 建立软链接
命令:ln -s [源文件/目录名] [目标文件/目录名]
# 编辑文件
命令:vim [文件名]
第五,压缩和解压文件/目录。
# 把文件/目录压缩为zip格式文件
命令:zip -r [文件名]
# 把zip格式文件解压
命令:unzip [文件名]
# 把文件/目录压缩为tar、tar.gz格式文件
命令:tar -zcvf [文件名]
注释:
-z:调用gzip压缩命令进行压缩
-c:创建一个新tar文件
-v:显示运行过程的信息
-f:指定文件名
# 把tar、tar.gz格式文件解压
命令:tar -zxvf [文件名]
注释:
-z:调用gzip解压命令进行解压
-x:解开tar文件
-v:显示运行过程的信息
-f:指定文件名
第六,修改文件/目录的拥有者,以及赋予和收回权限。
权限模式使用“+”和“-”代表赋予和收回权限,使用“r、w、x”代表读、写、执行权限。用户也可以采用数字模式进行授权,使用二进制的形式代表“r、w、x”三种权限(r=4,w=2,x=1),如101(5)=r-x,111(7)=rwx。
# 更改文件和目录的读取、写入和执行权限
命令:chmod -R +x [文件/目录名]
chmod -R 700 [文件/目录名]
# 更改文件和目录的所有权,并转让给指定的用户名
命令:chown -R root:root [文件/目录名]
第七,输出和查看文件。
# 输出内容
命令:echo "hello"
# 将"hello"覆盖a文件
命令:echo "hello" > a
# 将"hello"追加到a文件中
命令:echo "hello" >> a
# 显示文件内容,也可以将数个文件合并成一个文件显示
命令:cat [文件名]
cat a >> b
cat a b > c
# 显示文件的头几行(默认10行)
命令:head -n [文件名]
# 实时显示文件的末尾几行(默认10行)
命令:tail -n -f [文件名]
# 查找当前目录下名称为redis的文件
命令:find . -name redis
# 查找根目录下后缀为.conf的文件
命令:find / -name *.conf
# 查找根目录下所有权限是777的文件
命令:find / -perm 777
# 查找根目录下所有为目录类型的文件
命令:find / -type d
# 查找当前目录下两天之内被改过的文件
命令:find . -mtime -2 -type f -print
# 查找当前目录下两天之前被改过的文件
命令:find . -mtime +2 -type f -print
# 查找当前目录下十分钟之前被改过的文件
命令:find . -cmin +10 -type f -print
# 查找在根目录大于1M的文件
命令:find / -size +1M
# 查找在根目录小于1M的文件
命令:find / -size -1M
# locate可以快速搜寻某个路径(默认每天自动更新一次)
命令:updatedb
locate /etc/sh #搜索etc目录下所有以sh开头的文件
locate pwd #查找所有和pwd相关的文件
# 在文件中搜索给定字符串
命令:grep [给定字符串] [给定字符串的源文件]
第一,关闭和启动Linux系统。
# 立即关机
命令:shutdown -h now
或 poweroff
# 10分钟后关机
命令:shutdown -h +10
# 23:30分关机
命令:shutdown -h 23:30
# 立即重启
命令:shutdown -r now
或 reboot
或 init 6
第二,显示时间。
# 查看或设置当前系统的时间
命令:date
# 查看系统运行时间
命令:uptime
# 显示完整的用户信息,可以监视用户在系统中的活动,用于故障排除。
命令:last
第三,查找、设置以及操作网络和进程。
# 查看网卡信息
命令:ifconfig
# 查看正在运行的进程
命令:ps -ef | grep [进程名]
或 ps -aux | grep [进程名]
# 强制杀死进程
命令:kill -9 [PID]
# 查看与某台机器的连接情况
命令:ping [IP地址]
# 搜索指定的网络连接,查看网络状态,可以更加方便快捷地查看本机的TCP/IP连接情况,有助于系统的管理和维护。
命令:netstat -nap | grep []
# 查看端口号被什么进程占用
命令:netstat -nap | grep [端口号]
或 lsof -i:[端口号]
或 netstat -ntl | grep [端口号]
# 资源监测,显示完整的命令行而不只是显示命令名,按“shift+M”,按照内存大小排序;按“shift+P”,按照CPU大小排序。
命令:top -c
第四,系统服务。
root向普通或虚拟用户切换不需要密码,普通用户切换到其它任何用户都需要密码验证。
# 切换到test用户,但是路径还是/root目录
命令:su test
# 切换到test用户,路径变成了/home/test
命令:su - test
# 切换到root用户,但是路径还是原来的路径
命令:su
# 切换到root用户,并且路径是/root
命令:su -
# 查看iptables服务的状态
命令:service iptables status
# 开启iptables服务
命令:service iptables start
# 停止iptables服务
命令:service iptables stop
# 重启iptables服务
命令:service iptables restart
第五,防火墙。
# 查看防火墙状态
命令:systemctl status firewalld
# 开启防火墙
命令:systemctl start firewalld
# 关闭防火墙
命令:systemctl stop firewalld
# 查询端口是否开放
命令:firewall-cmd --query-port=[端口号]/tcp
# 开放端口
命令:firewall-cmd --zone=public --add-port=[端口号]/tcp --permanent
# 重启防火墙
命令:firewall-cmd --reload
第六,其他。
# 终止当前的命令
按快捷键“ctrl+c”
# 清屏
按快捷键“ctrl+l”或使用命令“clear”
# 查看当前系统中有哪些用户登录
命令:who
或 w
# 显示系统诊断信息、操作系统版本号以及物理内存的大小等信息
命令:dmesg
# 查看文件系统的各个分区的占用情况
命令:df -h
# 查看并列出目录文件以及子目录文件大小
命令:du -h [目录名]
# 查看目录文件以及子目录文件大小,只列出一个总结的值
命令:du -sh [目录名]
注释:-s表示总结
# 查看系统内存以及虚拟内存(交换空间)的大小占用情况
命令:free
# 登录到远程主机
命令:ssh [用户名]@[IP地址]
# 添加定时任务
命令:crontab -e
添加代码:50 23 * * * sh [运行脚本]
# 查看是否写入
命令:crontab -l