Linux 命令行与 CMD 不同之处

Linux 命令行与 CMD 不同之处

Windows CMD 或者 PowerShell 程序和 Linux 命令行之间有很多差异,如果没有理解它们之间的差异可能会为之困扰。

  1. 在 Linux 下的 PATH 环境于 Windows 不同。

  2. 在 Windows 中,当前目录被认为是路径中的第一个文件夹,尽管该目录没有在环境变量中列出。而在 Linux 下,当前目录不会在路径中显示表示。

  3. Linux 下设置环境变量会被认为是风险操作。

  4. 在 Linux 的当前目录执行程序,需要使用 ./(代表当前目录的相对目录表示方式)前缀。

./my_program

而不是

my_program
  1. Windows 环境变量的路径中是以 ;(分号) 分割。在 Linux 中,由 : 分割环境变量。

  2. 在 Linux 中路径由 / 字符分隔,而在 Windows 目录中路径由 \ 字符分割。

因此 Windows 中典型的环境变量会像这样:

PATH="C:\Program Files;C:\Program Files\Firefox;"
while on Linux it might look like:
PATH="/usr/bin:/opt/mozilla/firefox"
  1. 在 Linux 中环境变量由 $ 拓展,而在 Windows 中您需要使用百分号(就是这样: %PATH%)。

  2. 在 Linux 中,通过 - 使用命令选项,而在 Windows 中,使用选项要通过 / 字符。所以,在 Linux 中您应该:

a_prog -h

而不是

a_prog /h
  1. 在 Linux 下,文件拓展名并没有意义。例如,将 myscript 重命名为 myscript.bat 并不会因此而可执行,需要设置文件的执行权限。文件执行权限会在下次的内容中覆盖到。

  2. 在 Linux 中,如果文件或者目录名以 . 字符开头,意味着它们是隐藏文件。比如,如果您申请编辑 .bashrc 文件,您不能在 home 目录中找到它,但是它可能真的存在,只不过它是隐藏文件。在命令行中,您可以通过 ls 命令的 -a 选项查看隐藏文件,比如:

ls -a

在 Linux 中,普通的命令与 Windows 的命令不尽相同。下面的表格显示了常用命令中 CMD 命令和 Linux 命令行的差异。

操作 Windows Linux
目录分隔符 \ /
PAHT 分割符 ; :
命令选项 \h -h
列举目录 dir ls
输出工作目录 cd pwd
输出文件 echo echo
创建目录 mkdir mkdir
删除文件 del rm
删除目录 rmdir rmdir
重命名 rename mv
移动文件 move mv

相关 CMD 介绍.

动枝生乱影,吹花送远香。