轻松学习命令行基础

作者: 养乐多__ | 来源:发表于2018-08-05 16:14 被阅读48次

Git Bash和cmd都提供了命令行,操作方便非常实用,我们以Git Bash为例来总结一下几个常用的命令。

一、基础知识

  1. 绝对路径相对路径的区别:
    / 开头的路径就是绝对路径,不是这种开头的就是相对路径。
  2. Windows系统中,Git Bash可以兼容Linux的命令,而cmd不可以兼容。因此有些命令在cmd中无法运行。
  3. 一些基本的符号含义:
    • ~:用户目录
    • /:根路径,即整个系统
    • .:所在当前目录
    • ..:父级目录,即当前目录的上级目录
    • $:提示符,提示可以输入命令了
  4. tab键——补全命令
    回车键——执行命令

二、命令浅析

1. ls

  • ls是list的缩写,即罗列。
    用来查看当前目录下的路径,包括目录和文件(不包括隐藏文件,即以...开头的文件不显示)。
$  ls
  • ls命令的选项
    ls -a:查看当前目录下的所有路径,包括隐藏文件
    ls -l:查看当前目录下所有路径的详细信息
    ls -al:即ls -a和选项ls -l的集合,查看当前目录下所有路径(包括隐藏文件)的详细信息
  • 其他用法
  1. 若不在想要查看路径的目录下,可以有两种方式查看:
    • cd 目录名切换到要查看的目录,再用ls命令进行查看。
    • 直接用ls 目录名的方式查看。
  2. 运行ls命令查看详细信息的结果:
    管理员的权限、用户所在组的权限、其他人的权限
    d:目录,-:文件,r:是否可读,w:是否可写,x:是否可执行

2. cat

  • cat是catch的缩写,表示在标准输出上打印(即查看文件内容)或连接文件。
$  cat 文件名
$  cat 文件名1 文件名2 > 文件名3
  • 用法
    若文件1.txt内容为Hello;文件2.txt内容为World;
    cat 1.txt:显示文件1.txt里的内容,会输出Hello。
    cat 1.txt 2.txt > 3.txt:将文件1.txt和2.txt的内容合并起来放入3.txt中,3.txt原先的内容被替代(若3.txt不存在则先创建一个)。这时cat 3.txt,会输出Hello World。

3. mv

  • mv是move的缩写,用来移动、覆盖或重命名文件。
    后缀可以随意改变。
$  move 源文件 目标文件
  • 用法
    默认命令中所用到的文件1.txt和2.txt,文件夹demo都已存在。例:
    mv 1.txt demo:将文件1.txt移动到文件夹demo中
    mv 1.txt 11.txt:将文件1.txt重命名为11.txt
    mv 1.txt 2.txt:文件1.txt被文件2.txt覆盖,即1.txt名字变为2.txt,之前的2.txt消失

4. touch

  • touch:创建文件/改变文件最后更新时间
$  touch 文件名
  • 使用情况
    例:touch a.txt
    1、如果之前没有这个文件,则创建这个文件。
    2、若之前这个文件已存在,则改变文件的最后更新时间。

5. mkdir

  • mkdir 目录名:创建目录
  • mkdir -p 目录路径:一次创建多个嵌套目录
    例:mkdir -p "demo-1/demo-2/demo-3"
    引号加不加都可以,如果命令里有特殊字符(如空格),必须加引号,把它标记为一个整体。

6. echo

  • echo '内容' > 文件路径:用重定向创建文件
  • echo '内容' >> 文件路径:追加文件内容
  • echo '内容' >! 文件路径:强制创建文件

例:echo "hello" > 1.txt 初次创建文件1.txt。
echo "hi" > 1.txt Windows直接用新内容替换掉之前的内容,Linux会报错文件已存在。
echo "haha" >> 1.txt 追加文件内容
echo "world" >! 1.txt Window不可以用,会创建一个以“!”命名的文件;Linux强制重定向,覆盖之前的内容。

7. cp

  • cp 源路径 目标路径:复制文件(若目标路径已存在,直接覆盖)。
  • cp -r 源路径 目标路径:复制目录(-r:递归)

8. rm

  • rm 文件路径:删除文件
  • rm -f 文件路径:强制删除文件(-f:强制)
  • rm -r 目录路径:删除目录( -r:递归)
  • rm -rf 目录路径:强制删除目录 (-f:强制)
    注:目录只能递归地删除,不加-r,则目录删不掉;不加-f,则会一遍遍地询问是否删除

9. 其他命令

  • cd 目录名:进入目录
    例:cd..cd../:进入上级目录
  • pwd:快速查看当前路径
  • whoami:快速查看用户名
  • tree 目录名:查看目录结构 (Windows不支持)
  • ln -s 真实文件 链接:建立软连接(类似于替身,同生同灭,Windows不支持)
  • man 命令:查看某个的手册(manu:手册)
  • tldr 命令:快速知道一个命令应该怎么用(too long didno't read)
  • curl -L https://www.baidu.com > baidu.html:下载文件
  • wget -p -H -e robots=off https://www.baidu.com:拷贝网页 (Windows 不支持 wget)
  • df -kh:磁盘占用
  • du -sh .:当前目录大小
  • du -h:各文件大小
  • start 文件名:打开文件
  • clear:清屏
  • history:查看操作历史

三、explainshell网站用法

我们在学习命令行的过程中,会经常遇到不会用的命令,或不清楚一些命令参数的用法等问题,向大家推荐网站explainshell.com来学习。

  1. 进入网站,在搜索框输入要查询的命令,以ls -a为例,并点击EXPLAIN键查询。 搜索框输入查询命令
  2. 网站给出所查询命令的解释: 查询到的结果
  3. 点击蓝色命令,便可了解到与此命令相关的知识延伸。 命令延伸

相关文章

网友评论

    本文标题:轻松学习命令行基础

    本文链接:https://www.haomeiwen.com/subject/vxlbvftx.html