精心整理的Linux常用命令非常实用

Linux

cd

cd / 切换到系统根目录

cd usr 切换到该层目录下usr目录

cd .. 切换到上一层目录

cd ~ 切换到用户主目录

cd - 切换到上一个所在的目录

mkdir

mkdir 目录名 mkdir ./目录名 在该层创建(目录名)

mkdir 目录名1/目录名2 在(目录名1)下创建(目录名2)

mkdir ../目录名 在上一层目录创建(目录名)

mkdir /root/目录名 在root下创建(目录名)

mkdir .目录名 创建隐藏目录

查看

ls 查看该层所有目录

ls -l ll 查看该层所有目录(包括详细信息)

ls -al 查看该层所有目录(包括隐藏目录)

查找

cd /root
find -name "*"                在/root目录下,查询所有的文件和目录
cd /
find -name "abc*"             在/根目录下(包括子目录),查询以abc开头的目录或文件
cd /
find -name "cc?"              在/根目录下(包括子目录),查询以cc开头的三个字符的目录或文件

移动、重命名

mv /root/aaa /root/abc             在/root目录下,将aaa目录改为abc目录
touch aaa                          使用touch创建一个空文件夹
mv aaa xyz                         将aaa文件改名为xyz文件
mv /root/xyz /xyz
mv /root/xyz /                     将root目录下的xyz文件移动到系统的根目录下

复制

cd /root
cp /aaa/bbb ccc                    当前是root目录,复制/aaa/bbb文件到root目录下的ccc目录中
cp /etc/c* /root/bbb               将/etc目录下所有c开头的文件复制到root目录下的bbb目录下
cp -r /etc/h* /root/eee            将/etc目录下所有h开头的文件(和目录)复制到root目录下的eee目录下

删除

cd /eee
rm aaa bbb              同时删除eee目录下aaa文件和bbb文件
cd /root/bbb
rm csh.*                在/root/bbb目录下,删除所有文件名csh,任意拓展名的文件
cd /root/eee 
rm -rf httpd            在/root/eee目录下,递归删除httpd目录和所有子目录的文件,不进行确认,强制删除

查看所有命令

man mkdir             

退出linux控制台

exit
logout

文件操作命令

cat a.java          查看当前目录下a.java文件的全部内容
more a.java         查看(分页查看)当前目录下a.java文件的全部内容(不能往前翻)
head a.java         查看当前目录下a.java文件的前十行
head -n 20 a.java   查看当前目录下a.java文件的前二十行
tail a.java         查看当前目录下a.java文件的后十行
tail -n 20 a.java   查看当前目录下a.java文件的后二十行
less -N a.java      查看当前目录下a.java文件的全部内容(显示行号)

vim文本编辑器

vim a.java          进入文件a.java(如果没有,则创建,进入)
yy                  复制光标所在行
p                   粘贴所复制的内容
dd                  删除光标所在行
u                   回退一次
/字符串              在当前文本文件中搜索字符串
wq                  保存并退出
q!                  强制退出

压缩与解压命令

tar
   c       (create)          压缩文件(压缩)
   v       (verbose)         详细显示处理的文件
   z       (gzip,ungzip)     用gzip对文档进行压缩或解压
   f       (file)            指定文档
   x       (extract,get)     从文档展开文件(解压)
   C       (directory)       转到指定的目录
   
   .tar                      打包
   .gz                       压缩
   .tar.gz                   即打包又压缩
   
   
tar -zxcvf   +    打包的文件名   +    被打包的文件名1   被打包的文件名2 ...

查看自己当前所在的位置

pwd                           查看自己当前所在的位置

查看进程

ps
    -a          所有用户启动的进程
    -u          所有用户启动的进程的详细信息
    -x          所有用户所有进程的详细信息
    
ps -aux

终止进程

kill 线程id                  终止相对应的进程
kill -9 线程id               强行终止相对应的进程

查询内容

