Git Bash 和 cmd 都提供了命令行,操作方便非常实用,我们以 Git Bash 为例来总结一下几个常用的命令。
一、基础知识
-
绝对路径与相对路径的区别:
以/
开头的路径就是绝对路径,不是这种开头的就是相对路径。 - Windows 系统中,Git Bash 可以兼容Linux的命令,而 cmd 不可以兼容。因此有些命令在 cmd 中无法运行。
- 一些基本的符号含义:
-
~
:用户目录 -
/
:根路径,即整个系统 -
.
:所在当前目录 -
..
:父级目录,即当前目录的上级目录 -
$
:提示符,提示可以输入命令了
-
-
tab键
—— 补全命令
回车键
—— 执行命令
二、命令浅析
1. ls
-
ls
是 list 的缩写,即罗列。
用来查看当前目录下的路径,包括目录和文件(不包括隐藏文件,即以.
和..
开头的文件不显示)。
$ ls
-
ls命令的选项
ls -a
:查看当前目录下的所有路径,包括隐藏文件
ls -l
:查看当前目录下所有路径的详细信息
ls -al
:即ls -a
和选项ls -l
的集合,查看当前目录下所有路径(包括隐藏文件)的详细信息 - 其他用法
- 若不在想要查看路径的目录下,可以有两种方式查看:
- 用
cd 目录名
切换到要查看的目录,再用ls
命令进行查看。 - 直接用
ls 目录名
的方式查看。
- 用
- 运行
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
- 如果之前没有这个文件,则创建这个文件。
- 若之前这个文件已存在,则改变文件的最后更新时间。
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来学习。
- 进入网站,在搜索框输入要查询的命令,以
ls -a
为例,并点击EXPLAIN键查询。 -
网站给出所查询命令的解释:
-
点击蓝色命令,便可了解到与此命令相关的知识延伸。