Linux常用操作及命令大全

Posted liea

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用操作及命令大全相关的知识,希望对你有一定的参考价值。

linux

文件操作

目录命令

  • ls 查看当前目录 (默认以水平方向多文件并排显示)
    • ls -lh 以人性化和列表方式显示文件大小
    • ls -a 查看当前目录并显示隐藏文件
    • ls -l 以列表方式显示文件的详细信息
    • ls -h 以个性化方式显示文件大小,单独用不起效
  • pwd 显示当前目录路径
  • 文件夹 默认以蓝色字体显示,是文件以白色字体显示
  • 以 ls -l 的方式显示出来文件,d开头的是目录

通配符的使用

  • * 代表任意个数的字符
  • ? 代表任意一个字符,至少一个
  • [] 表示可以匹配字符组中的任一 一个
  • [abc] 匹配 abc 中的任意一个
  • [a- f] 匹配从a 到 f 范围内的任意一个

切换目录

  • cd 切换当前用户的主目录,快速回到当前用户的home目录下
    • cd .. 切换到上级目录 cd 空格 ..
    • cd ~ 与cd命令相同

文件命令

创建

  • touch 如果文件不存在则创建空白文件 ,如果存在则修改文件最后修改日期
  • mkdir 创建一个目录
    • mkdir -p 创建多级目录 例: mkdir -p a/b/c/d

删除

  • rm 可以删除文件 删除后不能恢复
    • rm -f 强制删除,忽略不存在文件,不提示
    • rm -r 递归删除多级目录

拷贝和移动

  • tree 以树状图列出文件
    • tree -d 只显示目录
  • cp 源文件 目标文件 复制文件或文件夹
    • cp -i 覆盖时提示
    • cp -r 复制目录
  • mv 源文件 目标文件 移动文件
    • mv -i 覆盖时提示

文件内容命令

  • cat 查看文件内容、创建文件、文件合并、追加文件等功能,把文件内容一次性全部展示出来

    • cat -b 对非空输出行编号
    • cat -n 对输出的所有行编号
  • more 分屏显示文件内容,文件内容过长时,可以按需加载

    • 按空格显示手册页的下一屏
    • 按回车一次只向下滚动一行
    • b 回滚一屏
    • q 退出
  • grep 搜索文本文件内容

    • -n 显示行号
    • -i 忽略大小写
    • -v 取反
    • ^a 行首, 以^ 开头 来搜索a文本
    • k $ 行尾,以 $ 为结束来搜索k文本
  • echo 文字内容 在终端显示内容

  • 重定向 linux 允许将命令执行结果重定向到一个文件

    • > 表示输出,会覆盖文件原有的内容。把echo要输出的内容放到文件中

    • 例如:echo hello word > abc
      // 此时会创建一个叫abc的文件,文件里面的内容是 hello word
      例如:ls -lh > a
      // 此时会创建一个a 文件,里面存放了 ls -lh 输出的内容
    • >> 表示 追加,会将内容追加到已有文件的末尾

  • 管道的概念及使用
    • linux 允许一个命令的输出,可以通过管道作为另一个命令的输入
    • 常用的命令:more 分屏显示内容 grep 在命令执行结果的基础上查询指定的文本。

远程管理命令

  • shutdown 关机 /重启
    • shutdown -r now 立即重启
    • shutdown now 立即关机
    • shutdown 18:33 在这个时间关机
    • shutdown +10 10分钟后关机
    • shutdown -c 取消之前的关机
  • ifconfig 查看网卡配置信息
  • ping ip 检测到目标ip地址是否正常

SSH 远程登录

  • 登录格式 ssh [-p port] user@remoto

    • user是 用户名
    • remoto 是远程机器的地址,可以是IP/域名,或者别名
    • port 是SSH server 监听的端口,如果不指定,默认值是22
    • 使用exit可以退出当前的登录
    • 注意: ssh只能在linux 和 unix 系统下使用。如果是windwos 系统可以安装PuTTY 或者XShell客户端软件
  • SSH 密钥免密码登录

    • 执行ssh-keygen即可一键生成密钥,一路回车即可
    • 然后上传公钥到服务器
    • 执行ssh-copy-id -p port user@remoto可以让远程服务器记住我们的公钥
  • SSH配置别名

    1. 在.ssh文件夹下创建一个config的文件

    2. 追加如下内容

    3. Host Mac
      HostName ip地址
      User 用户名
      Prot 22

SCP远程拷贝

  • scp 就是secure copy ,是一个在linux 下用来进行远程拷贝文件的命令
  • 他的地址格式与ssh 基本相同,需要注意的是,在指定端口时用的是大写的 -P 而不是小写
  • 例如: scp -P 22 root@127.0.0.1:Desktop/test/hello ./
  • 例2: scp admin@192.168.1.100:Desktop/test/1.txt Desktop 把远程服务器中的1.txt 复制到桌面
  • 例3: scp 1.html admin@192.168.1.100:Desktop把本地的1.html 文件 复制到服务的桌面
  • -r 操作文件夹

用户权限

chmod 修改权限

chmod +or -rwx 文件名或目录名

用户管理

  • 创建用户
    • useradd -m -g 组
    • -m 自动建立用户家目录
    • -g 指定用户所在的组,不设置则会建立一个和同名的组
    • passwd 用户名 设置用户密码
  • 删除用户
    • userdel -r 用户名