grep
     -n       (line-number)         显示行号
     -v       (invert-match)        选择不匹配的行
     -i       (ignore-case)         忽略大小写
     
     
grep  +  要查找的内容   +  文件名  +   -n
                                    -v
                                    -i

管道命令(重定向命令)

命令1 | 命令2                        命令1的执行结果作为命令2的条件输入

和其它命令结合使用
             例如:
                ls -al | grep hello     显示所有文件详细信息,查询hello字符串
                ps -aux | grep world    显示linux中所有进程的详细信息,查询world字符串

停止、关闭、重启虚拟机

shutdown now               立即关机(需要指定参数)
poweroff                   同shutdown now(重点)
reboot                     重启系统

查看防火墙状态

systemctl status firewalld.service

关闭防火墙

systemctl stop firewalld.service

权限操作

添加权限(+)
         chmod u+x demo.java             改变demo.java的权限,给属主添加可运行权限
         chmod g+rx demo.java            改变demo.java的权限,给属组添加可读可运行权限
         chmod a+rwx demo.java           
         chmod 777 demo.java             改变demo.java的权限,给所有用户添加可读可写可运行权限
         
修改权限(=)
         chmod u=rwx demo.java           改变demo.java的权限,将属主的权限修改为可读可写可运行
         chmod g=wx demo.java            改变demo.java的权限,将属组的权限修改为可写可运行
         chmod o=x demo.java             改变demo.java的权限,将其他用户的权限修改为可运行
         
删除权限(-)
      chmod a-rwx demo.java           
      chmod 000 demeo.java       改变demo.java的权限,将所有用户的权限修改为不可读,不可写,不可运行
      chmod u-w,g-w demo.java    改变demo.java的权限,属主删掉写权限,属组删掉写权限

主机名配置

hostname                                         查看当前主机名
hostname 新的主机名                                修改主机名(不是永久修改,重启则失效)
hostnamectl set-hostname 新的主机名                修改主机名(永久的)

服务管理

systemctl list-units *.service                  显示已经启动的所有服务
systemctl start crond                           开启服务
systemctl stop crond                            关闭服务
systemctl status crond                          显示服务当前状态
systemctl restart crond                         重启服务(先关闭,再开启)
systemctl reload crond                          重新加载服务(相当于读取新的配置)
systemctl enable crond                          设置服务为开机自启动
systemctl disable crond                         取消服务开机自启动

linux常用服务

firewalld                                  防火墙服务(d-服务的意思)
systemctl start sshd                       启动服务
systemctl stop sshd                        关闭服务
systemctl restart sshd                     重启
systemctl status sshd                      查看进程状态

网络管理

netstat                         显示网络连接、路由表
参数
       -n    (numberic)         显示进程的ip地址和端口号
       -t    (tcp)              只显示使用tcp协议的进程
       -l    (listening)        只显示正在网络监听的进程(默认选项)
       -p    (program)          显示程序的名字和进程id
       -r    (route)            显示路由表【重点】

网卡配置

设置ip分为两种类型           
            dhcp                   动态获取ip
            static                 配置静态ip


关闭网卡
       1. 修改 /etc/sysconfig/network-scripts/ifcfg-enp0s3,onboot参数设置为“no”
       2.重启网络 systemctl restart network
       3.运行命令 ping www.itcast.cn,查看外网能否连接
       4.按原步骤,激活网卡
       
配置静态ip地址
            1.运行 netstat -r,显示路由表(查看网关地址)
            2.修改 /etc/sysconfig/network-scripts/ifcfg-enp0s8
                   BOOTPROTO=static
                   IPADDR=192.168.56.102
                   GATEWAY=192.168.56.0
                   NETMASK=255.255.255.0
                   DNS1=114.114.114.114
                   
克隆虚拟机
           1.关闭虚拟机
           2.在VirtualBox操作界面,右键虚拟机,复制
           3.设置新虚拟电脑名称,继续
           4.副本类型选择"完全复制",复制
           【注意】如果克隆是静态ip,要修改ip,uuid

