2013-11-25 8 views
13

में मैं इस कोशिश कर रहा हूँ:चर से% 0 d निकालें मार

token=`curl -I --header "X-Auth-User: [email protected]" --header "X-Auth-Key: XXXXXXXXXXXXXXXXXXXXXX" api.server.com | grep -Fi X-Auth-Token | awk -F" " '{ print $2}'` 

/usr/bin/wget --accept .jpg,.jpeg -p "https://api.server.com/v1/stats/1/graph?callback=jQuery171027000000144289315_1380000003353&mnum=1&res_type=cpu&g_type=6h&graph_type=img&full=1&w=515&h=150&X-Auth-Token=$token" -O "image.jpg" || rm "image.jpg" 

लेकिन मेरे टोकन परिणाम है:

https://api.server.com/v1/stats/1/graph?callback=jQuery171027000000144289315_1380000003353&mnum=1&res_type=cpu&g_type=6h&graph_type=img&full=1&w=515&h=150&X-Auth-Token=SERVER_018d8100000000001d1b817f7d58a6%0D 

बजाय:

https://api.server.com/v1/stats/1/graph?callback=jQuery171027000000144289315_1380000003353&mnum=1&res_type=cpu&g_type=6h&graph_type=img&full=1&w=515&h=150&X-Auth-Token=SERVER_018d8100000000001d1b817f7d58a6 

% निकालने का तरीका 0 डी (कैरिज रिटर्न)?

उत्तर

24

आप किसी भी कैरिज रिटर्न को पट्टी करने के लिए अपनी कर्ल पाइपलाइन में | tr -d '\r' जोड़ सकते हैं।

+1

तरह से मैं इस पढ़ें, यह भेजने के सर्वर है, जिसका URL एन्कोड गाड़ी वापसी पर टैक्स। तो ट्रिम करने के लिए कोई क्लाइंट-साइड सीआर नहीं है। – tripleee

+0

@ ट्रिपली कैरिज रिटर्न यूआरएल में कर्ल हेड प्रतिक्रिया से लिया जाता है, और wget url इसे एन्कोड करता है। आप 'curl -I google.com | दोनों के साथ दोनों प्रभाव देख सकते हैं cat -v' और 'wget $' http: //google.com/ \ r'' –

+0

यहां TR के बारे में अधिक जानकारी: http://pubs.opengroup.org/onlinepubs/009695399/utilities/tr.html –

1

डॉस 2unix नामक एक उपयोगिता है। आपको इसे इंस्टॉल करना पड़ सकता है। या अनुवाद कर

tr -d '\r' <input> output 

संपादित मिले एक पोस्ट है कि कुछ ही विकल्प पर चर्चा करता है का उपयोग करें: Remove carriage return in Unix

0

मैं sed लिए पाइपिंग द्वारा इसे हल। मैं पहले से ही अपने पाइप में sed का उपयोग कर रहा था इसलिए यह समझ में आया।

cmd | sed 's/\r//g'

संबंधित मुद्दे