CMD

来自Wikioe
Eijux讨论 | 贡献2021年11月24日 (三) 00:17的版本
跳到导航 跳到搜索


shell bash cmd

DOS与windows中cmd区别

DOS(Disk Operating System):磁盘操作系统。
cmd(command):命令提示符。
操作系统可以分成核心(kernel)和外壳(Shell)两部分,其中,Shell是操作系统与外部的主要接口,位于操作系统的外层,为用户提供与操作系统核心沟通的途径。在windows系统中见到的桌面即explorer.exe(资源管理器)是图形shell,power shell就是命令行shell。而cmd是power shell的子集。
二者最大区别,一个是操作系统、一个是接口,只是cmd中的某些命令和dos中的命令相似。cmd属于windows系统的一部分,dos本身就是一个系统,在dos系统下可以删除,修复windows系统,而在cmd下则不行。

Linux下的shell是什么

Shell俗称壳(用来区别于核 kernel),是一种“命令解析器”。按照ABS的定义,shell是The shell is a command interpreter. More than just the insulating layer between the operating system kernel and the user, it's also a fairly powerful programming language。分为图形界面shell和命令行shell两大类。用户可以通过Shell与操作系统进行交互:等待输入,向操作系统解释输入,并且处理各种各样的操作系统的输出结果。
不同系统有不同的shell,如bash、C shell、windows power shell 等等;在linux系统中,通常是Bourne Again shell ( 即bash)。

linux shell即bash和windows cmd区别

shell定义是:The shell is a command interpreter. More than just the insulating layer between the operating system kernel and the user, it's also a fairly powerful programming language.即shell是一个命令解释器(也是一种应用程序),处于内核和用户之间,负责把用户的指令传递给内核并且把执行结果回显给用户,同时,shell也可以作为一门强大的编程语言。在linux/unix平台上,shell多半默认为Bash shell。
cmd是Command shell的简写,微软的定义是:The command shell is a separate software program that provides direct communication between the user and the operating system. The non-graphical command shell user interface provides the environment in which you run character-based applications and utilities. The command shell executes programs and displays their output on the screen by using individual characters similar to the MS-DOS command interpreter Command.com.(CommandShell是一个独立的应用程序,它为用户提供对操作系统直接通信的功能,它为基于字符的应用程序和工具提供了非图形界面的运行环境,它执行命令并在屏幕上回显MS-DOS风格的字符。)
所以,可以近似地认为linux shell=bash而windows shell=power shell,而power shell是cmd的超集。作为用户与操作系统的交互接口,bash和power shell要比cmd强大很多。

windows下能用bash shell吗

bash是Linux和Unix下的shell;MS Windows下为PowerShell,能提供操作windows的完全功能。
想要在Windows下体验bash,可以考虑虚拟机(系统与window相独立)或者WSL(可在原生运行Linux二进制可执行文件)等方式。

脚本语言和普通的编程语言有什么区别

编程语言有“编写-编译-链接-运行”的流程,而脚本语言是“解释-执行”而非编译,脚本语言的程序代码即使最终的可执行文件,通过对应的解释器解释执行即可,所以更方便快捷。
每种脚本语言都需要其对应的解释器。如Perl、Python、Ruby、JavaScript等都是脚本语言,shell也属于一种比较特殊的脚本语言。


del 与 rd、rmdir

del 用于删除文件,rd、rmdir 用于删除目录:

  1. C:\Users\eijux>del /?
    删除一个或多个文件。
    
    DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
    ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
    
      names         指定一个或多个文件或者目录列表。
                    通配符可用来删除多个文件。
                    如果指定了一个目录,该目录中的所
                    有文件都会被删除。
    
      /P            删除每一个文件之前提示确认。
      /F            强制删除只读文件。
      /S            删除所有子目录中的指定的文件。
      /Q            安静模式。删除全局通配符时,不要求确认
      /A            根据属性选择要删除的文件
      属性          R  只读文件            S  系统文件
                    H  隐藏文件            A  准备存档的文件
                    I  无内容索引文件      L  重新分析点
                    O  脱机文件            -  表示“否”的前缀
    
    如果命令扩展被启用,DEL 和 ERASE 更改如下:
    
    /S 开关的显示句法会颠倒,即只显示已经
    删除的文件,而不显示找不到的文件。
    
    C:\Users\eijux>
    
    • del 可以用来删除某一文件夹中的所有文件(但不包括文件夹和子文件夹???);
    • “del /F”可以用来删除只读文件;
  2. C:\Users\eijux>rd /?
    删除一个目录。
    
    RMDIR [/S] [/Q] [drive:]path
    RD [/S] [/Q] [drive:]path
    
        /S      除目录本身外,还将删除指定目录下的所有子目录和
                文件。用于删除目录树。
    
        /Q      安静模式,带 /S 删除目录树时不要求确认
    
    C:\Users\eijux>
    
    • “rd /s”可以用来删除非空的文件夹;
  3. C:\Users\eijux>rmdir /?
    删除一个目录。
    
    RMDIR [/S] [/Q] [drive:]path
    RD [/S] [/Q] [drive:]path
    
        /S      除目录本身外,还将删除指定目录下的所有子目录和
                文件。用于删除目录树。
    
        /Q      安静模式,带 /S 删除目录树时不要求确认
    
    C:\Users\eijux>
    


示例:

del /S /Q E:\Downloads\qBittorrent\"HE..."
del /S /Q E:\Downloads\qBittorrent\"SS..."

rmdir /S /Q E:\Downloads\qBittorrent\"HE..."
rmdir /S /Q E:\Downloads\qBittorrent\"SS..."

FAQ

在当前目录下,打开cmd命令窗口

  1. 方法一:
    在当前目录下(或指定文件夹),按下:shift + 鼠标右键,会出现“在此处打开命令窗口”的字样,然后点击即可。
  2. 方法二:
    在当前目录下,在文件管理器的地址栏直接输入 cmd 回车即可打开(同样也可打开其它命令!)。

powershell无法复制粘贴

在powershell标题栏右键,“属性”->“选项”中的“标题选项”,选中“快速编辑模式”。
ctrl+c/v不好使就用鼠标右键的复制粘贴。