Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash“;反向;一串_Bash_Shell_Ip_Reverse - Fatal编程技术网

Bash“;反向;一串

Bash“;反向;一串,bash,shell,ip,reverse,Bash,Shell,Ip,Reverse,我想找到一种方法来回应这一点,并显示下面的输出 IP 12.34.56.78 与主机12.34.56.78的输出相同,但没有所有其他术语 也许可以用主机把其他东西都删掉。理想情况下,liek可以避免主机查找 有什么想法吗 谢谢试试这一行: 78.56.34.12 以你的例子: awk -F. '{s="";for (i=NF;i>1;i--) s=s sprintf("%s.",$i);$0=s $1}1' file 如果您有一个前缀主机或IP或其他什么: kent$ echo "

我想找到一种方法来回应这一点,并显示下面的输出

IP 12.34.56.78
与主机12.34.56.78的输出相同,但没有所有其他术语

也许可以用主机把其他东西都删掉。理想情况下,liek可以避免主机查找

有什么想法吗

谢谢

试试这一行:

78.56.34.12
以你的例子:

awk -F. '{s="";for (i=NF;i>1;i--) s=s sprintf("%s.",$i);$0=s $1}1' file
如果您有一个前缀
主机或IP或其他什么

kent$  echo "12.34.56.78"|awk -F. '{s="";for (i=NF;i>1;i--) s=s sprintf("%s.",$i);$0=s $1}1'
78.56.34.12
试试这一行:

78.56.34.12
以你的例子:

awk -F. '{s="";for (i=NF;i>1;i--) s=s sprintf("%s.",$i);$0=s $1}1' file
如果您有一个前缀
主机或IP或其他什么

kent$  echo "12.34.56.78"|awk -F. '{s="";for (i=NF;i>1;i--) s=s sprintf("%s.",$i);$0=s $1}1'
78.56.34.12

我不认为我的答案解决了你的问题,肯特似乎为你提供了一个好方法,但如果其他人希望反转BASH字符串并在这里结束,这可能是有用的:

kent$  echo "FOO 12.34.56.78"|awk -F'[. ]' '{s="";for (i=NF;i>2;i--) s=s sprintf("%s.",$i);$0=$1" "s $2}1' 
FOO 78.56.34.12

我不认为我的答案解决了你的问题,肯特似乎为你提供了一个好方法,但如果其他人希望反转BASH字符串并在这里结束,这可能是有用的:

kent$  echo "FOO 12.34.56.78"|awk -F'[. ]' '{s="";for (i=NF;i>2;i--) s=s sprintf("%s.",$i);$0=$1" "s $2}1' 
FOO 78.56.34.12

+1在这里。我在回答中没有正确地理解这个想法,所以我把它删掉了。无法打败你的
awk
一行+1在这里。我在回答中没有正确地理解这个想法,所以我把它删掉了。无法打败你的
awk
一行!