当前位置: 首页 > news >正文

Linux命令+Git命令

Linux命令+Git命令

  • linux
    • 查看
    • 两个操作系统cd命令的区别
    • 操作文件和文件夹
    • vim
      • 不同模式
      • 保存和退出
  • Git

linux

Linux操作系统中,几乎所有的东西都以文件夹或文件形式存在,这些文件夹/文件有一个共同的根目录/。如果我们在某块磁盘A上(无其他分区)安装了Linux操作系统后,那么根目录下将会有此类默认的系统目录:

$ ls /
bin  etc  lib  mnt  proc  run  tmp  var  boot  dev  home  root  srv  sys   usr

查看

经常去pwd + ls + tree!!!

ls -al 类似于 dir /a

  1. dir+ls 命令
  • Windows

    • dir 是 Windows 命令提示符(CMD)中默认的命令,用来列出当前目录下的文件和文件夹。它不需要安装任何东西
  • Linux

    • ls 用来列出当前目录的文件和子目录。
  1. Linux 下 ls 命令的常用选项:

  2. -l(详细信息)

    • -l 选项让 ls 显示文件和目录的详细信息,包括权限、链接数、所有者、组、文件大小、修改时间等。

    示例:

    ls -l
    

    输出示例:

    -rw-r--r-- 1 user group 12345 Apr 15 10:30 file.txt
    drwxr-xr-x 2 user group 4096 Apr 15 10:00 mydir
    
    • 第一列表示文件权限。
    • 第二列是硬链接数。
    • 第三列是文件的所有者。
    • 第四列是文件的所属组。
    • 第五列是文件大小(以字节为单位)。
    • 第六列是最后修改时间。
    • 最后一列是文件名或目录名。
  3. -a(显示所有文件,包括隐藏文件)

    • -a 选项显示目录中的所有文件,包括以点(.)开头的隐藏文件(例如 .bashrc)。

    示例:

    ls -a
    
  4. -la-al(显示详细信息并显示所有文件)

    • 可以将 -l-a 选项组合使用,显示所有文件和详细信息。
  5. Windows 下 dir 命令的常用选项:

  6. /Q(显示文件所有者)

    • 显示文件的所有者(类似于 ls -l 中显示的所有者信息)。

    示例:

    dir /Q
    
  7. /A(显示所有文件,包括隐藏文件)

    • dir 命令的 /A 选项用于显示所有文件,包括隐藏文件和系统文件。你可以通过指定 /A:H 来只显示隐藏文件,或者 /A:S 来只显示系统文件。

    示例:

    dir /A
    
  8. /Q + /A(显示文件所有者并显示隐藏文件)

    • 如果要显示详细的文件信息并包括隐藏文件,你可以将 /A/Q 选项组合使用。

    示例:

    dir /A /Q
    
  9. /T(显示文件时间)

    • dir /T 选项用于显示文件的时间戳(例如创建时间、修改时间、最后访问时间)。/T:C 表示显示创建时间,/T:A 表示显示最后访问时间,/T:W 表示显示最后修改时间。

    示例:

    dir /T:W
    
  10. tree 命令

  • Windows

    • tree 命令 默认在 Windows 系统中可用,它用于以树形结构显示目录及其子目录。无需额外安装。
  • Linux

    • tree 命令在大多数 Linux 发行版中不自带,通常需要单独安装。例如,在基于 Debian 的系统(如 Ubuntu)中,可以通过以下命令安装:
      sudo apt install tree
      
    • 安装后,使用 tree 命令查看目录结构。
    • 示例:
      tree
      
    • 这会显示当前目录及其子目录的树状结构。

两个操作系统cd命令的区别

