Linux 操作笔记

@Wen's  February 14, 2019

好记性不如烂笔头,记录一下日常工作学习中常使用的 Linux 命令。

安装磁盘分配

  • /boot 用来存放与 Linux 系统启动有关的程序,比如启动引导装载程序等,建议大小为 100MB。

  • swap 实现虚拟内存,建议大小是物理内存的1~2倍。

  • / Linux系统的根目录,所有的目录都挂在这个目录下面,建议大小为5GB以上。

  • /home 存放普通用户的数据,是普通用户的宿主目录,建议大小为剩下的空间。

系统目录结构

  • /:存放系统程序,也就是 At&t 开发的 Unix 程序。

  • /usr:存放 Unix 系统商(比如 IBM 和 HP)开发的程序。

  • /usr/local:存放用户自己安装的程序。

  • /opt:在某些系统,用于存放第三方厂商开发的程序,所以取名为 option,意为 “选装”。

常用基本命令

  • ls 列出当前目录下的文件 ls ser* 查找 ser 打头的文件

  • ls -l (简化为:ll)列出当前目录下文件的详细信息

  • ls -a 列出当前目录下的所有文件(包括隐藏文件)

  • ls -t 依时间排序,而不是用档名

  • ls -S 依大小排序,ls -Sr 按大小倒序

  • ls --full-time 以完整时间模式 (包含年、月、日、时、分) 输出( Mac 是 ls -T

  • ll -d 查看当前目录的详细信息

  • ll -a 详细列出当前目录下的所有文件

  • ll 路径 列出指定路径(可为相对或绝对路径)下的文件

  • ll -d 路径 查看指定路径的详细信息

  • 打开文件夹:cd 路径

    • cd /etc (相对路径) 或 cd xxx(绝对路径)

    • 返回上一级目录:cd ..

  • 查看当前目录:pwd(path where dir)

  • 查看当前用户:whoami

  • 切换用户:su -用户名 或者 su 用户名(从其他用户切换到 root 用户需要密码,从 root 用户切换到任何其他用户不需要密码)

    • 切换到 root 用户:su

    • 切换到 root 用户后使用命令:exit 切换到普通用户

  • 清屏:clear 或者 Ctrl + L

  • 关机:halt 或者 shutdown -h now

  • 修改密码:修改 root 自己的密码,直接输入 passwd,输入两遍新密码即可。若修改其他用户,如 oracle 的密码,可直接输入 passwd oracle,输入两遍性新密码即可。

  • 查看系统编码:locale

  • 获取权限:chmod 777 文件名

  • 检索(例如检索 profile):ls -l | grep profile

  • 文件拖拽软件安装:yum install lrzsz

  • 查看进程:ps -efps auxf

  • 查看端口:netstat -antlp | grep xx

  • 查看资源占用情况:topShit + > 切换排序列)

  • 查看内存:free -m/g

  • 查看目录大小:du -sh /opt/registry

  • 修改配置文件后立即生效:sysctl -p

  • 查看系统环境变量:env

  • dirname 用于取指定路径所在的目录,如:dirname /home/ikidou,结果为:/home

  • cd dirname $0:一般用户 Shell 脚本中,切换到执行脚本所在的目录

  • tee:在执行 Linux 命令时,我们可以把输出重定向到文件中,比如 ls > a.txt,这时我们就不能看到输出了,如果我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用 tee 命令

  • tree:树形查看当前目录结构

  • 系统负载查看:uptimewtop 命令

    • “load average”,它的意思是 “系统的平均负荷”,里面有三个数字表示 1分钟、5分钟、15分钟内系统的平均负荷。

  • 列出谁在使用 3306 端口:lsof -i:3306

文件操作命令

路径(绝对路径、相对路径)

  • 创建文件夹:mkdir [路径] + 文件夹

    • mkdir [路径] + 文件夹1 [路径] + 文件夹2(可以同时创建多个文件夹,空格隔开)

    • mkdir -p [路径]/[路径] (创建多层级目录)

  • 创建文件:touch [路径] + 文件名

    • touch [路径] + 文件名1 [路径] + 文件名2(可以同时创建多个文件,空格隔开)

  • 如何区分是文件夹还是文件:

  • 删除(remove)文件:rm [路径] + 文件名 (可以删除多个文件,每个文件用空格隔开)

    • 删除文件夹:rm -r 文件夹1 文件夹2(递归 recursive 删除文件夹1和文件夹2下的所有内容,每删除一个会提示)

    • rm -rf 文件夹(强制 force 删除文件夹下的所有内容,不提示删除)删除后无法还原

    • 删除文件夹或者: rmdir 文件夹(文件夹必须为空)

    • 删除所有内容:rm -rf *

  • 复制(copy)文件:cp 源文件 目标文件夹(正常情况下使用绝对路径) -复制文件夹:cp -r 源文件 目标文件夹

  • 移动(move)文件:mv 源文件 目标文件夹(正常情况下使用绝对路径)

    • 移动文件夹:mv 源文件夹 目标文件夹

    • 重命名:mv aa.txt aaaa.txt

文件读写命令

  • echo "Hello World" >> a.txt 将字符串 Hello World 追加到文件 a.txt 中。

    • echo "Hello World" > a.txt 将文件 a.txt 中的内容替换为字符串 Hello World。

  • 查看文件内容:cat a.txt

    • more services 分页查看 services 文件中的内容,按空格或 f 切换下一页,回车下一行,q 退出。(文件内容较多时使用)

    • head services 查看 services 文件前 10 行的内容(默认前 10 行) head -20 services (前20行的内容)

    • tail services 查看 services 文件结尾 10 行的内容 tail -20f services(滚动显示结尾 20 行的内容)

    • vi/vim services vi 可以修改文件

  • 文件链接:ln 文件 链接 修改源文件或者链接文件,两者同时更新

    • ln -s /test/a.txt /test/as.txt 软链接 as.txt 就是针对 a.txt 的软链接(类似如 windows 的快捷方式)a.txt 删除后,as.txt无效

    • ln /test/a.txt /test/ah.txt 硬链接 a.txt 删除后 ah.txt 仍然有效


    • 首先你应该查找目前机器上有哪些程序占用了25端口:

    • netstat -nltp
    • 如果有可以用下面的命令查找更详细的信息:

    • ps PID

转自:https://ehlxr.me/2017/04/14/Linux-操作笔记/


添加新评论