- 論壇徽章:
- 2
|
本帖最后由 damcool 于 2014-01-01 14:15 編輯
嗨~!現(xiàn)在的年輕人一點(diǎn)點(diǎn)代碼調(diào)試能力都沒有!剛剛找到電腦,看了一下原來的代碼只要去掉xargs后面的-i和{}就可以正常運(yùn)行了。- cat "$FNAME"|awk -v B64="$BASE64CODE" '{while(length()){split(substr($0,1,4),a,"");$0=substr($0,5);t=0;for(i=3;i>=0;i--) t=t+2^(6*i)*((a[4-i]=="=")?0:index(B64,a[4-i])-1);for (i=2;i>=0;i--) if (a[4-i]!="="){printf("\\\\\\x%X",t/2^(8*i));t=t%2^(8*i)}}printf"\n"}'|xargs printf
復(fù)制代碼 或者- for raw_data in $(cat "$FNAME"|awk -v B64="$BASE64CODE" '{while(length()){split(substr($0,1,4),a,"");$0=substr($0,5);t=0;for(i=3;i>=0;i--) t=t+2^(6*i)*((a[4-i]=="=")?0:index(B64,a[4-i])-1);for (i=2;i>=0;i--) if (a[4-i]!="="){printf("\\\\x%X",t/2^(8*i));t=t%2^(8*i)}}printf"\n"}'); do printf "$raw_data";done
復(fù)制代碼 |
|