cd 命令在 Linux 和 Windows 中都可以接受绝对路径和相对路径,都是 . 表示当前目录,.. 表示父目录
cd /d E:/lang 适用于切换盘符并进入指定目录。
但是只有在 Windows 中,/d 是用来切换盘符的,因为 Windows 文件系统基于不同的盘符来管理不同的磁盘,
在 Linux 中,cd 不需要 -d 或类似的选项,只需要指定路径,不需要考虑盘符的问题,因为 Linux 是一个基于文件系统树的操作系统。它的文件系统是统一的,所有的磁盘和分区都挂载到一个根目录 / 下。
除了盘符切换(/d 选项)的区别外,Linux 和 Windows 中的 cd 命令在行为和一些细节上也有一些不同:

  1. 路径表示
  • Linux
    • 使用 / 来表示目录分隔符。例如:/home/user/docs
    • 路径是区分大小写的。也就是说,/home/user/home/User 是不同的路径。
  • Windows
    • 使用 \ 来表示目录分隔符。例如:C:\Users\Documents
    • 路径不区分大小写。例如,C:\UsersC:\users 被视为相同路径。
  1. 环境变量

    • Linux
      • 在 Linux 中,cd 可以通过 ~ 来表示当前用户的主目录。例如,cd ~ 会切换到当前用户的家目录 /home/username
      • cd 也支持 - 来返回到上一个目录(即最近访问的目录)。例如,cd - 会切换到上次访问的目录。
    • Windows
      • Windows 命令行中,cd 命令不支持 ~ 表示当前用户目录(但是 PowerShell 中支持)。例如,cd ~ 在普通的命令提示符下会报错。
      • 同样,Windows 命令行也支持 cd - 来返回上一个目录,这个功能在某些版本的 CMD 中可能不可用,但 PowerShell 中则支持。
  2. 路径中的空格

  • Linux
    • 如果路径中包含空格,通常需要用引号或反斜杠来转义。例如:cd "My Documents"cd My\ Documents
  • Windows
    • 同样的情况,如果路径中有空格,使用引号包围路径。例如:cd "C:\Users\My Documents"

操作文件和文件夹

  1. 创建文件
  • Linux

    • touch:用来创建一个空文件,或者更新已有文件的修改时间戳。
      • 示例:touch newfile.txt 会创建一个名为 newfile.txt 的空文件。
  • Windows

    • type nul > filename:Windows 中没有直接类似 touch 的命令,但可以通过 type nul 创建一个空文件。
      • 示例:type nul > newfile.txt 创建一个空的 newfile.txt 文件。
  1. 创建文件夹(目录)
  • Linux

    • mkdir:用来创建一个新的目录。
      • 示例:mkdir newdir 会创建一个名为 newdir 的目录。
  • Windows

    • mkdirmd:在命令提示符中,mkdirmd 都可以用来创建一个新的目录。
      • 示例:mkdir newdir 会创建一个名为 newdir 的目录。
  1. 移动文件或文件夹
  • Linux

    • mv:用来移动文件或文件夹。如果目标是一个路径,mv 会将文件移动到该路径;如果目标是另一个文件名,mv 会将文件重命名。
      • 示例:mv file.txt /newdir/ 会把 file.txt 移动到 /newdir/ 目录。
      • 示例:mv oldname.txt newname.txt 会把文件 oldname.txt 重命名为 newname.txt
  • Windows

    • move:Windows 中的 move 命令用于移动文件或目录,功能与 mv 类似。
      • 示例:move file.txt D:\newdir\ 会把 file.txt 移动到 D:\newdir\ 目录。
  1. 删除文件或文件夹
  • Linux

    • rm:用于删除文件或目录。rm 默认只删除文件,要删除目录,需要使用 -r 选项(递归删除)。
      • 示例:rm file.txt 删除文件。
      • 示例:rm -r dir 删除目录及其内容。
  • Windows

    • del:用于删除文件。
      • 示例:del file.txt 删除文件。
    • rmdirrd:用于删除空目录。如果目录中有内容,需要使用 /s 选项递归删除。
      • 示例:rmdir /s /q dir 删除目录及其所有内容,/q 是安静模式,不提示确认。
  1. 拷贝文件或文件夹
  • Linux

    • cp:用于复制文件或目录。cp 命令默认只复制文件,若要复制目录,需要使用 -r 选项。
      • 示例:cp file.txt /newdir/ 会将 file.txt 复制到 /newdir/ 目录。
      • 示例:cp -r dir /newdir/ 会将整个目录 dir 复制到 /newdir/ 中。
  • Windows

    • copy:用于复制文件。
      • 示例:copy file.txt D:\newdir\ 会将 file.txt 复制到 D:\newdir\ 目录。
    • xcopy:用于复制文件和目录,包括子目录。
      • 示例:xcopy /E dir D:\newdir\ 会将目录 dir 及其内容复制到 D:\newdir\ 中。

    总结:

