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
一行!