博客
关于我
Linux常用命令归类总结
阅读量:434 次
发布时间:2019-03-06

本文共 3091 字,大约阅读时间需要 10 分钟。

Linux系统操作指南

文件相关

创建文件

  • 使用 touch 命令创建文件:

    touch README.md
  • 使用 > 重定向创建文件:

    echo 'study and share' > README.md
  • 使用 vivim 编辑文件:

    vim README.md

    注意vivim 的旧版本,部分系统可能只有 vi,建议使用 vim

删除文件

  • 删除单个文件:

    rm README.md
  • 强制删除文件(谨慎操作):

    rm -rf README.md

Linux最佳文本编辑器——vim

  • 模式切换:按 i 进入插入模式,按 o 切换到下一行。
  • 保存文件:按 :q 退出(可选 :q! 强制保存)。
  • 退出不保存:按 :q!

文件夹的相关操作

创建文件夹

  • 创建单层文件夹:

    mkdir app
  • 创建多层嵌套文件夹:

    mkdir -p a/b/c

删除文件夹

  • 删除单个文件夹:

    rmdir app
  • 强制删除文件夹(谨慎操作):

    rm -rf app

查看文件夹信息

  • 列出文件夹内容:

    ls app
  • 查看详细信息:

    ls -l app
  • 查看文件夹树结构(推荐使用 tree):

    tree app

    示例输出:

    tree aa`-- b  `-- c    `-- d      `-- e        `-- f          `-- g            `-- h7 directories, 0 files

进入文件夹

  • 切换目录:

    cd app
  • 返回上一级目录:

    cd ..

复制、修改、移动文件夹

复制文件或文件夹

  • 复制文件:

    cp file1 file2
  • 复制嵌套文件夹:

    cp -r a b

移动或重命名文件夹

  • 移动文件夹:
    mv app ppa

硬链接和软链接

  • 硬链接:

    ln ataola zjt

    硬链接会占用目标文件的空间。

  • 软链接(快捷方式):

    ln -s ataola zjt

    软链接不占用空间。

压缩与解压缩

使用 tar

  • 将文件压缩为 .tar.gz

    tar -czvf ataola.tar.gz ataola
  • 解压缩文件:

    tar -zxvf ataola.tar.gz

    参数说明:

    • -c:创建压缩文件。
    • -z:使用 gzip 压缩。
    • -v:显示详细信息。
    • -f:指定输出文件。
    • -x:解压。

使用 zip

  • 压缩文件:

    zip ataola.zip ataola
  • 解压文件:

    unzip ataola.zip ataola
  • 加密压缩(推荐):

    zip -re ataola.zip ataola

网络相关

查看网络信息

  • 查看本机网络信息:

    ip addr

    或者:

    ifconfig

网络通信测试

  • 检测网络连通性:

    ping zhengjiangtao.cn
  • 查看本机端口状态:

    netstat -tlunp

    参数说明:

    • -t:显示 TCP 协议的状态。
    • -l:显示正在监听的服务。
    • -u:显示 UDP 协议的状态。
    • -n:显示网络名称。
    • -p:显示建立的 socket 程序名。

防火墙配置

  • 安装防火墙:

    yum install iptables iptables-services -y
  • 开启防火墙:

    service iptables start
  • 关闭防火墙:

    service iptables stop
  • 保存防火墙规则:

    service iptables save
  • 查看防火墙状态:

    service iptables status
  • 添加规则(如开启端口 80):

    iptables -I INPUT -p tcp --dport 80 -j ACCEPTiptables -I OUTPUT -p tcp --sport 80 -j ACCEPT
  • 删除规则:

    iptables -I INPUT -p tcp --dport 80 -j DROPiptables -I OUTPUT -p tcp --sport 80 -j DROP

用户相关

用户组管理

  • 查看组信息:

    cat /etc/group

    格式:用户组名:密码:用户组ID:组内用户名

  • 添加用户组:

    groupadd usergroup
  • 修改用户组:

    groupmod usergroup
  • 删除用户组:

    groupdel usergroup

用户管理

  • 查看用户信息:

    cat /etc/passwd

    格式:用户名:密码:用户ID:用户组ID:注释:家目录:解释器shell

  • 添加用户(默认创建用户组):

    useradd user

    参数说明:

    • -m:自动创建家目录。
    • -g:指定用户主组。
    • -G:指定附加组。
    • -u:指定用户 ID。
    • -s:指定登录shell。
    • -d:指定登录目录。
  • 修改用户密码(root 用户):

    passwd user
  • 删除用户(可选删除家目录):

    userdel user

权限管理

文件权限

  • 查看文件权限:

    ls -l

    示例输出:

    drwxr-xr-x 1 root users 4096 Jul 18 18:17 b
  • 修改文件权限:

    • 给同组用户添加可写可执行权限:
      chmod g+wx a
    • 移除同组用户的可执行权限:
      chmod u-x a
    • 移除所有者可写可执行权限:
      chmod u-wx a

更改文件用户组

  • 将文件归属指定组:

    chgrp weiguo b
  • 将文件归属指定用户:

    chown root b

更改文件所属用户

  • 将文件归属指定用户:
    chown root b

进程相关

查看进程

  • 查看所有进程:

    ps

    参数说明:

    • -a:显示所有终端下的进程。
    • -A:显示所有进程。
    • -u:指定用户进程。
    • -aux:显示所有包含其他用户的进程。
  • 查看特定进程(如 MySQL):

    ps -ef | grep mysql

杀掉进程

  • 杀掉指定进程(如 PID 1001):

    kill 1001
  • 强制杀掉进程:

    kill -9 1001

内存、CPU和硬盘相关

内存使用情况

  • 查看内存使用情况:

    free
  • 查看详细内存信息:

    cat /proc/meminfo

CPU信息

  • 查看 CPU 详细信息:
    cat /proc/cpuinfo

硬盘使用情况

  • 查看硬盘使用情况:
    df

环境变量相关

临时设置

  • 设置临时环境变量:

    export NODE_ENV=production
  • 查看临时变量:

    echo $NODE_ENV

永久设置

  • 修改 /etc/profile

    echo "export NODE_ENV=production" >> /etc/profile
  • 修改 /home/user/.bashrc

    echo "export NODE_ENV=production" >> ~/.bashrc

常见问题

组删除问题

  • 删除包含用户的组会失败:
    groupdel sanguo

    会提示:

    groupdel: cannot remove the primary group of user 'caocao'

    解决方法:首先删除用户,再删除组:

    userdel caocaogroupdel sanguo

创建用户默认组

  • 使用 useradd 时,默认创建与用户同名的组:
    useradd user

useradd 的解析器 shell 选项

  • 可选解析器:
    /bin/zsh/bin/bash/sbin/nologin

    最后一个用于无登录shell。

通过以上命令和操作,您可以在 Linux 系统中完成文件管理、网络配置、用户管理等多种常用任务。

转载地址:http://bzrkz.baihongyu.com/

你可能感兴趣的文章
Objective-C实现基于事件对象实现线程同步(附完整源码)
查看>>
Objective-C实现基于文件流拷贝文件(附完整源码)
查看>>
Objective-C实现多组输入(附完整源码)
查看>>
Objective-C实现字符串manacher马拉车算法(附完整源码)
查看>>
Objective-C实现字符串wildcard pattern matching通配符模式匹配算法(附完整源码)
查看>>
Objective-C实现字符串word patterns单词模式算法(附完整源码)
查看>>
Objective-C实现将彩色图像转换为负片算法(附完整源码)
查看>>
Objective-C实现将给定的 utf-8 字符串编码为 base-16算法(附完整源码)
查看>>
Objective-C实现数除以二divideByTwo算法(附完整源码)
查看>>
Objective-C实现文件的删除、复制与重命名操作实例(附完整源码)
查看>>
Objective-C实现是否为 Pythagoreantriplet 毕氏三元数组算法(附完整源码)
查看>>
Objective-C实现显示响应算法(附完整源码)
查看>>
Objective-C实现最小二乘多项式曲线拟合(附完整源码)
查看>>
Objective-C实现最快的归并排序算法(附完整源码)
查看>>
Objective-C实现最长公共子序列算法(附完整源码)
查看>>
Objective-C实现最长子数组算法(附完整源码)
查看>>
Objective-C实现最长字符串链(附完整源码)
查看>>
Objective-C实现有限状态自动机FSM(附完整源码)
查看>>
Objective-C实现极值距离算法(附完整源码)
查看>>
Objective-C实现根据cpu和磁盘序列号生成注册码( 附完整源码)
查看>>