系统信息

  • date 当前时间
  • cal 日历
  • cal -y 查看一年的日历
  • df -h 查看目录磁盘剩余空间
  • du -h 目录名 显示目录下的文件大小
  • free -h 查看内存
  • top 动态查看当前正在运行的进程,并排序。按q退出
  • ps aux 查看进程详细信息
    • a 显示终端上所有进程,包括其他用户
    • u 显示进程的详细状态
    • x 显示没有控制终端的进程
  • kill 杀死进程, -9 表示强制关掉

打包压缩

  • windows 常用 rar

  • mac 常用 zip

  • linux 常用 tar、gz

    • tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件

    • tar格式的命令如下(tar只负责打包不负责压缩)

    • 打包文件
      tar -cvf 打包文件.tar  被打包文件的路径
      解包文件
      tar -xvf 打包文件.tar
    • c 生成档案文件,创建打包文件
    • x 解开档案文件
    • v 列出归档解档的详细过程,显示进度
    • f 指定档案文件名,f 后面一定是.tar 文件 所以必须方选项最后
    • tar -zcvf 打包文件.tar.gz 被压缩打包文件的路径 ------- 打包并压缩
    • tari -zxvf 打包文件.tar.gz --------- 解压缩文件
    • tar -zxvf 打包文件.tar.gz -c 目标路径 -------------解压到指定路径

  • bzip2

    • tar与bzip2 命令结合可以使用实现文件打包和压缩(用法和gzip一样)

    • tar 只负责打包文件,但不压缩

    • 用bzip2 压缩tar打包后的文件,其扩展名为xxx.tar.bz2

    • 在tar命令中有一个 -j 可以调用bzip2 ,从而可以方便的实现压缩和解压的功能

    • 命令格式如下:

    • 压缩文件
      tar -jcvf 打包文件.tar.bz2 被压缩文件的路径
      解压文件
      tar -xzvf 打包文件.tar.bz2

vim 编辑器

打开或新建文件

  • 命令:vi 文件名

  • 如果文件已经存在则直接打开文件
  • 如果文件不存在则直接会新建文件并打开

打开文件并定位到指定的行

  • 命令 vi 文件名 + 行数
  • 如果只带上+ 不指定行数,则定位到最后位置

命令模式

  • 在打开文件时,默认进入命令模式,通过命令对文件进行常规的编辑操作。例如:定位,复制,粘贴,删除
  • 按ESC键可进入命令模式

末行模式:

执行保存、退出 等操作

  • 在命令模式下 输入: 进入末行模式

  • w 保存
  • q 退出
  • !q 不保存文件,强行退出
  • x 保存并退出

编辑模式

  • 在命令模式下 按 i 可以进入编辑模式

移动命令

  • h 向左移动
  • j 向下移动
  • k 向上移动
  • l 向右移动

行数移动

  • set nu 显示行数
  • set nonu 不显示行数

  • gg 文件顶部
  • G 文件末尾
  • 数字gg 移动到数字对应行
  • 数字G 移动到数字对应对应行
  • 数字 移动到数字对应对应行(末行模式)

屏幕移动

  • ctrl + b 向上翻页
  • ctrl + f 向下翻页
  • H 屏幕顶部
  • M 屏幕中间
  • L 屏幕底部

段落切换和括号切换

  • 上一段落
  • 下一段落
  • % 移动到括号

标记

  • mx x表示要标记的名称
  • ‘ x x表示回到标记名称的位置

选中文本

  • v 可视模式 从光标位置开始按照正常模式选择文本
  • V 可视模式 选中光标经过的完整行
  • ctrl + v 可视块模式 垂直方向选中文本

撤销和删除

  • u 回撤操作
  • ctrl + r 恢复撤销命令
  • x 删除光标所在字符,或者选中字符
  • d 移动命令 删除移动命令对应的内容
  • dd 删除光标所在行,可以ndd 复制多行
  • D删除空行尾

复制和粘贴

  • y 复制
  • yy 复制一行,可以
  • nyy 复制多行 n表示数字
  • p 粘贴

Linux如何查看端口状态

netstat命令各个参数说明如下:

  -t : 指明显示TCP端口

  -u : 指明显示UDP端口

  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)

  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。

  -n : 不进行DNS轮询,显示IP(可以加速操作)

即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况··

netstat -ntlp //查看当前所有tcp端口·

netstat -ntulp |grep 80 //查看所有80端口使用情况·

netstat -an | grep 3306 //查看所有3306端口使用情况·

查看一台服务器上面哪些服务及端口

netstat -lanp

查看一个服务有几个端口。比如要查看mysqld

ps -ef |grep mysqld

查看某一端口的连接数量,比如3306端口

netstat -pnt |grep :3306 |wc

查看某一端口的连接客户端IP 比如3306端口

netstat -anp |grep 3306

netstat -an 查看网络端口 

lsof -i :port,使用lsof -i :port就能看见所指定端口运行的程序,同时还有当前连接。 

nmap 端口扫描
netstat -nupl  (UDP类型的端口)
netstat -ntpl  (TCP类型的端口)
netstat -anp 显示系统端口使用情况

以上是关于Linux常用操作及命令大全的主要内容,如果未能解决你的问题,请参考以下文章

Linux 命令大全

Docker常用命令大全

Linux常用基本命令大全介绍

Linux命令大全----常用文件操作命令

cmd调取windows组件的dos命令大全和常用网络工具,及Linux系统下命令大全

linux必学的60个命令