加密

单向加密:MD5 sha
双向加密:
        对称性加密        AES DES
        非对称性加密      公钥 私钥
                        rsa
                        椭圆加密

ssh免密登录

SSH两种验证机制

直接输入用户名和密码的方式          ssh username@ip
            
免密登录,直接登录,不需要输入用户名和密码
ssh-keygen
                生成公钥和私钥,生成的公钥和私钥在/root/.ssh目录下。id_rsa是私钥,id_rsa.pub是公钥
ssh-copy-id
ssh-copy-id root@192.168.56.102
                将新生成的密钥(公钥)发送到指定服务器。在服务器的/root/.ssh/autorized_keys文件中。
ssh root@192.168.56.102
                不需要输入密码了

用户管理命令

useradd       创建一个新用户或更新默认新用户信息,创建好的用户信息在`/etc/passwd`文件中
       参数
          -m      (create-home)    创建用户的同时,在/home下创建用户的主目录[默认参数]
          -g      (gid)            创建用户的同时,指定用户所在的组
                                   未指定组名:默认就在一个与用户同名的组中。组名与用户名相同。
                                   
                                   
     例如:
          useradd -m Jack          创建用户Jack,并且创建用户主目录
          useradd Tom -g Jack      创建用户Tom,把用户放在Jack这个组中,并且创建Tom主目录
          more /etc/passwd         查看/etc/passwd文件,可以看到创建的用户信息
          
    
passwd          更新用户密码
     例如: 
         passwd Jack  将Jack的密码为abc123
                      如果提示无效的密码,忽略即可,再次输入同一个密码,修改成功
                      在Linux控制台先logout登出。以Jack登录,注:用户名和密码大小写是敏感的
                      
                     
whoami          查看自己的用户名


su              切换用户


userdel                         删除用户账户和相关文件
       参数:   -r   (remove)    删除用户的同时,也删除它的主目录
       例如:
           userdel Tom -r 
                        使用root删除用户Tom,同时删除Tom的主目录。(如果Tom已经登录,则删除失败)
                        在/home目录下已经找不到Tom主目录了
                        
                        
usermod                                   修改用户帐户
       参数:  -l    (login,NEW_LOGIN)     指定修改后的新用户名
       
              -g    (gid)                 修改用户的主组
              -G    (groups)              修改用户的从组(附属组),可以有多个从组
              
       例如:
             usermod -l Rose Jack         修改Jack的登录名为Rose
                                          确认Jack这个用户不在线,如果在线需要将Jack登出

用户组管理命令

groupadd              创建一个新组 在`/etc/group`文件中,包含了所有创建组的信息


gpasswd               将用户从附属组(从组)中删除
        参数:
             GROUP                    指定要删除的组名
             -d     (delete USER)     将用户从附属组(从组)中删除
             
             
groupmod                              修改组的名字
        参数:  -n   (new-name)        将组名改成新的组名
        
        
groupdel                              删除一个组

软件安装命令[重点]

rpm(离线安装)                     对linux中已经安装的软件进行管理
    参数:  -v   (verbose)       提供更多的详细信息输出
           -q                   查询当前系统是否安装了指定的软件
           -a                   查询所有已经安装的软件
           -h                   在安装的过程中显示进度条 # 50%
           -i   (install)       安装指定的软件
           
    例子:rpm -qa                查看所有安装的软件
         rpm -qa | grep mysql   查看是否安装mysql
         rpm -ivh 软件名         安装指定的软件
         
         
yum(在线安装)           从指定的服务器自动下载包并且安装,可以自动处理依赖关系,一次安装所有依赖的软件包
    参数:
         -y            所有的提问都回答yes
    命令
         install       安装软件
         remove        卸载软件
         
    例子:yum –y install gcc-c++     安装gcc-c++ 这个安装包,安装的提示全部回答yes
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值