首页 > 系统相关 >Windows基础(1)命令学习

Windows基础(1)命令学习

时间:2024-11-01 20:46:57浏览次数:3  
标签:文件 显示 删除 Windows 指定 学习 命令 参数 txt

Windows基础(1)

  • 系统配置

    • linux:/etc和/proc(存储信息在目录)
    • windows:注册表(存储信息在注册表里)
  • windows的四种shell接口

    1. GUI图形化用户界面,操作简单
    2. cmd命令行用户接口,包含一组预定义的命令
    3. wmic微软基于wbem的实现,后被powershell取代
    4. powershell自动化脚本框架,支持.net架构

    wsl是在windows上运行的子系统


背诵默写

cd

显示当前目录的名称或将其更改

  1. 改变到指定的目录

    cd /path/to/directory
    

    这会将当前工作目录改变到指定的路径。

  2. 回到用户的主目录

    cd ~
    

    ~ 符号代表当前用户的主目录。

  3. 回到上一个工作目录

    cd -
    

    - 符号代表上一个工作目录。

  4. 改变到当前目录的父目录

    cd ..
    

    .. 代表当前目录的父目录。

  5. 不带参数的 cd

    cd
    

    不带参数时,cd 命令会将当前工作目录改变到用户的主目录。

  6. 使用相对路径

    cd ./directory
    

    ./ 表示当前目录,所以这会将目录改变到当前目录下的 directory 子目录。

  7. 使用环境变量

    cd ${HOME}/Documents
    

    $HOME 是一个环境变量,代表用户的主目录。

  8. 列出目录内容

    cd -P /path/to/directory
    

    -P 选项会改变到逻辑路径,而不是物理路径(符号链接)。

  9. 把上个命令的参数作为cd参数使用

    cd !$
    

cmd

