有一个文件内容是
12345678
"3": "1.0.1",
adcdegfs
想截取101作为新建文件的名字,有没有人能解答一下
::创建test.bat文件,复制以下内容 ,当前目录下创建test.txt文件复制你题目的文件内容
@echo off
::设置文件路径
set FilePath=.\test.txt
::设置匹配行的字符串,匹配包含”3“的行
set comparestr=3
::匹配存放的字符串变量
set str=
:: findstr 在文件FilePath查找包含comparestr的行
:: delims=: 查找到的行按照”:“分割 ,取分割之后的第二列
for /f "delims=: tokens=2" %%i in ( ' findstr %comparestr% %FilePath% ' ) do (
set str=%%i
)
::这是得到字符串str="1.0.1", 再从字符串里面一位一位把1,0,1分别取出来
set del_str=%str:~2,1%%str:~4,1%%str:~6,1%
::输出最后结果 为101
echo %del_str%
::创建101文件夹
md %del_str%
pause
你可以使用以下命令来获取第 2 行的第 4 到 6 个字符并将其写入新的文件中:
sed -n '2p' <input_file> | cut -c 4-6 >output_file
或者使用以下命令来达到同样的效果:
awk 'NR==2 {print substr($0, 4, 3)}' <input_file> >output_file
如果你想直接在命令行中打印出结果而不是将其写入新的文件中,可以使用以下命令:
sed -n '2p' <input_file> | cut -c 4-6
或者:
awk 'NR==2 {print substr($0, 4, 3)}' <input_file>
其中 是你想要读取的文件的文件名, 是你想要写入的文件的文件名。