基本 bash 脚本、枚举和命令替换工具问题
Basic bash scripting, enumeration and comman replacement tool issues
我试图在我的 debian7 bash 中生成许多无效的 ipv4 地址和一些有效的地址。
我的计划是:
echo {0..3 , 00..03 , 000..003 , 300..303 , 254..257 , 0254..0257 , fail , 888}
echo -e "\n"!^.!^.!^.!^ >> ip.txt
但它只是回应
"{0..3 00..03 000..003 300..303 254..257 0254..0257 fail 888}" x4
每当我在每个大括号中给出一个以上的数字区域时。
echo {a..c , A..C} end up as
"{a..c A..C}"
where i want
"a b c A B C"
所以我很好奇>>只有一个花括号<<
这是否可行
__
我的下一个想法是这样解决:
echo -e "\n"{0..3}.{0..3}.{0..3}.{0..3} >> ip.txt
^0..3^00..03
but there is only replaces one piece
echo -e "\n"{00..03}.{0..3}.{0..3}.{0..3} >> ip.txt
有没有办法用这个“^x^y”工具一次性全部替换?
抱歉,我刚接触这个基本问题 bash,除了学校课程,我也想在家学习
感谢您对必要文献的任何帮助或提示
我猜你想要这样的东西:
for a in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for b in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for c in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for d in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
echo "$a"."$b"."$c"."$d"
done
done
done
done
脚本输出 456976
想要的 IP 地址:
0.0.0.0
0.0.0.1
0.0.0.2
0.0.0.3
0.0.0.00
...
888.888.888.0255
888.888.888.0256
888.888.888.0257
888.888.888.fail
888.888.888.888
如果您想避免使用循环,您可以通过 .
连接每个部分,如下所示:
echo -e {{1..3},{5..7}}.{{1..3},{5..7}}.{{1..3},{5..7}}.{{1..3},{5..7}}"\n"
我试图在我的 debian7 bash 中生成许多无效的 ipv4 地址和一些有效的地址。 我的计划是:
echo {0..3 , 00..03 , 000..003 , 300..303 , 254..257 , 0254..0257 , fail , 888}
echo -e "\n"!^.!^.!^.!^ >> ip.txt
但它只是回应
"{0..3 00..03 000..003 300..303 254..257 0254..0257 fail 888}" x4
每当我在每个大括号中给出一个以上的数字区域时。
echo {a..c , A..C} end up as
"{a..c A..C}"
where i want
"a b c A B C"
所以我很好奇>>只有一个花括号<<
这是否可行__
我的下一个想法是这样解决:
echo -e "\n"{0..3}.{0..3}.{0..3}.{0..3} >> ip.txt
^0..3^00..03
but there is only replaces one piece
echo -e "\n"{00..03}.{0..3}.{0..3}.{0..3} >> ip.txt
有没有办法用这个“^x^y”工具一次性全部替换?
抱歉,我刚接触这个基本问题 bash,除了学校课程,我也想在家学习
感谢您对必要文献的任何帮助或提示
我猜你想要这样的东西:
for a in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for b in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for c in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
for d in {{0..3},{00..03},{000..003},{300..303},{254..257},{0254..0257},fail,888} ; do
echo "$a"."$b"."$c"."$d"
done
done
done
done
脚本输出 456976
想要的 IP 地址:
0.0.0.0
0.0.0.1
0.0.0.2
0.0.0.3
0.0.0.00
...
888.888.888.0255
888.888.888.0256
888.888.888.0257
888.888.888.fail
888.888.888.888
如果您想避免使用循环,您可以通过 .
连接每个部分,如下所示:
echo -e {{1..3},{5..7}}.{{1..3},{5..7}}.{{1..3},{5..7}}.{{1..3},{5..7}}"\n"