打开另一个Windows命令解释程序窗口

  1. 查看 cmd命令的帮助信息

    cmd /?
    
  2. 执行批处理脚本

    cmd 命令可以用来执行批处理脚本(.bat 或 .cmd 文件)。例如:

    cmd /c echo Hello World
    

    这条命令会显示 “Hello World” 然后关闭命令提示符窗口。

    启动 Windows 命令解释器的一个新实例
    
    CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
        [[/S] [/C | /K] string]
    
    /C      执行字符串指定的命令然后终止
    /K      执行字符串指定的命令但保留
    /S      修改 /C 或 /K 之后的字符串处理(见下)
    /Q      关闭回显
    /D      禁止从注册表执行 AutoRun 命令(见下)
    /A      使向管道或文件的内部命令输出成为 ANSI
    /U      使向管道或文件的内部命令输出成为
            Unicode
    /T:fg   设置前台/背景颜色(详细信息见 COLOR /?)
    /E:ON   启用命令扩展(见下)
    /E:OFF  禁用命令扩展(见下)
    /F:ON   启用文件和目录名完成字符(见下)
    /F:OFF  禁用文件和目录名完成字符(见下)
    /V:ON   使用 ! 作为分隔符启用延迟的环境变量
            扩展。例如,/V:ON 会允许 !var! 在执行时
            扩展变量 var。var 语法会在输入时
            扩展变量,这与在一个 FOR
            循环内不同。
    /V:OFF  禁用延迟的环境扩展。
    
    注意,如果字符串加有引号,可以接受用命令分隔符 "&&"
    分隔多个命令。另外,由于兼容性
    原因,/X 与 /E:ON 相同,/Y 与 /E:OFF 相同,且 /R 与
    /C 相同。任何其他开关都将被忽略。
    
    如果指定了 /C 或 /K,则会将该开关之后的
    命令行的剩余部分作为一个命令行处理,其中,会使用下列逻辑
    处理引号(")字符:
    
        1.  如果符合下列所有条件,则会保留
            命令行上的引号字符:
    
            - 不带 /S 开关
            - 正好两个引号字符
            - 在两个引号字符之间无任何特殊字符,
              特殊字符指下列字符: &<>()@^|
            - 在两个引号字符之间至少有
              一个空格字符
            - 在两个引号字符之间的字符串是某个
              可执行文件的名称。
    
        2.  否则,老办法是看第一个字符
            是否是引号字符,如果是,则去掉首字符并
            删除命令行上最后一个引号,保留
            最后一个引号之后的所有文本。
    
    如果 /D 未在命令行上被指定,当 CMD.EXE 开始时,它会寻找
    以下 REG_SZ/REG_EXPAND_SZ 注册表变量。如果其中一个或
    两个都存在,这两个变量会先被执行。
    
        HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
    
            和/或
    
        HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
    
    命令扩展是按默认值启用的。你也可以使用 /E:OFF ,为某一
    特定调用而停用扩展。你
    可以在机器上和/或用户登录会话上
    启用或停用 CMD.EXE 所有调用的扩展,这要通过设置使用
    REGEDIT.EXE 的注册表中的一个或两个 REG_DWORD 值:
    
        HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions
    
            和/或
    
        HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions
    
    到 0x1 或 0x0。用户特定设置
    比机器设置有优先权。命令行
    开关比注册表设置有优先权。
    
    在批处理文件中,SETLOCAL ENABLEEXTENSIONS 或 DISABLEEXTENSIONS 参数
    比 /E:ON 或 /E:OFF 开关有优先权。请参阅 SETLOCAL /? 获取详细信息。
    
    命令扩展包括对下列命令所做的
    更改和/或添加:
    
        DEL or ERASE
        COLOR
        CD or CHDIR
        MD or MKDIR
        PROMPT
        PUSHD
        POPD
        SET
        SETLOCAL
        ENDLOCAL
        IF
        FOR
        CALL
        SHIFT
        GOTO
        START (同时包括对外部命令调用所做的更改)
        ASSOC
        FTYPE
    
    有关特定详细信息,请键入 commandname /? 查看。
    
    延迟环境变量扩展不按默认值启用。你
    可以用/V:ON 或 /V:OFF 开关,为 CMD.EXE 的某个调用而
    启用或停用延迟环境变量扩展。你
    可以在机器上和/或用户登录会话上启用或停用 CMD.EXE 所有
    调用的延迟扩展,这要通过设置使用 REGEDIT.EXE 的注册表中的
    一个或两个 REG_DWORD 值:
    
        HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion
    
            和/或
    
        HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion
    
    到 0x1 或 0x0。用户特定设置
    比机器设置有优先权。命令行开关
    比注册表设置有优先权。
    
    在批处理文件中,SETLOCAL ENABLEDELAYEDEXPANSION 或 DISABLEDELAYEDEXPANSION
    参数比 /V:ON 或 /V:OFF 开关有优先权。请参阅 SETLOCAL /?
    获取详细信息。
    
    如果延迟环境变量扩展被启用,
    惊叹号字符可在执行时间被用来
    代替一个环境变量的数值。
    
    你可以用 /F:ON 或 /F:OFF 开关为 CMD.EXE 的某个
    调用而启用或禁用文件名完成。你可以在计算上和/或
    用户登录会话上启用或禁用 CMD.EXE 所有调用的完成,
    这可以通过使用 REGEDIT.EXE 设置注册表中的下列
     REG_DWORD 的全部或其中之一:
    
        HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
        HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
    
            和/或
    
        HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
        HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
    
    由一个控制字符的十六进制值作为一个特定参数(例如,0x4
    是Ctrl-D,0x6 是 Ctrl-F)。用户特定设置优先于机器设置。
    命令行开关优先于注册表设置。
    
    如果完成是用 /F:ON 开关启用的,两个要使用的控制符是:
    目录名完成用 Ctrl-D,文件名完成用 Ctrl-F。要停用
    注册表中的某个字符,请用空格(0x20)的数值,因为此字符
    不是控制字符。
    
    如果键入两个控制字符中的一个,完成会被调用。完成功能将
    路径字符串带到光标的左边,如果没有通配符,将通配符附加
    到左边,并建立相符的路径列表。然后,显示第一个相符的路
    径。如果没有相符的路径,则发出嘟嘟声,不影响显示。之后,
    重复按同一个控制字符会循环显示相符路径的列表。将 Shift
    键跟控制字符同时按下,会倒着显示列表。如果对该行进行了
    任何编辑,并再次按下控制字符,保存的相符路径的列表会被
    丢弃,新的会被生成。如果在文件和目录名完成之间切换,会
    发生同样现象。两个控制字符之间的唯一区别是文件完成字符
    符合文件和目录名,而目录完成字符只符合目录名。如果文件
    完成被用于内置式目录命令(CD、MD 或 RD),就会使用目录
    完成。
    用引号将相符路径括起来,完成代码可以正确处理含有空格
    或其他特殊字符的文件名。同时,如果备份,然后从行内调用
    文件完成,完成被调用时位于光标右方的文字会被调用。
    
    需要引号的特殊字符是:
         <space>
         ()[]{}^=;!'+,`~(&()
    

copy

将至少一个文件复制到另一个位置

  1. 复制单个文件

    copy source_file destination_file
    

    source_file 复制到 destination_file。如果 destination_file 已存在,它将被覆盖。

  2. 复制多个文件到同一目录

    copy file1.txt file2.txt destination_directory
    

    file1.txtfile2.txt 复制到 destination_directory 目录中。

  3. 使用通配符复制多个文件

    copy *.txt destination_directory
    

    将当前目录下所有扩展名为 .txt 的文件复制到 destination_directory 目录中。

  4. 复制目录及其子目录中的所有文件

    copy /S source_directory destination_directory
    

    /S 参数用于复制 source_directory 目录及其所有子目录中的文件到 destination_directory

  5. 复制文件时保留属性

    copy /Y source_file destination_file
    

    /Y 参数用于在覆盖文件时不提示确认,同时保留源文件的属性。

  6. 复制文件并显示进度

    copy /V source_file destination_file
    

    /V 参数用于在复制过程中显示详细的进度和状态信息。

  7. 复制文件并设置新的属性

    copy /D:mm/dd/yyyy source_file destination_file
    

    /D 参数用于设置复制文件的新日期,格式为 mm/dd/yyyy

  8. 复制文件并忽略现有文件

    copy /I source_file destination_file
    

    /I 参数用于在目标位置已有文件时提示用户是否需要覆盖。

  9. 合并多个文件到一个文件

    copy file1.txt+file2.txt destination_file.txt
    

    file1.txtfile2.txt 合并到 destination_file.txt 中。

  10. 使用日志文件记录复制操作

    copy /L source_file destination_file
    

    /L 参数用于记录哪些文件被复制,并将记录保存到日志文件中。

del

删除至少一个文件

  1. 删除单个文件

    del filename
    

    删除当前目录下的 filename 文件。

  2. 删除多个文件

    del file1.txt file2.txt
    

    删除当前目录下的 file1.txtfile2.txt 文件。

  3. 使用通配符删除多个文件

    del *.txt
    

    删除当前目录下所有扩展名为 .txt 的文件。

  4. 强制删除只读文件

    del /F filename
    

    /F 参数用于强制删除只读文件。

  5. 删除文件时不提示确认

    del /Q filename
    

    /Q 参数用于在删除文件时不提示确认。

  6. 删除目录及其子目录中的所有文件

    del /S *.*
    

    /S 参数用于删除当前目录及其所有子目录中的所有文件。

  7. 删除隐藏文件

    del /A:H *.*
    

    /A:H 参数用于删除所有隐藏文件。

  8. 删除系统文件

    del /A:S *.*
    

    /A:S 参数用于删除所有系统文件。

  9. 删除存档属性的文件

    del /A:A *.*
    

    /A:A 参数用于删除所有具有存档属性的文件。

  10. 删除非常规文件

    del /A:-R *.*
    

    /A:-R 参数用于删除所有非系统、非隐藏、非只读文件。

  11. 删除文件并禁止错误报告

    del /AR *.*
    

    /AR 参数用于删除所有文件,并且如果发生错误,不显示错误报告。

  12. 删除文件并显示删除的文件列表

    del /L *.*
    

    /L 参数用于显示将要删除的文件列表,但不实际删除文件。

  13. 删除文件并显示进度

    del /V *.*
    

    /V 参数用于显示详细的进度和状态信息。

  14. 删除文件并保留目录结构

    del /T:source_directory destination_directory
    

    /T 参数用于将 source_directory 目录中的文件删除,但保留目录结构。

dir

显示一个目录中的文件和子目录

  1. 显示当前目录下的文件和子目录

    dir
    

    这将列出当前目录中的所有文件和子目录。

  2. 显示指定目录下的文件和子目录

    dir path
    

    path 替换为你想要查看的目录路径。

  3. 使用通配符显示特定类型的文件

    dir *.txt
    

    这将只列出当前目录下扩展名为 .txt 的文件。

  4. 显示文件的详细信息

    dir /w
    

    /w 参数使输出以宽格式显示,每行显示多个文件名,而不是默认的每行一个。

  5. 显示文件的详细信息,包括隐藏和系统文件

    dir /a
    

    /a 参数显示所有文件,包括通常隐藏的文件。

  6. 只显示隐藏文件

    dir /a:h
    

    /a:h 参数只显示隐藏文件。

  7. 只显示系统文件

    dir /a:s
    

    /a:s 参数只显示系统文件。

  8. 显示文件的详细信息,包括文件大小和日期

    dir /l
    

    /l 参数以列表格式显示文件,包括文件大小和日期。

  9. 显示文件的详细信息,包括文件的短名称

    dir /n
    

    /n 参数以新格式显示文件信息,包括文件的短名称。

  10. 显示文件的详细信息,包括文件的完整路径

    dir /x
    

    /x 参数显示文件的短名称和扩展名,以及文件的完整路径。

  11. 按文件扩展名排序

    dir /e
    

    /e 参数按扩展名排序输出。

  12. 显示目录树

    dir /s
    

    /s 参数显示指定目录下的子目录树。

  13. 显示文件的压缩属性

    dir /tc
    

    /tc 参数显示文件的压缩状态。

  14. 显示文件的备用数据流

    dir /r
    

    /r 参数显示文件的备用数据流。

  15. 显示文件的所有权和访问权限

    dir /q
    

    /q 参数显示文件的所有者和访问权限。

echo

显示消息,或者将命令回显打开或者关闭

在 Windows 中:

  1. 显示文本

    echo Hello, World!
    

    这将在命令行界面显示 “Hello, World!”。

  2. 启用或禁用命令回显

    • 启用命令回显:

      echo on
      
    • 禁用命令回显:

      echo off
      

      这将控制命令执行时是否显示命令本身。

  3. 显示环境变量的值

    echo %PATH%
    

    这将显示当前 PATH 环境变量的值。

  4. 条件性地显示文本

    if exist filename.txt echo File exists.
    

    如果 filename.txt 存在,这将显示 “File exists.”。

  5. 创建或修改文件内容

    echo Hello, World! > filename.txt
    

    这将创建 filename.txt 文件(如果不存在)或覆盖文件内容,并写入 “Hello, World!”。

  6. 追加文本到文件

    echo Another line >> filename.txt
    

    这将在 filename.txt 文件末尾追加一行 “Another line”。

  7. 使用变量

    set var=Some text
    echo %var%
    

    这将显示变量 var 的值 “Some text”。

在 Unix/Linux 中:

  1. 显示文本

    echo "Hello, World!"
    

    这将在终端显示 “Hello, World!”。

  2. 启用或禁用命令回显

    • 这通常通过 shell 的设置来控制,而不是 echo 命令。
  3. 显示环境变量的值

    echo $PATH
    

    这将显示当前 PATH 环境变量的值。

  4. 条件性地显示文本

    if [ -f filename.txt ]; then echo "File exists."; fi
    

    如果 filename.txt 存在,这将显示 “File exists.”。

  5. 创建或修改文件内容

    echo "Hello, World!" > filename.txt
    

    这将创建 filename.txt 文件(如果不存在)或覆盖文件内容,并写入 “Hello, World!”。

  6. 追加文本到文件

    echo "Another line" >> filename.txt
    

    这将在 filename.txt 文件末尾追加一行 “Another line”。

  7. 使用变量

    var="Some text"
    echo $var
    

    这将显示变量 var 的值 “Some text”。

  8. 使用转义字符

    echo "New line\nTab\tBackslash\\"
    

    这将显示 “New line” 后跟一个换行,“Tab” 后跟一个制表符,和 “Backslash” 后跟一个反斜杠。

erase

删除一个或多个文件

  1. 删除单个文件

    erase filename
    

    删除当前目录下的 filename 文件。

  2. 删除多个文件

    erase file1.txt file2.txt
    

    删除当前目录下的 file1.txtfile2.txt 文件。

  3. 使用通配符删除多个文件

    erase *.txt
    

    删除当前目录下所有扩展名为 .txt 的文件。

  4. 强制删除只读文件

    erase /F filename
    

    /F 参数用于强制删除只读文件。

  5. 删除文件时不提示确认

    erase /Q filename
    

    /Q 参数用于在删除文件时不提示确认。

  6. 删除目录及其子目录中的所有文件

    erase /S *.*
    

    /S 参数用于删除当前目录及其所有子目录中的所有文件。

  7. 删除隐藏文件

    erase /A:H *.*
    

    /A:H 参数用于删除所有隐藏文件。

  8. 删除系统文件

    erase /A:S *.*
    

    /A:S 参数用于删除所有系统文件。

  9. 删除存档属性的文件

    erase /A:A *.*
    

    /A:A 参数用于删除所有具有存档属性的文件。

  10. 删除文件并禁止错误报告

    erase /AR *.*
    

    /AR 参数用于删除所有文件,并且如果发生错误,不显示错误报告。

  11. 删除文件并显示删除的文件列表

    erase /L *.*
    

    /L 参数用于显示将要删除的文件列表,但不实际删除文件。

find

在一个或者多个文件中搜索一个文本字符

在 Windows 中:

  1. 在文件中搜索文本字符串

    find "text" filename.txt
    

    这将在 filename.txt 文件中搜索包含 “text” 的行,并显示这些行。

  2. 在多个文件中搜索文本字符串

    find "text" file1.txt file2.txt
    

    这将在 file1.txtfile2.txt 文件中搜索包含 “text” 的行,并显示这些行。

  3. 使用通配符搜索文本字符串

    find "text" *.txt
    

    这将在当前目录下所有扩展名为 .txt 的文件中搜索包含 “text” 的行,并显示这些行。

在 Unix/Linux 中:

  1. 按文件名搜索文件

    find /path/to/search -name "filename"
    

    这将在指定路径下搜索名为 “filename” 的文件。

  2. 按文件类型搜索文件

    find /path/to/search -type f
    

    这将在指定路径下搜索所有类型为文件(f)的文件。

  3. 搜索修改时间在特定天数内的文件

    find /path/to/search -mtime -7
    

    这将在指定路径下搜索过去7天内被修改过的文件。

  4. 搜索大小超过特定值的文件

    find /path/to/search -size +10M
    

    这将在指定路径下搜索大小超过10MB的文件。

  5. 搜索权限符合特定模式的文件

    find /path/to/search -perm 755
    

    这将在指定路径下搜索权限为755的文件。

  6. 使用 -and 组合多个条件

    find /path/to/search -name "*.txt" -and -size +10M
    

    这将在指定路径下搜索所有扩展名为 .txt 且大小超过10MB的文件。

  7. 使用 -exec 对搜索结果执行命令

    find /path/to/search -name "*.txt" -exec grep "text" {} \;
    

    这将在指定路径下所有扩展名为 .txt 的文件中搜索包含 “text” 的行,并显示这些行。

findstr

在多个文件中搜索字符串

  1. 基本搜索

    findstr "search_string" filename.txt
    

    filename.txt 文件中搜索 “search_string” 字符串。

  2. 多个文件搜索

    findstr "search_string" file1.txt file2.txt
    

    在多个文件中搜索 “search_string” 字符串。

  3. 使用通配符搜索

    findstr "search_string" *.txt
    

    在当前目录下所有 .txt 文件中搜索 “search_string” 字符串。

  4. 忽略大小写

    findstr /I "search_string" filename.txt
    

    /I 参数使搜索不区分大小写。

  5. 使用正则表达式

    findstr /R "search_pattern" filename.txt
    

    /R 参数允许使用正则表达式作为搜索模式。

  6. 排除特定字符串

    findstr /V "exclude_string" filename.txt
    

    /V 参数用于显示不包含 “exclude_string” 的行。

  7. 列出文件名

    findstr /M "search_string" *.txt
    

    /M 参数仅列出包含匹配字符串的文件名。

  8. 显示行号

    findstr /N "search_string" filename.txt
    

    /N 参数在输出中包含匹配行的行号。

  9. 显示匹配字符串的偏移量

    findstr /O "search_string" filename.txt
    

    /O 参数显示匹配字符串在行中的偏移量。

  10. 使用多个搜索字符串

    findstr "search_string1" "search_string2" filename.txt
    

    在同一个文件中搜索多个字符串。

  11. 组合多个选项

    findstr /M /N /I "search_string" *.txt
    

    组合使用多个参数,例如列出包含匹配字符串的文件名、显示行号,并且不区分大小写。

  12. 从标准输入中搜索

    type filename.txt | findstr "search_string"
    

    使用管道符 |type 命令的输出传递给 findstr 进行搜索。

mkdir

创建一个目录

在 Windows 中:

  1. 创建一个新目录

    mkdir NewFolder
    

    这将在当前目录下创建一个名为 NewFolder 的新目录。

  2. 创建多级目录

    mkdir C:\NewFolder\SubFolder
    

    这将在 C: 盘的根目录下创建 NewFolder,然后在 NewFolder 内创建 SubFolder

  3. 在同一命令中创建多个目录

    mkdir Folder1 Folder2
    

    这将在当前目录下创建两个新目录 Folder1Folder2

在 Unix/Linux 中:

  1. 创建一个新目录

    mkdir NewFolder
    

    这将在当前目录下创建一个名为 NewFolder 的新目录。

  2. 创建多级目录

    mkdir -p NewFolder/SubFolder
    

    -p 参数用于创建多级目录结构,如果上级目录不存在,也会一并创建。

  3. 在同一命令中创建多个目录

    mkdir Folder1 Folder2
    

    这将在当前目录下创建两个新目录 Folder1Folder2

  4. 创建权限为 755 的目录

    mkdir -m 755 NewFolder
    

    -m 参数用于设置新创建目录的权限,这里的 755 表示目录所有者有读、写、执行权限,而组用户和其他用户只有读和执行权限。

  5. 创建目录并显示消息

    mkdir -v NewFolder
    

    -v 参数用于在创建目录时显示详细信息。

  6. 创建目录并禁止父目录的继承

    mkdir --no-parent NewFolder
    

    --no-parent 参数用于防止创建父目录。

通用注意事项:

  • 使用 mkdir 命令时,如果目标目录已存在,命令将返回错误。在 Unix/Linux 中,可以使用 -p 参数来避免这个错误,因为它会创建所有必需的中间目录。
  • 在 Windows 中,mkdirmd 命令是等效的,mdmkdir 的简写形式。
  • 在 Unix/Linux 中,mkdir 命令是创建目录的标准命令。

more

逐屏显示输出

  1. 分页显示文件内容

    more filename.txt
    

    这将分页显示 filename.txt 文件的内容。

  2. 在命令的输出中使用

    dir | more
    

    这将分页显示 dir 命令的输出,每次显示一屏,允许你按空格键查看下一页。

  3. 显示多个文件的内容

    more file1.txt file2.txt
    

    这将依次分页显示 file1.txtfile2.txt 文件的内容。

  4. 使用 more 命令的 /P 参数

    more /P filename.txt
    

    /P 参数用于以分页模式显示文件内容,这是 more 命令的默认行为。

  5. 使用 more 命令的 /E 参数

    more /E filename.txt
    

    /E 参数用于在遇到错误时不停止显示,例如,当文件不存在时。

  6. 使用 more 命令的 /C 参数

    more /C filename.txt
    

    /C 参数用于显示控制字符(如换行符)的实际字符,而不是它们的控制代码。

  7. 使用 more 命令的 /S 参数

    more /S filename.txt
    

    /S 参数用于抑制空白行的显示,这在查看格式化的文本文件时很有用。

  8. 使用 more 命令的 /T 参数

    more /T filename.txt
    

    /T 参数用于将控制字符转换为可打印的字符。

  9. 使用 more 命令的 /X 参数

    more /X filename.txt
    

    /X 参数用于在显示文件内容时不显示行号。

  10. 退出 more 命令
    当你在查看文件内容时,可以通过按 Q 键退出 more 命令。

move

将一个或者多个文件从一个目录移动到另一个目录

  1. 移动单个文件

    move source_file destination_file
    

    source_file 移动到 destination_file 的位置,如果 destination_file 已存在,它将被覆盖。

  2. 移动多个文件到同一目录

    move file1.txt file2.txt destination_directory
    

    file1.txtfile2.txt 移动到 destination_directory 目录中。

  3. 使用通配符移动多个文件

    move *.txt destination_directory
    

    将当前目录下所有扩展名为 .txt 的文件移动到 destination_directory 目录中。

  4. 重命名文件

    move old_name.txt new_name.txt
    

    old_name.txt 重命名为 new_name.txt

  5. 移动目录

    move source_directory destination_directory
    

    source_directory 移动到 destination_directory 的位置,如果 destination_directory 已存在,source_directory 将被移动到其内部。

  6. 移动目录及其内容

    move /Y source_directory destination_directory
    

    /Y 参数用于在覆盖文件时不提示确认,这里也用于移动目录及其内容。

  7. 移动文件时不提示确认

    move /Y file1.txt destination_directory
    

    /Y 参数用于在覆盖文件时不提示确认。

  8. 显示移动操作的详细信息

    move /V file1.txt destination_directory
    

    /V 参数用于在移动文件时显示详细的进度和状态信息。

  9. 移动文件并保留原始文件的日期和时间戳

    move /Z file1.txt destination_directory
    

    /Z 参数用于在移动文件时保留原始文件的日期和时间戳。

  10. 移动文件并允许覆盖只读文件

    move /K file1.txt destination_directory
    

    /K 参数用于移动文件时允许覆盖只读文件。

ren

重命名、文件命名

  1. 重命名单个文件

    ren oldname.txt newname.txt
    

    将当前目录下名为 oldname.txt 的文件重命名为 newname.txt

  2. 使用通配符重命名多个文件

    ren *.old extension.new
    

    将当前目录下所有扩展名为 .old 的文件重命名为扩展名为 .new

  3. 添加前缀或后缀到文件名

    • 添加前缀:

      ren *.txt prefix*
      

      这将在每个 .txt 文件名前添加 prefix 前缀。

    • 添加后缀:

      ren *.txt *_suffix
      

      这将在每个文件名后添加 _suffix 后缀。

  4. 重命名目录

    ren olddirectory newdirectory
    

    将当前目录下的 olddirectory 目录重命名为 newdirectory

  5. 使用变量进行重命名

    set newname=newfilename
    ren oldfilename %newname%
    

    这将使用变量 newname 的值来重命名 oldfilename

  6. 在批处理文件中使用 ren
    你可以在批处理文件中使用 ren 命令来自动化重命名过程。

  7. 检查重命名操作是否成功
    在某些情况下,你可能希望在重命名操作之后检查操作是否成功。这可以通过条件语句实现:

    ren oldname.txt newname.txt && echo Renamed successfully || echo Rename failed
    

    如果重命名成功,将显示 “Renamed successfully”;如果失败,则显示 “Rename failed”。

请注意,使用 ren 命令时,确保新的文件名不与现有文件名冲突,否则可能会导致数据丢失。如果目标文件名已存在,ren 命令会提示你是否覆盖现有文件。为了避免这种情况,你可以使用 /y 参数来自动覆盖文件,无需确认:

ren oldname.txt newname.txt /y

这将自动重命名 oldname.txtnewname.txt,即使 newname.txt 已存在也不会提示确认。

如果你需要更多关于 ren 命令的帮助,可以在命令提示符窗口中输入 ren /? 来获取帮助文档。

rmdir

删除目录

  1. 删除空目录

    rmdir directory_name
    

    删除名为 directory_name 的空目录。

  2. 删除多个空目录

    rmdir dir1 dir2 dir3
    

    删除多个名为 dir1dir2dir3 的空目录。

  3. 删除目录及其子目录

    rmdir /S directory_name
    

    /S 参数用于删除 directory_name 目录及其所有子目录和文件。

  4. 删除目录后不提示确认

    rmdir /Q directory_name
    

    /Q 参数用于在删除目录时不提示确认。

  5. 删除当前目录及其子目录

    rmdir /S .
    

    这将删除当前目录及其所有子目录和文件。

  6. 使用通配符删除目录

    rmdir /S *dir_name
    

    这将删除所有以 dir_name 结尾的目录及其子目录。

如果目录中包含文件或其他子目录,而你只想删除空目录,那么 rmdir 命令将失败,除非你使用 /S 参数来删除整个目录树。

type

显示文本内容

  1. 显示单个文件的内容

    type filename.txt
    

    这将显示当前目录下名为 filename.txt 的文件的内容。

  2. 显示多个文件的内容

    type file1.txt file2.txt
    

    这将依次显示当前目录下 file1.txtfile2.txt 文件的内容。

  3. 使用通配符显示多个文件的内容

    type *.txt
    

    这将显示当前目录下所有扩展名为 .txt 的文件的内容。

  4. 分页显示文件内容

    type filename.txt | more
    

    使用 |(管道)将 type 命令的输出传递给 more 命令,可以分页显示文件内容,方便查看大文件。

  5. 合并多个文件的内容并显示

    type file1.txt + file2.txt
    

    这将显示 file1.txtfile2.txt 文件的内容,file2.txt 的内容接在 file1.txt 内容之后。

  6. 显示隐藏文件的内容

    type filename.txt
    

    即使文件是隐藏的,type 命令也可以显示其内容,只要你知道文件名。

  7. 将文件内容作为命令执行
    在批处理脚本中,type 命令可以用来显示并执行存储在文件中的命令:

    @echo off
    type batchfile.bat
    

    这将显示并执行 batchfile.bat 文件中的命令。

  8. 显示系统文件的内容

    type filename.sys
    

    type 命令可以显示系统文件的内容,但请注意,直接编辑或修改系统文件可能会导致系统不稳定。

对于非常大的文件,直接使用 type 命令可能会导致屏幕迅速滚动,难以阅读。在这种情况下,使用 type | more 可以更好地查看内容。

attrib

显示或修改文件扩展名关联

  1. 显示文件属性

    attrib filename
    

    显示指定文件的属性,如只读(R)、隐藏(H)、系统(S)和存档(A)。

  2. 设置只读属性

    attrib +R filename
    

    给指定文件添加只读属性。

  3. 清除只读属性

    attrib -R filename
    

    从指定文件移除只读属性。

  4. 设置隐藏属性

    attrib +H filename
    

    给指定文件添加隐藏属性。

  5. 清除隐藏属性

    attrib -H filename
    

    从指定文件移除隐藏属性。

  6. 设置系统属性

    attrib +S filename
    

    给指定文件添加系统属性。

  7. 清除系统属性

    attrib -S filename
    

    从指定文件移除系统属性。

  8. 设置存档属性

    attrib +A filename
    

    给指定文件添加存档属性。

  9. 清除存档属性

    attrib -A filename
    

    从指定文件移除存档属性。

  10. 同时设置多个属性

    attrib +R +H filename
    

    同时给指定文件添加只读和隐藏属性。

  11. 使用通配符更改多个文件的属性

    attrib +H *.*
    

    给当前目录下所有文件添加隐藏属性。

  12. 恢复默认属性

    attrib -H -R -S filename
    

    移除指定文件的所有特殊属性,恢复到默认状态。

  13. 显示目录和子目录中文件的属性

    attrib /S /D
    

    /S 参数用于包括子目录中的文件,/D 参数用于显示目录属性。

  14. 更改目录和子目录中文件的属性

    attrib +H /S
    

    给当前目录及其子目录中的所有文件添加隐藏属性。

bcdedit

设置启动数据库中的属性以控制启动加载

  1. 查看启动配置数据

    bcdedit
    

    这个命令将列出所有的启动配置项。

  2. 查看帮助信息

    bcdedit /? 或 bcdedit /help
    

    显示 bcdedit 命令的帮助信息。

  3. 设置启动默认项

    bcdedit /set {default} device partition=C:
    bcdedit /set {default} integrityservices disable
    

    这些命令将默认启动项设置为 C 盘,并禁用完整性服务。

  4. 启用或禁用启动菜单(Boot Menu)

    bcdedit /set {bootmgr} displaybootmenu yes
    

    这个命令将启用启动菜单。

  5. 设置操作系统加载选项

    bcdedit /set {current} osdevice partition=C:
    

    这个命令将当前启动项的操作系统设备设置为 C 盘。

  6. 添加或修改启动项

    bcdedit /create /d "Windows 7" /application osloader
    bcdedit /set {newGUID} device partition=D:windows
    bcdedit /set {newGUID} path \Windows\system32\winload.exe
    bcdedit /displayorder {newGUID} /addlast
    

    这些命令创建一个新的启动项,并将其添加到启动顺序中。

  7. 删除启动项

    bcdedit /delete {GUID}
    

    这个命令将删除具有指定 GUID 的启动项。

  8. 恢复默认启动配置

    bcdedit /export C:\BCD_Backup\BCD
    bcdedit /import C:\BCD_Backup\BCD
    

    这些命令将导出当前的 BCD 存储到指定目录,然后从该目录恢复 BCD 存储。

  9. 设置启动超时

    bcdedit /timeout 30
    

    这个命令将启动超时设置为 30 秒。

  10. 启用或禁用安全启动

    bcdedit /set {bootmgr} integrityservices enable
    bcdedit /set {bootmgr} integrityservices disable
    

    这些命令分别启用和禁用安全启动。

  11. 设置调试信息

    bcdedit /set {current} debug on
    bcdedit /set {current} debugtype serial
    bcdedit /set {current} baudrate 115200
    

    这些命令启用调试,设置调试类型为串行,并设置波特率为 115200。

  12. 查看启动项的详细信息

    bcdedit /enum
    bcdedit /enum {bootmgr}
    bcdedit /enum {current}
    

    这些命令分别列出所有启动项、启动管理器启动项和当前启动项的详细信息。

icacls

显示或修改文件的访问控制列表(acl)

  1. 查看文件或目录的 ACL

    icacls filename
    

    这将显示 filename 的访问控制列表。

  2. 递归查看目录及其子目录/文件的 ACL

    icacls directory /T
    

    /T 参数表示递归查看当前目录及其所有子目录和文件的 ACL。

  3. 修改文件或目录的 ACL

    icacls filename /grant username:permission
    

    /grant 参数用于授予 usernamefilenamepermission 权限。权限可以是 R(读取)、W(写入)、M(修改)等。

  4. 递归修改目录及其子目录/文件的 ACL

    icacls directory /grant username:permission /T
    

    结合 /T 参数,这条命令会递归地授予 usernamedirectory 及其所有子目录和文件的 permission 权限。

  5. 撤销文件或目录的 ACL 权限

    icacls filename /inheritance
    

    /inheritance 参数用于撤销所有继承的权限。

  6. 清除文件或目录的所有 ACL 权限

    icacls filename /reset
    

    /reset 参数用于清除所有显式设置的权限,恢复到默认状态。

  7. 删除文件或目录的特定 ACL 条目

    icacls filename /remove username
    

    /remove 参数用于从 filename 的 ACL 中删除 username 的权限。

  8. 递归删除目录及其子目录/文件的特定 ACL 条目

    icacls directory /remove username /T
    

    结合 /T 参数,这条命令会递归地从 directory 及其所有子目录和文件的 ACL 中删除 username 的权限。

  9. 查找具有特定权限的文件

    icacls *.* /findsid username
    

    /findsid 参数用于查找所有 ACL 中包含 username 的文件。

  10. 保存 ACL 到文件

    icacls directory > acl.txt
    

    这将把 directory 的 ACL 保存到 acl.txt 文件中。

  11. 从文件恢复 ACL

    icacls directory < acl.txt
    

    这将从 acl.txt 文件中恢复 directory 的 ACL。

chcp

显示或设置活动代码页数

  1. 查看当前代码页

    chcp
    

    这将显示当前活动代码页的编号。

  2. 更改代码页

    chcp <编号>
    

    <编号> 替换为你想要设置的代码页编号。例如,chcp 437 会将代码页更改为美国的 DOS 代码页。

  3. 设置为 UTF-8 代码页

    chcp 65001
    

    这将设置代码页为 UTF-8,这对于显示多种语言字符非常有用。

  4. 在批处理文件中更改代码页

    @echo off
    chcp 65001 >nul
    echo The code page has been changed to UTF-8.
    

    >nul 用于抑制 chcp 命令的输出,使得批处理文件运行时不显示代码页更改的消息。

  5. 检查特定代码页是否可用
    在更改代码页之前,你可以使用 mode 命令查看系统支持的代码页:

    mode | findstr /C:"Code page"
    

    这将列出所有支持的代码页及其编号。

请注意,更改代码页可能会影响控制台中显示的字符,特别是当你处理非英文字符时。如果你更改了代码页并且发现控制台显示乱码,可以改回原来的代码页来恢复正常显示。通常,Windows 10 和更高版本的默认代码页是 65001(UTF-8),这提供了最好的国际化支持。

comp

比较两个或两套文件的内容

  1. 比较两个文件

    comp file1 file2
    

    比较 file1file2 是否相同。如果文件相同,命令不会显示任何输出;如果不同,它会显示差异。

  2. 比较两个文件并显示所有差异

    comp file1 file2 /L
    

    /L 参数用于显示所有差异,包括不同之处的行号。

  3. 比较两个文件并显示不同的字节

    comp file1 file2 /N
    

    /N 参数用于显示不同的字节及其位置。

  4. 比较两个文件并忽略大小写

    comp file1 file2 /C
    

    /C 参数用于在比较时忽略大小写差异。

  5. 比较两个文件并显示不同的字节及其十六进制值

    comp file1 file2 /A
    

    /A 参数用于显示不同的字节及其十六进制值。

  6. 比较两个文件并显示不同的字节及其 ASCII 值

    comp file1 file2 /B
    

    /B 参数用于显示不同的字节及其 ASCII 值。

  7. 比较两个文件并显示不同的字节及其十六进制和 ASCII 值

    comp file1 file2 /C
    

    /C 参数用于显示不同的字节及其十六进制和 ASCII 值。

  8. 比较两个目录中的所有文件

    comp dir1\*.* dir2\*.*
    

    这将比较 dir1dir2 目录中的所有文件。

  9. 比较两个目录中的所有文件并递归

    comp dir1\*.* dir2\*.* /S
    

    /S 参数用于递归比较两个目录及其子目录中的所有文件。

  10. 比较两个目录中的所有文件并忽略时间戳和属性

    comp dir1\*.* dir2\*.* /I
    

    /I 参数用于忽略文件的时间戳和属性,只比较文件内容。

请注意,comp 命令比较的是文件内容,而不是文件名。

date

显示或者设置日期

在 Windows 中:

  1. 显示当前日期

    date
    

    这将显示当前的日期。

  2. 设置日期

    date 03-21-2024
    

    这将把日期设置为2024年3月21日。请注意,Windows中的日期格式通常是MM-DD-YYYY。

在 Unix/Linux 中:

  1. 显示当前日期

    date
    

    这将显示当前的日期和时间。

  2. 以特定格式显示当前日期

    date +%Y-%m-%d
    

    这将以 YYYY-MM-DD 的格式显示当前日期。

  3. 设置日期

    sudo date -s "2024-03-21"
    

    这将把日期设置为2024年3月21日。请注意,通常需要管理员权限来设置日期。

  4. 显示其他时区的日期

    date -u
    

    这将显示UTC(协调世界时)的日期和时间。

  5. 显示自纪元以来的秒数

    date +%s
    

    这将显示自1970年1月1日(Unix纪元)以来的秒数。

  6. 格式化日期输出

    date +"Date: %d-%m-%Y Time: %H:%M:%S"
    

    这将显示自定义格式的日期和时间。

注意事项

  • 在 Windows 中,date 命令的使用相对简单,主要用于显示和设置日期。
  • 在 Unix/Linux 中,date 命令更为灵活,支持多种日期和时间的显示和设置选项。
  • 在使用 date 命令设置日期时,确保你有足够的权限,因为在大多数系统中,这需要管理员权限。
  • 不同的 Linux 发行版可能支持的 date 命令选项有所不同,所以如果需要更多特定的功能,可以查看 date 命令的手册页(通过输入 man date)。

diskpart

显示或配置磁盘分区属性

  1. 启动 diskpart

    diskpart
    

    在命令提示符下输入 diskpart 并按回车,这将启动 diskpart 环境。

  2. 列出所有磁盘

    list disk
    

    diskpart 环境中使用此命令来显示所有连接到系统的磁盘。

  3. 选择特定磁盘

    select disk # 
    

    # 替换为磁盘编号,以选择要操作的磁盘。

  4. 创建新的分区

    create partition primary
    

    这将在选定的磁盘上创建一个新的主分区。

  5. 格式化分区

    format fs=ntfs quick
    

    这将快速格式化选定分区为 NTFS 文件系统。你也可以选择其他文件系统,如 fat32exfat

  6. 分配驱动器字母

    assign
    

    这将为选定的分区分配下一个可用的驱动器字母。

  7. 激活分区

    active
    

    这将激活选定的分区,使其成为启动分区。

  8. 删除分区

    delete partition override
    

    使用 override 参数可以跳过确认提示,直接删除分区。

  9. 退出 diskpart

    exit
    

    这将退出 diskpart 环境,返回到命令提示符。

  10. 扩展现有分区

    extend size=#
    

    这将扩展选定分区的大小,# 是你想要扩展的大小(单位为MB)。

  11. 收缩分区

    shrink desired=#
    

    这将收缩选定分区的大小,# 是你想要收缩的大小(单位为MB)。

  12. 列出所有分区

    list partition
    

    diskpart 环境中使用此命令来显示当前选定磁盘上的所有分区。

  13. 选择特定分区

    select partition #
    

    # 替换为分区编号,以选择要操作的分区。

  14. 清理磁盘

    clean
    

    这将删除所有分区并清理磁盘,使其成为一个没有分区的“干净”磁盘。

doskey

编辑命令行,撤回Windows命令

  1. 创建宏

    doskey hello=echo Hello, World!
    

    这将创建一个名为 hello 的宏,当你在命令行中输入 hello 并按回车时,它将执行 echo Hello, World! 命令。

  2. 执行宏

    hello
    

    这将执行之前定义的 hello 宏,输出 “Hello, World!”。

  3. 查看宏定义

    doskey /macros
    

    这将列出所有已定义的宏。

  4. 查看特定宏的定义

    doskey hello
    

    这将显示 hello 宏的定义。

  5. 修改宏

    doskey hello=echo Hello, World! This is a new line.
    

    这将修改 hello 宏,添加一行新的文本。

  6. 删除宏

    doskey hello=
    

    这将删除 hello 宏。

  7. 重用命令历史

    doskey history
    

    这将显示命令历史的列表,你可以使用箭头键选择并执行。

  8. 执行历史命令

    doskey -n=命令编号
    

    -n 参数后面跟命令编号,可以执行特定的历史命令。

  9. 编辑命令行
    在命令行中,你可以按 Ctrl + A 选择整个命令行,Ctrl + U 删除光标之前的文本,Ctrl + K 删除光标之后的所有文本,Ctrl + Y 粘贴剪贴板内容。

  10. 创建带参数的宏

    doskey say=echo You said: $1
    

    这将创建一个名为 say 的宏,你可以在后面添加参数,例如 say hello 将输出 “You said: hello”。

  11. 使用环境变量

    doskey path=echo %PATH%
    

    这将创建一个 path 宏,显示当前的 PATH 环境变量。

  12. 创建带多个参数的宏

    doskey copy=copy $1 $2
    

    这将创建一个 copy 宏,你可以复制文件,例如 copy file1.txt C:\destination

driverquery

显示当前设备驱动程序状态和属性

  1. 基本用法

    driverquery
    

    这将列出所有设备驱动程序的基本信息,包括驱动程序名称、服务名称、启动类型、状态等。

  2. 显示详细状态

    driverquery /v
    

    /v 参数用于显示驱动程序的详细状态信息,包括驱动程序的路径、版本、日期和供应商。

  3. 显示格式信息

    driverquery /fo format
    

    /fo 参数用于指定输出格式,format 可以是 TABLELISTCSV。例如:

    • /fo TABLE:以表格格式显示输出(默认)。
    • /fo LIST:以列表格式显示输出。
    • /fo CSV:以逗号分隔值(CSV)格式显示输出,适合导入到表格处理软件中。
  4. 显示特定属性

    driverquery /si
    

    /si 参数用于显示每个驱动程序的签名信息,包括是否已签名和签名者。

  5. 显示驱动程序组

    driverquery /ihv
    

    /ihv 参数用于显示独立硬件供应商(IHV)的驱动程序。

  6. 显示过时的驱动程序

    driverquery /obsolete
    

    /obsolete 参数用于显示已过时的驱动程序。

  7. 显示驱动程序的数字签名状态

    driverquery /signer
    

    /signer 参数用于显示驱动程序的数字签名状态。

  8. 显示驱动程序的详细信息

    driverquery /status
    

    /status 参数用于显示驱动程序的状态信息。

  9. 显示驱动程序的加载时间

    driverquery /t
    

    /t 参数用于显示驱动程序的加载时间。

  10. 显示驱动程序的级别

    driverquery /wl
    

    /wl 参数用于显示 Windows 驱动程序级别的信息。

这些是 driverquery 命令的一些基本用法。你可以组合使用这些参数来获取不同的信息。例如,driverquery /v /fo LIST 会以列表格式显示驱动程序的详细状态信息。

fc

比较两个文件集并显示他们之间的不同

  1. 比较两个文件

    fc file1.txt file2.txt
    

    这将比较 file1.txtfile2.txt,并显示它们之间的差异。

  2. 使用通配符比较多个文件

    fc *.c *.h
    

    这将比较当前目录下所有 .c 文件与所有 .h 文件,并显示它们之间的差异。

  3. 比较两个目录中的文件

    fc dir1\*.c dir2\*.c
    

    这将比较 dir1 目录和 dir2 目录中所有 .c 文件,并显示它们之间的差异。

  4. 使用 /A 参数以 ASCII 格式比较文件

    fc /A file1.txt file2.txt
    

    /A 参数指定以 ASCII 格式比较文件。

  5. 使用 /B 参数以二进制格式比较文件

    fc /B file1.bin file2.bin
    

    /B 参数指定以二进制格式比较文件。

  6. 使用 /C 参数忽略大小写

    fc /C file1.txt file2.txt
    

    /C 参数在比较时忽略大小写差异。

  7. 使用 /L 参数忽略行尾字符

    fc /L file1.txt file2.txt
    

    /L 参数在比较时忽略行尾字符差异。

  8. 使用 /N 参数使用逻辑比较

    fc /N file1.txt file2.txt
    

    /N 参数在比较时不区分文件名的大小写。

  9. 使用 /T 参数显示行号

    fc /T file1.txt file2.txt
    

    /T 参数在显示差异时包括行号。

  10. 使用 /U 参数以 Unicode 格式比较文件

    fc /U file1.txt file2.txt
    

    /U 参数指定以 Unicode 格式比较文件。

  11. 使用 /W 参数并排显示差异

    fc /W file1.txt file2.txt
    

    /W 参数以并排格式显示两个文件的差异。

  12. 使用 /XX 参数比较文件时忽略 extra lines

    fc /XX file1.txt file2.txt
    

    /XX 参数在比较时忽略文件中的额外行。

  13. 使用 /Y 参数自动回答“否”

    fc /Y file1.txt file2.txt
    

    /Y 参数在提示是否覆盖时自动回答“否”。

  14. 使用 /Q 参数快速比较

    fc /Q file1.txt file2.txt
    

    /Q 参数执行快速比较,不显示任何差异。

for

为一组文件中的每个文件运行一个指定命令

在 Windows cmd 中:

  1. 遍历文件

    for %f in (*.txt) do echo %f
    

    这将对当前目录下每个 .txt 文件执行 echo 命令,显示文件名。

  2. 遍历目录

    for /d %d in (*) do echo %d
    

    这将对当前目录下的每个子目录执行 echo 命令,显示目录名。

  3. 使用变量

    for /L %i in (1,1,5) do echo %i
    

    这将从 1 到 5 执行循环,每次增加 1,并显示当前的数字。

  4. 对文件执行操作

    for %f in (*.txt) do copy %f C:\destination
    

    这将把当前目录下所有 .txt 文件复制到 C:\destination 目录。

  5. 条件执行

    for /F "tokens=*" %i in ('dir /b /a:-d') do if exist %i echo %i
    

    这将列出当前目录下所有非目录文件,并显示它们的名字。

在 Unix/Linux bash 中:

  1. 遍历列表

    for i in {1..5}; do echo $i; done
    

    这将显示数字 1 到 5。

  2. 遍历文件

    for file in *.txt; do echo $file; done
    

    这将对当前目录下每个 .txt 文件执行 echo 命令,显示文件名。

  3. 使用 C 风格的 for 循环

    for (( i=0; i<5; i++ )); do echo $i; done
    

    这将从 0 到 4 执行循环,并显示当前的数字。

  4. 遍历命令输出

    for user in $(getent passwd); do echo $user; done
    

    这将遍历系统上的所有用户,并显示它们的用户名。

  5. 条件执行

    for file in *.txt; do if [ -f "$file" ]; then echo $file; fi; done
    

    这将只对当前目录下存在的 .txt 文件执行 echo 命令。

fsutil

显示或配置文件系统属性

  1. 清理(Defragmentation)

    fsutil volume defrag [drive]
    

    对指定的驱动器进行碎片整理。

  2. 磁盘清理(File System Cleanup)

    fsutil behavior set DisableLastAccess 0
    

    启用记录文件最后访问时间。

    fsutil behavior set DisableLastAccess 1
    

    禁用记录文件最后访问时间,可以提高性能。

  3. 文件锁定管理

    fsutil file lock [path]
    

    锁定指定的文件。

    fsutil file unlock [path]
    

    解锁指定的文件。

  4. 对象 ID管理

    fsutil objectid assign [path]
    

    为指定路径的文件或目录分配一个新的对象 ID。

    fsutil objectid query [path]
    

    查询指定路径的文件或目录的对象 ID。

  5. 配额管理

    fsutil quota query [volume]
    

    查询指定卷的磁盘配额信息。

    fsutil quota modify [volume] [quota_limit]
    

    修改指定卷的磁盘配额限制。

    fsutil quota track [volume] enable
    

    启用指定卷的磁盘配额跟踪。

  6. USN日志管理

    fsutil usn readjournal [volume] [startid] [length]
    

    读取指定卷的 USN 日志。

    fsutil usn createjournal [volume] [size]
    

    为指定卷创建 USN 日志。

  7. 卷信息查询

    fsutil volume diskfree [drive]
    

    显示指定驱动器的可用空间。

    fsutil volume filelayout [path]
    

    显示指定文件的文件布局信息。

  8. 脏位检查

    fsutil dirty query [volume]
    

    查询指定卷是否为脏(即是否需要检查磁盘)。

  9. 重置日志文件大小

    fsutil logfile resize [size]
    

    调整系统日志文件的大小。

  10. 修复坏扇区

    fsutil repair enable [drive]
    

    启用对指定驱动器的坏扇区修复。

    fsutil repair disable [drive]
    

    禁用对指定驱动器的坏扇区修复。

  11. 重新解析名称

    fsutil reparsepoint query [path]
    

    查询指定路径的符号链接或重解析点信息。

  12. 设置短名称

    fsutil behavior set disable8dot3 0
    

    启用 8.3 格式的短名称。

    fsutil behavior set disable8dot3 1
    

    禁用 8.3 格式的短名称。

ftype

显示或修改在文件扩展名关联使用的文件类型

  1. 显示特定文件类型的关联

    ftype type
    

    type 替换为你想要查询的文件类型(例如 txtfile)。这将显示与该文件类型关联的命令。

  2. 显示所有文件类型的关联

    ftype
    

    这个命令将列出所有已注册的文件类型及其关联的命令。

  3. 修改文件类型的关联

    ftype type=command
    

    type 替换为文件类型(例如 txtfile),将 command 替换为当文件被双击时执行的命令。例如:

    ftype txtfile=notepad.exe %1
    

    这将设置 .txt 文件的默认打开程序为记事本。

  4. 删除文件类型的关联

    ftype type=
    

    type 替换为要删除的文件类型。这将删除该文件类型的关联。

  5. 为可执行文件设置关联

    ftype exefile=%1 %*
    

    这将设置 .exe 文件类型的关联,使得双击可执行文件时会运行该文件。

  6. 为批处理文件设置关联

    ftype batfile=%SystemRoot%\System32\cmd.exe /c %1 %*
    

    这将设置 .bat 文件类型的关联,使得双击批处理文件时会使用命令提示符运行该文件。

  7. 为快捷方式设置关联

    ftype lnkfile=%SystemRoot%\System32\rundll32.exe %SystemRoot%\System32\shell32.dll,OpenAs_RunDLL %1
    

    这将设置 .lnk 文件类型的关联,使得双击快捷方式时会打开关联的程序。

gpresult

显示计算机或者用户组策略信息

  1. 显示用户或计算机的组策略设置

    gpresult
    

    不带任何参数运行 gpresult 将显示当前用户的组策略设置。

  2. 显示详细的组策略信息

    gpresult /h report.html
    

    /h 参数允许你将结果输出到一个 HTML 文件中,这使得信息更易于阅读和共享。这里,结果被保存到 report.html 文件中。

  3. 显示特定的组策略设置

    gpresult /r
    

    /r 参数用于显示被应用的组策略设置的摘要,而不是完整的策略信息。

  4. 显示所有本地组策略设置

    gpresult /x report.xml
    

    /x 参数将结果输出为 XML 文件,这对于自动化处理非常有用。这里,结果被保存到 report.xml 文件中。

  5. 显示用户和计算机的组策略设置

    gpresult /s computer /user username /h report.html
    

    /s 参数指定要查询的计算机,/user 参数指定要查询的用户。这将为指定的计算机和用户生成一个 HTML 报告。

  6. 显示只包含特定策略的报告

    gpresult /f "Software Settings" /h report.html
    

    /f 参数允许你指定一个特定的功能领域,比如 “Software Settings”,以生成只包含该领域设置的报告。

  7. 显示组策略设置的详细模式

    gpresult /v
    

    /v 参数用于显示详细的组策略设置,包括未被应用的设置。

  8. 显示组策略设置的摘要

    gpresult /z
    

    /z 参数用于显示组策略设置的摘要,包括被应用的和未被应用的设置。

  9. 显示组策略设置的详细模式,并排除未被应用的设置

    gpresult /v /x report.xml
    

    这将生成一个包含所有设置的详细 XML 报告,但不包括未被应用的设置。

mklink

创建符号链接和硬链接

创建符号链接(软链接)

  1. 创建指向文件的符号链接

    mklink linkname target
    

    这将创建一个名为 linkname 的符号链接,指向 target 文件。

  2. 创建指向目录的符号链接

    mklink /D linkname targetdir
    

    使用 /D 参数创建一个指向目录的符号链接。linkname 是链接的名称,targetdir 是目标目录的路径。

创建硬链接

  1. 创建指向文件的硬链接

    mklink linkname target
    

    在 Windows 中,mklink 默认创建硬链接,而不是符号链接。硬链接直接指向文件数据,而不是文件名。

使用管理员权限

  1. 以管理员权限运行 mklink
    由于创建符号链接可能需要管理员权限,你可能需要以管理员身份运行命令提示符。在 Windows 中,你可以通过右键点击命令提示符程序并选择“以管理员身份运行”来实现。

示例

  1. 创建指向特定文件的符号链接

    mklink C:\Links\Notepad.lnk C:\Windows\System32\notepad.exe
    

    这将在 C:\Links 目录下创建一个名为 Notepad.lnk 的符号链接,指向 C:\Windows\System32\notepad.exe 文件。

  2. 创建指向特定目录的符号链接

    mklink /D C:\Links\MyDocs C:\Users\Username\Documents
    

    这将在 C:\Links 目录下创建一个名为 MyDocs 的符号链接,指向 C:\Users\Username\Documents 目录。

注意事项

  • 符号链接在 Windows 中有一些限制,例如不能跨卷(即不能链接到不同驱动器上的文件或目录)。
  • 硬链接也有一些限制,例如不能链接到目录,且链接的文件必须位于同一卷上。
  • 使用 mklink 时,确保目标文件或目录的路径正确无误,否则链接将无法正确创建。

openfiles

显示远程用户通过文件共享打开的本地文件

  1. 列出所有打开的文件

    openfiles
    

    不带参数运行 openfiles 会显示当前用户所有打开的文件。

  2. 以特定用户身份列出打开的文件

    openfiles /S 计算机名 /U 用户名 /P 密码
    

    /S 参数后跟远程计算机的名称,/U/P 参数分别用于指定用户名和密码,以该用户的身份列出打开的文件。

  3. 列出特定用户打开的文件

    openfiles /U 用户名 /P 密码
    

    使用 /U/P 参数可以列出特定用户打开的文件。

  4. 断开打开的文件

    openfiles \\\\?\C:\path\to\file
    

    使用文件的完整路径来指定要断开的文件。

  5. 断开特定用户打开的文件

    openfiles \\\\?\C:\path\to\file /U 用户名 /P 密码
    

    结合 /U/P 参数,可以指定以哪个用户的身份断开文件。

  6. 显示文件的详细信息

    openfiles /query /s
    

    /query 参数用于查询,/s 参数用于显示所有打开的文件的详细信息。

  7. 断开所有打开的文件

    openfiles /d
    

    /d 参数用于断开所有打开的文件。

  8. 断开特定类型的文件

    openfiles /localonly /filter "\\*.txt"
    

    /localonly 参数用于只显示本地计算机上的文件,/filter 参数后跟通配符可以指定文件类型。

path

为可执行文件显示或者设置搜索路径

  1. 显示当前的路径

    path
    

    这将显示当前的路径环境变量,即系统会搜索可执行文件的目录列表。

  2. 设置路径环境变量

    path C:\Program Files;C:\Windows\System32
    

    这将设置路径环境变量为指定的目录列表。目录之间用分号(在 Windows 中)分隔。

  3. 添加目录到当前路径

    path %PATH%;C:\NewDirectory
    

    这将 C:\NewDirectory 添加到当前的路径环境变量中。%PATH% 是一个环境变量,代表当前的路径。

  4. 从路径中移除目录

    path %PATH%;C:\OldDirectory
    

    如果你想要移除 C:\OldDirectory 目录,你需要将其从路径环境变量中删除。这通常需要一些额外的步骤,因为 path 命令本身不支持直接删除单个目录。你可以使用 pathedit 这样的第三方工具,或者手动编辑环境变量。

  5. 在命令行中临时修改路径

    path C:\Temp;%PATH%
    

    这将在当前命令行会话中临时将 C:\Temp 添加到路径的开头。这种修改只对当前会话有效,关闭命令行窗口后修改将不再生效。

  6. 使用 setx 命令永久修改路径

    setx PATH "C:\NewDirectory;%PATH%"
    

    setx 命令用于永久修改环境变量,包括路径。这条命令会在现有路径的基础上添加 C:\NewDirectory

set

显示、设置或删除windows环境变量

  1. 显示所有环境变量

    set
    

    这将列出当前会话中的所有环境变量及其值。

  2. 显示特定的环境变量

    set VariableName
    

    VariableName 替换为你想要查看的环境变量的名称。

  3. 设置或修改环境变量

    set VariableName=VariableValue
    

    这将设置或修改一个环境变量 VariableName 并赋予它 VariableValue 的值。

  4. 删除环境变量

    set VariableName=
    

    这将删除名为 VariableName 的环境变量。

  5. 在批处理文件中使用
    在批处理文件中,set 命令可以用来设置局部变量,这些变量只在批处理文件执行期间有效。

    setlocal
    set MyVar=somevalue
    echo %MyVar%
    endlocal
    
  6. 使用变量延迟扩展
    在批处理文件中,可以使用 /a 选项来启用变量延迟扩展,这样变量的值在执行时才被解析。

    setlocal enabledelayedexpansion
    for %%i in (*.txt) do (
        set "filename=%%i"
        echo !filename!
    )
    endlocal
    
  7. 显示当前命令行窗口的环境变量

    set $=
    

    这将显示当前命令行窗口的所有环境变量。

  8. 在命令行中使用变量
    你可以在命令行中使用 %VariableName% 来引用环境变量的值。

    echo %PATH%
    
  9. 在批处理文件中使用变量
    在批处理文件中,使用 %VariableName% 来引用局部变量的值。

    set MyVar=Hello
    echo %MyVar%
    
  10. 递增变量值

    set /a Counter+=1
    

    /set /a 用于执行算术运算,这里将 Counter 变量的值递增 1。

sc

显示或者配置服务(后台进程)

  1. 查询服务状态

    • 查询所有服务的状态:

      sc query
      
    • 查询特定服务的状态:

      sc query [服务名]
      

      这将显示服务的当前状态和配置信息 。

  2. 控制服务

    • 启动服务:

      sc start [服务名]
      
    • 停止服务:

      sc stop [服务名]
      
    • 强制停止服务:

      sc stop [服务名] /f
      
    • 暂停服务:

      sc pause [服务名]
      
    • 继续服务:

      sc continue [服务名]
      

      这些命令用于控制服务的启动、停止、暂停和继续 。

  3. 配置服务

    • 修改服务启动类型:

      sc config [服务名] start= [启动类型]
      

      启动类型可以是 auto, demand, disabled 等 。

    • 修改服务描述:

      sc description [服务名] [描述]
      

      这将更改服务的描述 。

  4. 创建和删除服务

    • 创建服务:

      sc create [服务名] binPath= "路径到服务的可执行文件"
      
    • 删除服务:

      sc delete [服务名]
      

      这些命令用于在注册表和“服务控制管理器”中创建或删除服务 。

  5. 设置服务的依赖项

    sc config [服务名] depend= [依赖服务]
    

    这将设置服务的依赖项,即在该服务启动之前必须启动的服务 。

  6. 查询服务配置信息

    sc qc [服务名]
    

    这将显示服务的配置信息 。

  7. 更改服务的登录账户

    sc config [服务名] obj= "NT AUTHORITY\LocalService" password= ""
    

    这将服务的登录账户配置为 LocalService 帐户,并且不使用密码 。

  8. 更多信息
    如果想了解更多 sc 命令的用法,可以在 CMD 中输入以下命令查看帮助:

    sc help
    

    或者获取特定命令的帮助:

    sc [命令] help
    

    这将显示 sc 命令的帮助文档内容 。

schtasks

安排一台计算机上运行命令和程序

创建计划任务(/Create)

schtasks /create /tn TaskName /tr TaskRun /sc schedule [/mo modifier] [/d day] [/m month[,month...]] [/i IdleTime] [/st StartTime] [/sd StartDate] [/ed EndDate] [/s computer [/u [domain\]user /p password]] [/ru {[Domain\]User | "System"} [/rp Password]]
  • /tn TaskName:指定任务的名称。
  • /tr TaskRun:指定任务运行的程序或命令的路径。
  • /sc schedule:指定计划类型,如 MINUTEHOURLYDAILYWEEKLYMONTHLYONCEONSTARTONLOGONONIDLE
  • /mo modifier:指定任务在其计划类型内的运行频率。
  • /d day:指定周或月中运行任务的日期。
  • /m month[,month...]:指定一年中的月份。
  • /i IdleTime:指定任务启动前系统必须空闲的分钟数,仅对 ONIDLE 计划有效。
  • /st StartTime:指定任务开始时间。
  • /sd StartDate:指定任务开始的日期。
  • /ed EndDate:指定任务结束的日期。
  • /s computer:指定远程计算机名称。
  • /u [domain\]user:指定用户上下文。
  • /p password:指定用户密码。
  • /ru {[Domain\]User | "System"}:指定任务运行的用户帐户。
  • /rp Password:指定运行方式用户的密码。

查询计划任务(/Query)

schtasks /query [/s computer [/u [domain\]user /p password]] [/fo {TABLE | LIST | CSV}] [/nh] [/v]
  • /s computer:指定远程计算机名称。
  • /u [domain\]user:指定用户上下文。
  • /p password:指定用户密码。
  • /fo {TABLE | LIST | CSV}:指定输出格式。
  • /nh:不显示标题行。
  • /v:显示详细输出。

删除计划任务(/Delete)

schtasks /delete /tn TaskName [/s computer [/u [domain\]user /p password]] [/f]
  • /tn TaskName:指定要删除的任务名称。
  • /s computer:指定远程计算机名称。
  • /u [domain\]user:指定用户上下文。
  • /p password:指定用户密码。
  • /f:强制删除任务,不提示确认。

更改计划任务(/Change)

schtasks /change /tn TaskName [/s computer [/u [domain\]user /p password]] [/tr TaskRun] [/st StartTime] [/ri Interval] [/et EndTime] [/sd StartDate] [/ed EndDate] [/K] [/RU {[Domain\]User | "System"} [/RP Password]]
  • /tn TaskName:指定要更改的任务名称。
  • /tr TaskRun:指定新的程序或命令路径。
  • /st StartTime:指定新的开始时间。
  • /ri Interval:指定新的重复间隔。
  • /et EndTime:指定新的结束时间。
  • /sd StartDate:指定新的开始日期。
  • /ed EndDate:指定新的结束日期。
  • /K:在任务完成后保持任务状态。
  • /RU {[Domain\]User | "System"}:指定新的运行用户帐户。
  • /RP Password:指定新的运行方式用户的密码。

运行计划任务(/Run)

schtasks /run /tn TaskName [/s computer [/u [domain\]user /p password]]
  • /tn TaskName:指定要运行的任务名称。
  • /s computer:指定远程计算机名称。
  • /u [domain\]user:指定用户上下文。
  • /p password:指定用户密码。

中止计划任务(/End)

schtasks /end /tn TaskName [/s computer [/u [domain\]user /p password]]
  • /tn TaskName:指定要中止的任务名称。
  • /s computer:指定远程计算机名称。
  • /u [domain\]user:指定用户上下文。
  • /p password:指定用户密码。

shutdown

允许通过本地或远程方式正确关闭计算机

  1. 立即关闭计算机

    shutdown /s
    

    这将立即关闭计算机。

  2. 立即重启计算机

    shutdown /r
    

    这将立即重启计算机。

  3. 取消关机或重启操作

    shutdown /a
    

    如果系统已经安排了关机或重启,这个命令可以取消它。

  4. 设置关机或重启的倒计时

    shutdown /s /t 60
    

    /t 参数后面跟的数字表示倒计时的秒数,这里设置为60秒后关机。

  5. 重启计算机并设置倒计时

    shutdown /r /t 30
    

    这将在30秒后重启计算机。

  6. 指定关机或重启的原因

    shutdown /s /c "System maintenance"
    

    /c 参数后面跟的文本是关机或重启的原因,这里设置为 “System maintenance”。

  7. 远程关机

    shutdown /m \\ComputerName /s
    

    这将关闭指定的远程计算机,将 ComputerName 替换为远程计算机的名称或IP地址。

  8. 重启远程计算机

    shutdown /m \\ComputerName /r
    

    这将重启指定的远程计算机。

  9. 强制关闭运行的应用程序

    shutdown /f
    

    /f 参数用于强制关闭所有运行的应用程序,不保存数据。

  10. 重启计算机并更新系统设置

    shutdown /r /o
    

    /o 参数用于在重启时更新系统设置。

  11. 显示帮助信息

    shutdown /?
    

    这将显示 shutdown 命令的帮助信息。

start

启动单独的窗口以运行指定的程序或者命令

  1. 删除单个文件

    erase filename
    

    删除当前目录下的 filename 文件。

  2. 删除多个文件

    erase file1.txt file2.txt
    

    删除当前目录下的 file1.txtfile2.txt 文件。

  3. 使用通配符删除多个文件

    erase *.txt
    

    删除当前目录下所有扩展名为 .txt 的文件。

  4. 强制删除只读文件

    erase /F filename
    

    /F 参数用于强制删除只读文件。

  5. 删除文件时不提示确认

    erase /Q filename
    

    /Q 参数用于在删除文件时不提示确认。

  6. 删除目录及其子目录中的所有文件

    erase /S *.*
    

    /S 参数用于删除当前目录及其所有子目录中的所有文件。

  7. 删除隐藏文件

    erase /A:H *.*
    

    /A:H 参数用于删除所有隐藏文件。

  8. 删除系统文件

    erase /A:S *.*
    

    /A:S 参数用于删除所有系统文件。

  9. 删除存档属性的文件

    erase /A:A *.*
    

    /A:A 参数用于删除所有具有存档属性的文件。

  10. 删除文件并禁止错误报告

    erase /AR *.*
    

    /AR 参数用于删除所有文件,并且如果发生错误,不显示错误报告。

  11. 删除文件并显示删除的文件列表

    erase /L *.*
    

    /L 参数用于显示将要删除的文件列表,但不实际删除文件。

systeminfo

显示计算机的特定属性和配置

  1. 显示本地计算机的信息

    systeminfo
    

    这将显示本地计算机的系统信息。

  2. 显示远程计算机的信息

    systeminfo \\ComputerName
    

    ComputerName 替换为远程计算机的名称或 IP 地址。

  3. 使用用户名和密码显示远程计算机的信息

    systeminfo \\ComputerName\username\password
    

    这将使用提供的用户名和密码来显示远程计算机的系统信息。

  4. 显示特定属性的信息

    systeminfo | findstr /C:"OS Name"
    

    findstr 命令用于搜索特定的字符串,这里用来显示操作系统名称。

  5. 显示特定范围的属性信息

    systeminfo | findstr /C:"OS Name" /C:"OS Version"
    

    这将同时显示操作系统名称和版本。

  6. 以特定格式输出信息

    systeminfo /fo csv > systeminfo.csv
    

    /fo 参数用于指定输出格式,这里使用 CSV 格式,并且将输出重定向到 systeminfo.csv 文件。

  7. 以特定格式输出信息并包括隐藏属性

    systeminfo /fo csv /nh > systeminfo.csv
    

    /nh 参数用于包括通常隐藏的属性。

  8. 以特定格式输出信息并排除特定属性

    systeminfo /fo list | findstr /v /C:"BIOS Version"
    

    这里使用 /v 参数来排除搜索结果中的特定字符串。

  9. 以特定格式输出信息并排除多个属性

    systeminfo /fo list | findstr /v /C:"BIOS Version" /C:"Processor"
    

    这将排除 BIOS 版本和处理器信息。

  10. 以特定格式输出信息并排除多个属性,同时包括隐藏属性

    systeminfo /fo list | findstr /v /C:"BIOS Version" /C:"Processor" /r
    

    /r 参数用于正则表达式搜索,这里用于排除多个属性。

tasklist

显示包括服务在内的所有当前运行的任务

  1. 显示所有运行中的进程

    tasklist
    

    这将列出所有当前运行的进程。

  2. 显示特定进程

    tasklist | findstr "processname"
    

    "processname" 替换为你想要查找的进程名称,这将搜索并高亮显示包含该名称的进程。

  3. 显示进程的详细信息

    tasklist /fo list
    

    /fo list 参数以简单列表格式显示进程。

  4. 显示进程的详细信息,并包括服务标签

    tasklist /svc
    

    /svc 参数显示每个进程所关联的服务。

  5. 显示进程的详细信息,并包括用户信息

    tasklist /fi "username eq username"
    

    "username" 替换为实际的用户名,这将显示该用户启动的所有进程。

  6. 按映像名称排序

    tasklist /fo table /order IMAGENAME
    

    /fo table 参数以表格格式显示进程,/order IMAGENAME 按映像名称排序。

  7. 显示特定用户的进程

    tasklist /fi "username eq username"
    

    显示指定用户的进程。

  8. 显示进程的扩展信息

    tasklist /fo csv /nh
    

    /fo csv 参数以逗号分隔值(CSV)格式显示进程,/nh 参数不显示表头。

  9. 显示进程的扩展信息,并包括服务信息

    tasklist /fo csv /nh /svc
    

    结合 /svc 参数显示服务信息。

  10. 显示进程的扩展信息,并包括会话信息

    tasklist /fi "SESSION: eq 0" /fo list
    

    /fi "SESSION: eq 0" 过滤条件用于显示会话 ID 为 0 的进程。

  11. 显示进程的扩展信息,并包括会话和服务信息

    tasklist /fi "SESSION: eq 0" /fo csv /nh /svc
    
  12. 显示进程的扩展信息,并包括环境变量

    tasklist /m
    

    /m 参数显示进程加载的模块。

  13. 显示进程的扩展信息,并包括服务状态

    tasklist /fi "status eq running"
    

    /fi "status eq running" 过滤条件用于显示状态为运行中的进程。

taskkill

终止正在运行的进程或应用程序

  1. 通过进程 ID (PID) 终止进程

    taskkill /PID 1234
    

    这将终止 PID 为 1234 的进程。

  2. 通过进程名称终止进程

    taskkill /IM notepad.exe
    

    /IM 参数后面跟进程的映像名称(即进程名),这将终止所有名为 notepad.exe 的进程。

  3. 强制终止进程

    taskkill /F /IM notepad.exe
    

    /F 参数用于强制终止进程。

  4. 通过进程组终止进程

    taskkill /FI "WINDOWTITLE eq Notepad"
    

    /FI 参数后面跟筛选器,这里使用窗口标题来终止进程。

  5. 终止所有与服务相关的进程

    taskkill /F /IM * /SVC
    

    /SVC 参数用于终止所有与服务相关的进程。

  6. 终止特定用户下的进程

    taskkill /F /PID 1234 /U username /P password
    

    /U/P 参数分别用于指定用户和密码,这将终止指定用户下 PID 为 1234 的进程。

  7. 终止进程并重启该进程

    taskkill /F /IM notepad.exe /RESTART
    

    /RESTART 参数用于在终止进程后自动重启该进程。

  8. 终止进程并显示状态信息

    taskkill /IM notepad.exe /T /F
    

    /T 参数用于终止指定进程及其子进程。

  9. 使用通配符终止多个进程

    taskkill /IM *chrome*
    

    这将终止所有映像名称中包含 chrome 的进程。

  10. 通过服务名称终止进程

    taskkill /IM svchost.exe /SVC
    

    /SVC 参数用于终止与指定服务相关的进程。

tree

树状图:

在 Windows 中:

  1. 显示当前目录的树状图

    tree
    

    这将显示当前目录及其所有子目录的树状图。

  2. 指定根目录

    tree C:\path\to\directory
    

    这将显示从指定路径开始的目录树。

  3. 显示指定层级的目录树

    tree /F /L 2
    

    /F 参数显示每个目录中文件的名称,/L 参数后跟数字指定显示的层级数。

  4. 显示隐藏文件和目录

    tree /A
    

    /A 参数显示隐藏的文件和目录。

  5. 以图形方式显示目录树

    tree /A /F
    

    /A 显示隐藏文件,/F 显示文件名。

  6. 将输出保存到文件

    tree /F > directory_tree.txt
    

    这将把目录树的输出重定向到 directory_tree.txt 文件中。

  7. 递归显示目录树

    tree /F /A /S
    

    /S 参数用于递归显示所有子目录。

在 Unix/Linux 中:

  1. 显示当前目录的树状图

    tree
    

    这将显示当前目录及其所有子目录的树状图。

  2. 指定根目录

    tree /path/to/directory
    

    这将显示从指定路径开始的目录树。

  3. 显示指定层级的目录树

    tree -L 2
    

    -L 参数后跟数字指定显示的层级数。

  4. 显示隐藏文件和目录

    tree -a
    

    -a 参数显示隐藏的文件和目录。

  5. 以图形方式显示目录树

    tree -a
    

    -a 显示隐藏文件。

  6. 将输出保存到文件

    tree > directory_tree.txt
    

    这将把目录树的输出重定向到 directory_tree.txt 文件中。

  7. 递归显示目录树

    tree -I
    

    -I 参数用于递归显示所有子目录。

time

显示或设置系统时间=

  1. 显示当前系统时间

    time
    

    这将显示当前的系统时间。

  2. 设置系统时间

    time 08:00:00
    

    这将把系统时间设置为上午8点整。时间格式通常是小时:分钟:秒。

  3. 使用12小时制设置时间

    time 08:00:00 AM
    

    这将把系统时间设置为上午8点整。AM/PM 表示上午/下午。

  4. 使用24小时制设置时间

    time 20:00:00
    

    这将把系统时间设置为晚上8点整。

  5. 仅设置时间的小时和分钟

    time 13:45
    

    这将把系统时间的小时设置为13(下午1点),分钟设置为45,秒数保持不变。

在 Unix/Linux 系统中,time 命令通常用于测量命令执行所需的时间。

  1. 测量单个命令的执行时间

    time ls -l
    

    这将显示 ls -l 命令执行所需的时间。

  2. 测量脚本的执行时间

    time ./myscript.sh
    

    这将显示执行 myscript.sh 脚本所需的时间。

tracert

网络路径跟踪

在 Windows 中:

  1. 基本用法

    tracert www.example.com
    

    这将显示从你的计算机到 www.example.com 的路径。

  2. 指定最大跃点数

    tracert -h 15 www.example.com
    

    -h 参数后面跟的数字指定了最大跃点数,这里是 15。

  3. 使用 DNS 名称而不是 IP 地址

    tracert -d www.example.com
    

    -d 参数防止 tracert 将 IP 地址解析为主机名。

  4. 指定数据包大小

    tracert -b 512 www.example.com
    

    -b 参数后面跟的数字指定了要发送的数据包大小,这里是 512 字节。

  5. 指定最大 TTL(Time to Live)值

    tracert -j 255 www.example.com
    

    -j 参数后面跟的数字指定了最大 TTL 值,这里是 255。

  6. 指定多个跃点

    tracert -p 3 www.example.com
    

    -p 参数后面跟的数字指定了要使用的跃点数,这里是 3。

  7. 指定间隔时间

    tracert -w 1000 www.example.com
    

    -w 参数后面跟的数字指定了每次查询之间的等待时间,单位是毫秒,这里是 1000 毫秒。

在 Unix/Linux 中:

  1. 基本用法

    traceroute www.example.com
    

    这将显示从你的计算机到 www.example.com 的路径。

  2. 指定最大跃点数

    traceroute -m 15 www.example.com
    

    -m 参数后面跟的数字指定了最大跃点数,这里是 15。

  3. 使用 DNS 名称而不是 IP 地址

    traceroute -I www.example.com
    

    -I 参数用于发送 ICMP ECHO 请求而不是 UDP 数据包。

  4. 指定端口号

    traceroute -p 33434 www.example.com
    

    -p 参数后面跟的数字指定了要使用的端口号,这里是 33434。

  5. 指定数据包大小

    traceroute -q 3 -l 512 www.example.com
    

    -q 参数后面跟的数字指定了要发送的查询次数,-l 参数后面跟的数字指定了数据包大小,这里是 512 字节。

  6. 指定间隔时间

    traceroute -w 1 www.example.com
    

    -w 参数后面跟的数字指定了每次查询之间的等待时间,单位是秒,这里是 1 秒。

未完待续。。。



标签:文件,显示,删除,Windows,指定,学习,命令,参数,txt
From: https://blog.csdn.net/Bodhi_77/article/details/143440669

相关文章

  • 数据库中对于游标的学习
    游标目录游标游标是什么游标的类型游标的工作原理游标的使用1.声明游标2.打开游标3.检索行4.关闭游标游标的优缺点游标的优点游标的缺点游标是什么MySQL中的游标(Cursor)是一种数据库查询工具,它允许你逐行遍历查询结果集中的数据。游标特别适用于处理存储过程中的大量数据,因......
  • GEE代码学习 day12
    TC变换TC变换要进行矩阵乘法,首先将输入图像从多波段图像(对于每个波段,每个像素存储一个值)转换为数组图像。数组图像是一种更高维度的图像,其中每个像素存储一个波段的值数组。(第IV部分将更详细地介绍和讨论数组图像。您将使用波段1-5和7以及toArray函数:在GoogleEarth......
  • 知识图谱与多模态学习的关系研究综述P1(《Knowledge Graphs Meet Multi-Modal Learnin
    文章汉化系列目录文章目录文章汉化系列目录摘要I引言A.动机与贡献B.相关文献综述C.文章结构II初步概述A.知识图谱B.多模态学习C.知识图谱驱动的多模态设置D.多模态知识图谱设置III知识图谱构建A.典型知识图谱构建B.多模态知识图谱(MMKG)构建摘要 知......
  • windows 驱动实例分析系列: NDIS 6.0的Filter 驱动改造(二)
    缓冲区池Filter驱动要发送数据,除了实现这两个回调之外,还需要分配一个NET_BUFFER_LIST池,用于从池中分配NET_BUFFER_LIST结构,注意内核代码必须仅从Pool中分配NET_BUFFER_LIST以及NET_BUFFER等缓冲区结构。分配 一般会使用下面的代码来分配缓冲区池:NDIS_HANDLEAllocateList......
  • windows 驱动实例分析系列: NDIS 6.0的Filter 驱动改造(一)
    NDIS生成的Filter例程已经非常完善,但根据需要还是要对它进行改造,以适应实际的需求,在这一类的改造中,主要涉及的三个方面:处理OID、发送数据包、接收数据包。需求和定义一般来说,Filter驱动要么需要对某些数据包进行处理、要么是需要对某些网络适配器的行为进行修改,所以需求最......
  • MySQL数据库学习指南
    一、数据库的用户管理操作1、启动MySQL服务器以管理员身份运行,否则权限不够会拒绝访问--网络命令启动MySQL80服务语句:netstartMySQL802、关闭MySQL服务器语句:netstopMySQL80     -网络命令关闭MySQL80服务3、连接MySQL服务器注意:连接服务器这里......
  • ELisp学习
    一.前言Lisp语言Lisp诞生的时候包含了9中新思想,其中一些被用于其他高级语言,我们已经习以为常,至今还有2种是Lisp独有的。条件结构(即if-else结构),在Fortran1时只有基于底层机器指令实现的goto结构。函数也是一种数据类型Lisp语言中,函数跟整数和字符串一样,属于数据类型的一种......
  • 如何学习 C 语言
    #如何学习C语言在探索如何学习C语言的旅程中,关键步骤包括理解语言基础、实践编程技巧、熟悉标准库、掌握数据结构与算法、以及参与项目实战。首先,深入理解C语言的基础是至关重要的,它不仅包括语法规则和基本数据类型,还涉及指针、内存管理等高级概念。实践编程技巧是学习过程......
  • shodan(五)连接Mongodb数据库&Jenkins&org、net、查看waf命令
    声明:学习素材来自b站up【泷羽Sec】,侵删,若阅读过程中有相关方面的不足,还请指正,本文只做相关技术分享,切莫从事违法等相关行为,本人一律不承担一切后果引言:     1.Shodan是一个专门用于搜索连接到互联网的设备的搜索引擎。与传统搜索引擎(如Google)不同,Shodan的焦点不......
  • SQL 语法学习
    在当今数字化的时代,数据的管理和分析变得至关重要。而SQL(StructuredQueryLanguage),即结构化查询语言,作为一种用于管理关系型数据库的强大工具,掌握它对于从事数据相关工作的人来说是一项必备技能。在本文中,我将分享我在学习SQL语法过程中的经验、心得和体会。一、SQL简介......