>D:\IP.log start Explorer 看出来了么?用于终端服务允许_bat /b">
搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
知新_RL
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
NET高级面试指南专题二【泛型】
2
ALL Torrent Sites!_one piece robin hentai黑条汉化
3
Codeforces Round #365 (Div. 2) (705A,705B(博弈),704A)_codeforces #705(div 2)
4
java 8 函数式接口_Java 8 函数式接口
5
Android P 屏保和休眠相关知识
6
springboot+多线程_springboot thread
7
29-hadoop-使用phtonenix工具&分页&数据导入
8
实验三 支持向量机_件 iris.txt 为该实验的数据集,包含 150 个样本,对应数据集的每 数据。每
9
备战蓝桥杯---二分(入门)
10
Windows Server 2025 SMB over QUIC 介绍
当前位置:
article
> 正文
Bat命令(管道与组合)_bat /b
作者:知新_RL | 2024-02-11 19:01:41
赞
踩
bat /b
管道命令
1.│ 命令
Usage:第一条命令 │ 第二条命令 [│ 第三条命令...]
将第一条命令的结果作为第二条命令的参数来使用,记得在unix中这种方式很常见。
sample1:
time /t>>D:\IP.log
netstat -n -p tcp│find ":3389">>D:\IP.log
start Explorer
看出来了么?用于终端服务允许我们为用户自定义起始的程序,来实现让用户运行下面这个bat,以获得登录用户的IP。
dir | sort
在本例中,将同时启动两个命令,但随后 sort 命令会暂停,直到它接收到 dir 命令的输出为止。sort 命令使用 dir 命令的输出作为输入,然后将输出发送到句柄 1(即 STDOUT)。
合并带重定向操作符的命令
可以通过合并带有其他命令和文件名的筛选器命令创建自定义命令。例如,可以使用以下命令存储包含“LOG”字符串的文件名:
dir /b | find "LOG" > loglist.txt
dir 命令的输出通过 find 筛选器命令发送。包含字符串 "LOG" 的文件名作为文件名列表(例如,NetshConfig.log、Logdat.svd 和 Mylog.bat)存储在文件 Loglist.txt 中。
要在相同命令中使用多个筛选器,请使用管道 (|) 分隔筛选器。例如,下面的命令将搜索 C 盘上的每个目录以查找包含 "LOG" 字符串的文件名,并且在命令提示符窗口中每次显示一屏:
dir c:\ /s /b | find "LOG" | more
利用管道 (|) 可以将 Cmd.exe 导向为通过 find 筛选器命令发送 dir 命令输出。find 命令只选择包含字符串 "LOG" 的文件名。more 命令可以显示由 find 命令选择的文件名(在命令提示符窗口中每次显示一屏)。有关筛选器命令的详细信息,请参阅使用筛选器
2.>、>>输出重定向命令
将一条命令或某个程序输出结果的重定向到特定文件中, > 与 >>的区别在于,>会清除调原有文件中的内容后写入指定文件,而>>只会追加内容到指定文件中,而不会改动其中的内容。
下表将列出可用的句柄。
句柄 句柄的数字代号 描述
STDIN 0 键盘输入
STDOUT 1 输出到命令提示符窗口
STDERR 2 错误输出到命令提示符窗口
UNDEFINED 3-9 这些句柄由应用程序单独定义,并且是各个工具特定的。
数字 0 到 9 代表前 10 个句柄。可以使用命令 Cmd.exe 运行程序并将该程序前 10 个句柄中的任何一个重定向。要指定想使用的句柄,可在重定向操作符前面键入该句柄的数字。如果未定义句柄,则默认的 < 重定向输入操作符是 0,而默认的 > 重定向输出操作符是 1。键入 > 或 < 操作符之后,必须指定要读取或写入数据的位置。可以指定文件名或另一个现有的句柄。
要指定重定向到现有句柄,请使用与 (&) 字符,后面接要重定向的句柄号(例如 &句柄#)。例如,下面的命令可以将句柄 2(即 STDERR)重定向到句柄 1(即 STDOUT):
2>&1
下表列出了可用于将输入和输出数据流进行重定向的操作符。
重定向操作符 描述
> 将命令输出写入到文件或设备(例如打印机)中,而不是写在命令提示符窗口或句柄中。
< 从文件中而不是从键盘或句柄中读入命令输入。
>> 将命令输出添加到文件末尾而不删除文件中的信息。
>& 将一个句柄的输出写入到另一个句柄的输入中。
<& 从一个句柄读取输入并将其写入到另一个句柄输出中。
| 从一个命令中读取输出并将其写入另一个命令的输入中。也称作管道。
默认情况下,可以从键盘将命令输入(即 STDIN 句柄)发送到 Cmd.exe,然后由 Cmd.exe 将命令输出(即 STDOUT 句柄)发送到命令提示符窗口。
重定向输入 (<)
要将键盘输入重定向到文件或设备,请使用 < 操作符。例如,要从 File.txt 获取 sort 命令的输入,请键入:
sort<file.txt
File.txt 的内容将以字母顺序列表的方式显示在命令提示符窗口中。
< 操作符可以打开具有只读访问的指定文件名。所以,不能使用该操作符向文件中写入信息。例如,如果以 <&2 启动程序,则所有试图读取句柄 0 的操作都将失败,因为句柄 2 最初是以只写访问打开的。
注意
0 是 < 重定向输入操作符的默认句柄。
重定向输出 (>)
几乎所有的命令都将输出发送到命令提示符窗口。即使将输出发送到驱动器或打印机的命令也会在命令提示符窗口显示消息和提示。
要将输出从命令提示符窗口重定向到文件或设备,请使用 > 操作符。可以在许多命令中使用该操作符。例如,要将 dir 输出重定向到 Dirlist.txt,请键入:
dir>dirlist.txt
如果 Dirlist.txt 不存在,Cmd.exe 将创建该文件。如果 Dirlist.txt 存在,Cmd.exe 将使用 dir 命令的输出替换文件中的信息。
要运行 netsh routing dump 命令,然后将输出发送到 Route.cfg,请键入:
netsh routing dump>c:\route.cfg
> 操作符可以打开具有只写访问属性的指定文件。所以,不能使用该操作符读取文件。例如,如果使用重定向 >&0 启动程序,则所有试图写入句柄 1 的操作都将失败,因为句柄 0 最初是以只读访问打开的。
注意
1 是 > 重定向输出操作符的默认句柄。
复制句柄
重定向操作符 & 可以将输出或输入从一个指定句柄复制到另一个指定的句柄。例如,要将 dir 输出发送到 File.txt 并将错误输出发送到 File.txt,请键入:
dir>c:\file.txt 2>&1
复制句柄时,可以复制该句柄原状态的所有特性。例如,如果一个句柄具有只写访问的属性,则该句柄的所有副本都具有只写访问属性。不能将一个具有只读访问属性的句柄复制到另一个具有只写访问属性的句柄。
使用 & 操作符重定向输入和副本
要将重定向输入操作符 (<) 与复制操作符 (&) 一起使用,指定的文件必须已经存在。如果输入文件存在,Cmd.exe 将以只读方式打开该文件,然后将文件中包含的字符作为输入发送到此命令(如同从键盘输入一样)。如果指定了句柄,Cmd.exe 将指定的句柄复制到系统现有的句柄中。
例如,要以句柄 0 输入读取(即 STDIN)的方式打开 File.txt,请键入:
<file.txt
要打开 File.txt,并在内容排序后将输出发送到命令提示符窗口(即 STDOUT),请键入:
sort<file.txt
要查找 File.txt,然后将句柄 1(即 STDOUT)和句柄 2(即 STDERR)重定向到 Search.txt,请键入:
findfile file.txt>search.txt 2<&1
要以句柄 0 输入读取(即 STDIN)的方式复制用户定义句柄 3,请键入:
<&3
使用 & 操作符重定向输出和复制
如果将输出重定向到文件且指定了现有的文件名,Cmd.exe 将以只写方式打开文件并覆盖该文件内容。如果指定了句柄,Cmd.exe 将文件复制到现有句柄中。
要将用户定义句柄 3 复制到句柄 1,请键入:
>&3
要将包括句柄 2(即 STDERR)的所有输出从 ipconfig 命令重定向到句柄 1(即 STDOUT),然后将输出重定向到 Output.log,请键入:
ipconfig.exe>>output.log 2>&1
使用 >> 重定向操作符追加输出
要从命令中将输出添加到文件末尾而不丢失文件中已存在的任何信息,请使用两个连续的大于号(即 >>)。例如,下面的命令可以将由 dir 命令生成的目录列表追加到 Dirlist.txt 文件:
dir>>dirlist.txt
要将 netstat 命令的输出追加到 Tcpinfo.txt 的末尾,请键入:
netstat>>tcpinfo.txt
使用管道操作符 (|)
管道操作符 (|) 可以提取一个命令的输出(默认情况下是 STDOUT),然后将其导入另一个命令的输入中(默认情况下是 STDIN)。例如,下面的命令将对目录分类:
sample1:
echo hello world>c:\hello.txt (stupid example?)
sample2:
时下DLL木马盛行,我们知道system32是个捉迷藏的好地方,许多木马都削尖了脑袋往那里钻,DLL马也不例外,针对这一点我们可以在安装好系统和必要的应用程序后,对该目录下的EXE和DLL文件作一个记录:
运行CMD--转换目录到system32--dir *.exe>exeback.txt & dir *.dll>dllback.txt,
这样所有的EXE和DLL文件的名称都被分别记录到exeback.txt和dllback.txt中,
日后如发现异常但用传统的方法查不出问题时,则要考虑是不是系统中已经潜入DLL木马了.
这时我们用同样的命令将system32下的EXE和DLL文件记录到另外的exeback1.txt和dllback1.txt中,然后运行:
CMD--fc exeback.txt exeback1.txt>diff.txt & fc dllback.txt dllback1.txt>diff.txt.(用FC命令比较前后两次的DLL和EXE文件,并将结果输入到diff.txt中),这样我们就能发现一些多出来的DLL和EXE文件,然后通过查看创建时间、版本、是否经过压缩等就能够比较容易地判断出是不是已经被DLL木马光顾了。没有是最好,如果有的话也不要直接DEL掉,先用regsvr32 /u trojan.dll将后门DLL文件注销掉,再把它移到回收站里,若系统没有异常反映再将之彻底删除或者提交给杀毒软件公司。
3.< 、>& 、<&
< 从文件中而不是从键盘中读入命令输入。
>& 将一个句柄的输出写入到另一个句柄的输入中。
<& 从一个句柄读取输入并将其写入到另一个句柄输出中。
这些并不常用,也就不多做介绍。
组合命令
2.&&
Usage:第一条命令 && 第二条命令 [&& 第三条命令...]
用这种方法可以同时执行多条命令,当碰到执行出错的命令后将不执行后面的命令,如果一直没有出错则一直执行完所有命令;
Sample:
C:\\>dir z: && dir c:\\Ex4rch
The system cannot find the path specified.
C:\\>dir c:\\Ex4rch && dir z:
Volume in drive C has no label.
Volume Serial Number is 0078-59FB
Directory of c:\\Ex4rch
2002-05-14 23:55 <DIR> .
2002-05-14 23:55 <DIR> ..
2002-05-14 23:55 14 sometips.gif
1 File(s) 14 bytes
2 Dir(s) 768,671,744 bytes free
The system cannot find the path specified.
在做备份的时候可能会用到这种命令会比较简单,如:
dir file://192.168.0.1/database/backup.mdb && copy file://192.168.0.1/database/backup.mdb E:\\backup
如果远程服务器上存在backup.mdb文件,就执行copy命令,若不存在该文件则不执行copy命令。这种用法可以替换IF exist了 :)
3.||
Usage:第一条命令 || 第二条命令 [|| 第三条命令...]
用这种方法可以同时执行多条命令,当碰到执行正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令;
Sample:
C:\\Ex4rch>dir sometips.gif || del sometips.gif
Volume in drive C has no label.
Volume Serial Number is 0078-59FB
Directory of C:\\Ex4rch
2002-05-14 23:55 14 sometips.gif
1 File(s) 14 bytes
0 Dir(s) 768,696,320 bytes free
组合命令使用的例子:
sample:
@copy trojan.exe \\\\%1\\admin$\\system32 && if not errorlevel 1 echo IP %1 USER %2 PASS %3 >>victim
文章出自:http://ttbbull.blog.163.com/blog/static/29873036200710310496899/
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/知新_RL/article/detail/76620
推荐阅读
article
如何在
Linux
系统中
查看
CPU
信息
?_
linux
查看
cpu
...
CPU
(Central Processing Unit),即中央处理器,是计算机的核心部件之一,负责执行指令并控制计算机...
赞
踩
article
bit
流到符号再到波形_
bit
/
s
/hz
是
什么
单位
...
从
bit
到空口波形的处理总结与理解_
bit
/
s
/hz
是
什么
单位
bit
/
s
/hz
是
什么
单位
...
赞
踩
article
网络带宽
单位
转换 — MB/s、
Mb
/s、
Mb
ps
、
Mb
it/s、
Kbps
_带宽
单位
换算...
1、bit/s 和 bps 的区别bit/s 和 bps 都是一样的意思(bit per second)2、KB/s 和...
赞
踩
article
printf
输出
全
格式
(
C语言
)_
printf
(
"
\\
"
)
输出
...
在学尚硅谷
C语言
视频时,想自己先把他说的项目写一遍在去看他的视频,突然发现我对
printf
输出
就只会%d,%f之类的,所...
赞
踩
article
STM32
堆栈
详解_
stm32
堆栈
解读...
文章目录写在开头
堆栈
区分析
堆栈
解释堆和栈的区别
STM32
的分区
STM32
的内存内存概述更新时间2020/10/20写在开...
赞
踩
article
Linux
服务器上
监控
网络
带宽
的18个
常用命令
_
linux
带宽
监控
命令...
链接:https://blog.csdn.net/chengxuyuanyonghu/article/details/7...
赞
踩
article
Linux
命令日志_
ftp
:
//
192.168
.
5.5
:
2112...
1文件管理 61.1basename 61.2cat 61.3cd 71.4chgrp 71.5chmod 81.6ch...
赞
踩
article
uview
1
.x
自定义
tabbar
_
uview
自定义
tabbar
...
在pages.json中正常定义
tabbar
逻辑和字段, 只需配置tabBar字段list中的pagePath属性即可 ...
赞
踩
article
pyhon --
PyQt5
安装
及使用_
python
pyqt5
安装
...
今天看了多个大佬的教程,总算是把开发弄好了,每个部分都要看几个人的十分不方便,我总结了一下。_
python
pyqt5
安...
赞
踩
article
HTML
中
footer
固定
在页面
底部
的若干种方法_
html
页面导入页脚
固定
到
底部
...
html><
html
>
[详细]
-->
赞
踩
article
【
嵌入式
】
STM32
的3种
Boot
与实例验证_
嵌入式
boot
启动
模式
...
目录请说明
STM32
的三种
Boot
模式
的差异,,研究至少两种
boot
模式
下,代码下载(烧录)运行后所在的地址位置,与理论...
赞
踩
article
vue
中
esl
in
t
代码规范校验如何关闭
_
disable
esl
in
t
in
vue
...
1、在webstorm
中
找到file--sett
in
g,搜索框输入
esl
in
t
,如下图将
esl
in
t
选项勾选为disab...
赞
踩
article
【
Java
集合
框架库】
ArrayList
类
_
javaarraylist
库函数
...
ArrayList
类
ArrayList
是一个容量能够动态增长的动态数组。但是它又和数组不一样,它继承了AbstractL...
赞
踩
article
[
Py
Qt
入门教程
]
Qt
Designer
工具的使用_
pyqt
designer
...
新手入门
pyqt
5_
pyqt
designer
pyqt
designer
...
赞
踩
article
【
人工智能
AI】
文心
千帆
大
模型
申请
体验_
文心
千帆
不能
创建
应用
...
文心
千帆
大
模型
如何
申请
?怎么玩转
文心
一言?_
文心
千帆
不能
创建
应用
文心
千帆
不能
创建
应用
...
赞
踩
article
嵌入式
系统
Boot
Loader
启动全过程详解_
boot
to
edload
...
本文详细地介绍了基于
嵌入式
系统
中的 OS 启动加载程序 ――
Boot
Loader
的概念、软件设计的主要任务以及结构...
赞
踩
article
Linux
---
查看
系统资源
占用
(
top
)、磁盘信息监控(df、
iostat
)、网络状态监控(sar...
默认每5秒刷新一次,语法:直接输入
top
即可,按q或ctrl + c退出。Windows的任务管理器。:虚拟
内存
(交换空...
赞
踩
article
linux
显示当前
进程
cpu
,
Linux
上提供
top
、
ps
命令查看当前
cpu
、mem使用情况...
Linux
下提供
top
、
ps
命令查看当前
cpu
、mem使用情况,简要介绍如下:一、使用
ps
查看
进程
的资源占用
ps
-au...
赞
踩
article
Printf
输出
格式总结_
printf
的
输出
规则...
① 首先介绍
printf
输出
正型数,
输出
的
形式为
printf
(“%d”,n);n为变量,n必须被int 或 long i...
赞
踩
article
OpenCV
入门
(
十
)
——
图像
分割
技术_
cv
图像
分割
...
0x01 FloodFill
分割
FloodFill泛洪填充算法是在很多图形绘制软件中常用的填充算法,通常来说是自动选中与...
赞
踩
相关标签
linux
运维
信号处理
经验分享
网络
c语言
stm32
堆栈
嵌入式
前端
python
开发语言
html
vue
eslint
qt
pyqt
ui
人工智能
嵌入式系统
服务器
linux显示当前进程cpu