【CMD命令】
1、分行输入环境变量
使用echo %PATH%输出环境变量的时候没有分行输出,看起来十分麻烦;
通过xargs命令可以实现分行输出,命令如下:
echo %PATH% | xargs -d ; -n 1
原理:
-d选项为输入指定一个定制的定界符,环境变量中的每一项通过‘;’来分割。
-n选项指定每行最大的参数数量,-n 1指定为一行。
2、批处理获取当前目录的绝对路径:
1 @echo off 2 echo 当前盘符:%~d0 3 echo 当前盘符和路径:%~dp0 4 echo 当前批处理全路径:%~f0 5 echo 当前盘符和路径的短文件名格式:%~sdp0 6 echo 当前CMD默认目录:%cd% 7 pause
3、rem命令
rem 表示此命令后的字符为解释行,不执行,相当于注释掉了,只是给自己今后查找用的;
::也可以起到 rem 的注释作用, 而且更简洁有效;
【Linux命令】
1、删除所有子目录下后缀为.txt的文件
find -name "*.txt" -print | xargs rm -rf
这种情况有可能会删除不必要删除的文件。因为无法预测分割find命令输出结果的定界符究竟是' '还是' '。很多文件名中可能包含空格符,而xargs很可能会误以为他们是定界符(例如,hello word.txt会被xargs误以为hello和world.txt)。
只要我们把find的输出作为xargs的输入,就必须将-print0与find结合使用,以字符null来分割输出。
另一种用法,用find匹配并列出所有的.txt文件,然后xargs将这些文件删除:
find . -type f -name "*.txt" -print0 | xargs -0 rm -rf
xargs -0将 作为输入的定界符;
2、