操作Linux 命令Windows 命令
创建文件touchtype nul > filename
创建文件夹mkdirmkdirmd
移动文件/文件夹mvmove
删除文件rmdel
删除文件夹rm -rrmdirrd
拷贝文件cpcopy
拷贝文件夹cp -rxcopy

vim

vim 是Linux的文本编辑器,有很多命令和模式。

不同模式

Vim 的操作依赖于 不同的模式,每个模式下键盘按键的功能不同。、

  1. 普通模式(Normal Mode)
  • 功能:这是 Vim 的默认模式,也是最常用的模式。在普通模式下,你可以执行各种命令和操作,如移动光标、删除字符、复制、粘贴、查找等。
  • 操作:按键并不直接插入字符,而是触发命令。例如,按 h 移动光标向左,按 d 删除文本,按 yy 复制一行,按 p 粘贴等。
  • 如何进入:启动 Vim 后默认进入普通模式。如果你在其他模式(如插入模式)下,可以按 Esc 返回普通模式。
  1. 插入模式(Insert
  • 功能:在插入模式下,你可以像在普通文本编辑器中一样输入字符。你在此模式下编辑文本。
  • 操作:按键直接插入文本,类似于大多数文本编辑器中的操作。
  • 如何进入:按 i(插入当前位置)、I(行首插入)、a(当前光标后插入)、A(行尾插入)、o(下一行插入)、O(上一行插入)等都可以进入插入模式。
  • 如何退出:按 Esc 返回普通模式。
  1. 命令模式(Command-Line Mode)

    • 功能:命令模式允许你输入文件操作命令,如保存、退出、搜索、替换等。在命令模式下,你可以执行各种与文件操作相关的命令。
    • 操作:常用命令包括 :w 保存文件、:q 退出、:wq 保存并退出等。
    • 如何进入:在普通模式下,按 : 进入命令模式。
    • 如何退出:按 Esc 返回普通模式。
  2. 可视模式(Visual Mode)

  • 功能:可视模式允许你选择文本,然后对选择的文本进行操作(如复制、删除、格式化等)。
  • 操作:按键用于操作选中的文本。例如,按 d 删除选中的文本,按 y 复制选中的文本。
  • 如何进入:按 v 进入字符可视模式,按 V 进入行可视模式,按 Ctrl-v 进入块可视模式。
  • 如何退出:按 Esc 返回普通模式。
  1. 替换模式(Replace Mode)
  • 功能:替换模式允许你在光标下直接替换字符。
  • 操作:按下一个字符会替换当前光标位置的字符。
  • 如何进入:按 R 进入替换模式,按 r 替换当前光标位置的字符。
  • 如何退出:按 Esc 返回普通模式。
  1. 底部命令行模式(Ex Mode)
  • 功能:底部命令行模式允许执行更复杂的命令,通常在执行 :ex:visual 等命令时使用。
  • 操作:这个模式主要用于复杂的文件操作和搜索等。
  • 如何进入:通常通过 : 进入命令模式后执行特定命令。

总结 Vim 模式:

模式简述如何进入如何退出
普通模式默认模式,进行文本编辑、移动光标、执行命令等启动 Vim 或按 Esc
插入模式输入文本模式i(插入),a(追加)等进入Esc 返回普通模式
命令模式执行命令,如保存、退出、查找、替换等普通模式按 : 进入Esc 返回普通模式
可视模式选择文本模式,进行文本操作(如复制、删除等)v(字符模式),V(行模式),Ctrl-v(块模式)Esc 返回普通模式
替换模式替换模式,直接替换光标下的字符R 进入替换模式Esc 返回普通模式
底部命令行模式用于执行复杂的操作命令,如执行多行操作或编辑命令。主要用于高级操作: 进入命令行模式Esc 返回普通模式

保存和退出

  1. 保存文件并退出 (:wq)

    • 命令:wq:x
    • 功能:保存文件并退出 vim
    • 操作步骤
      1. Esc 键确保你处于 普通模式(命令模式)。
      2. 输入 :wq,然后按 回车
      3. :w 表示保存文件,q 表示退出。
      • 或者,你可以使用 :x,它的效果与 :wq 一样,都会保存并退出。

    示例

    :wq
    

    或者:

    :x
    
  2. 仅保存文件 (:w)

    • 命令:w
    • 功能:保存文件,但不退出 vim
    • 操作步骤
      1. Esc 键确保你处于 普通模式
      2. 输入 :w,然后按 回车

    示例

    :w
    
    • 这会将当前编辑的内容保存到文件中,但仍然留在 vim 中继续编辑。
  3. 仅退出 (:q)

  • 命令:q
  • 功能:退出 vim,如果文件已经保存,直接退出;如果文件没有保存,会提示警告。
  • 操作步骤
    1. Esc 键确保你处于 普通模式
    2. 输入 :q,然后按 回车

示例

:q
  • 如果文件没有保存,vim 会显示警告信息,如 E37: No write since last change (add ! to override),表示文件有未保存的更改。
  1. 强制退出 (:q!)

    • 命令:q!
    • 功能:强制退出 vim,不保存文件。
    • 操作步骤
      1. Esc 键确保你处于 普通模式
      2. 输入 :q!,然后按 回车
    • 这个命令会 丢弃所有未保存的更改,直接退出。

    示例

    :q!
    
  2. 保存文件到不同的文件名 (:w filename)

  • 命令:w filename
  • 功能:将文件保存到一个新的文件名。
  • 操作步骤
    1. Esc 键确保你处于 普通模式
    2. 输入 :w newfile.txt,然后按 回车

示例

:w newfile.txt

Git

  1. pull过来,merge处理冲突,同时保证最新!
  2. git bash here还是普通文件夹,只有git init才变成了本地仓库
  3. git checkout 切换之前,必须git status 确保没有commit剩余!!!否则报错
  4. 区别
命令功能描述备注
git commit提交已通过 git add 暂存的文件需要手动使用 git add 添加更改文件
git commit -a提交所有已跟踪文件的更改(自动暂存已更改的文件)不会提交新文件,需要使用 git add 添加新文件
git add将指定的文件更改添加到暂存区可以指定文件名或使用通配符(如 *
git add -A将 所有更改(包括新增、修改、删除)添加到暂存区更安全的选项,可以确保不会错过任何修改

相关文章:

  • mysql数据库的线程连接数、状态 、最大并发数、缓存等参数配置
  • Axios 介绍及使用指南
  • 字节跳动开源 Godel-Rescheduler:适用于云原生系统的全局最优重调度框架
  • 高并发三剑客-本地缓存之王Caffeine-01缓存应用
  • 《忘尘谷》音阶与调性解析
  • 非参数 Spearman 相关在多组学分析中的力量及AI拓展
  • langchain框架-文档加载器详解
  • Arm系统ubuntu20.04中自带的火狐浏览器打开网页B站视频和百度网盘网页视频,视频无法打开,并且没有声音——(本质上解决)
  • DeepSeek-V3技术架构深度解析与性能优化实践
  • 力扣每日打卡 1534. 统计好三元组 (简单)
  • 从代码学习深度学习 - 自注意力和位置编码 PyTorch 版
  • 记录 | Pycharm中如何调用Anaconda的虚拟环境
  • 基于MCP协议的多模态思维链在医疗系统改造中的融合研究
  • 【Code】《代码整洁之道》笔记-Chapter16-重构SerialDate
  • 驱动开发硬核特训 · USB 摄像头专题:原理 + 实战深度解析(基于 linux-imx)
  • Python爬虫第14节-如何爬取Ajax的数据
  • 代码随想录笔记-哈希表
  • 万字长篇————C语言指针学习汇总
  • 数据库表设计五层分类系统表设计
  • 测试定时发布
  • 马上评|“AI神医宇宙”欺诈,连演员都不请了
  • 2025上海车展的三个关键词:辅助驾驶、性价比,AI生态
  • 四川邻水县县长石国平拟任县(市、区)党委书记
  • 今年3月全国查处违反中央八项规定精神问题16994起
  • 商务部:将打造一批国际消费集聚区和入境消费友好商圈
  • 闲暇时间的“堕落”