मैं कई बार कोशिश की है SQLCMD करने के लिए वास्तविक टैब चरित्र पारित करने के लिए भाग निकले ऐसा करने के लिए, और मैं बस इसे लेने के लिए नहीं मिल सकता है। मेरा पसंदीदा काम-टू-टू-डेट एसएससीसीएमडी को एएससीआईआई "यूनिट सेपरेटर" पास करना है, जो हेक्स 0x1F है, और Ctrl-_ टाइप करके कमांड लाइन पर दर्ज किया जा सकता है (नियंत्रण अंडरस्कोर, जो यूएस कीबोर्ड पर ctrl-shift बन जाता है -'- '(' - 'कुंजीपटल की शीर्ष पंक्ति पर' 0 'के बगल में)
' यूनिट सेपरेटर 'का उपयोग करने का लाभ यह है कि किसी के पाठ में उपस्थित होने की संभावना बहुत अधिक है विवरण, और इस उद्देश्य के लिए विशेष रूप से डिजाइन किया गया था (https://en.wikipedia.org/wiki/Delimiter देखें)
करने के लिए है कि मेरे लिए SQLCMD मिला, मैं तो पाइप यह उत्पादन हालांकि एक यूनिक्स शैली कमांड का अनुवाद के रूप में:
tr '\037' '\t'
\ 037 'यूनिट सेपरेटर' के लिए ऑक्टल है, और \ t टैब वर्ण का प्रतिनिधित्व करता है, 'tr' हमारे लिए इनमें से दोनों का अनुवाद करेगा, हमें हमारी स्क्रिप्ट या गोले में किसी भी उद्धरण युक्तियों पर भरोसा करने की आवश्यकता नहीं है।
विंडोज़ पर 'tr' प्राप्त करने के लिए, आप CoreUtils पैकेज को GnuWin32 से इंस्टॉल कर सकते हैं (http://gnuwin32.sourceforge.net/packages/coreutils.htm देखें) या भारी वजन लें और एक पूर्ण यूनिक्स वातावरण जैसे सिगविन (http://cygwin.com/) इंस्टॉल करें।
एक साथ दो लाना हम पाते हैं:
sqlcmd ... -h-1 -W -k -r1 -s^_ ... | tr '\037' '\t'
और यह आप टैब के साथ अपने उत्पादन दे देंगे।
ऊपर दिए गए अन्य विकल्पों को देखें, वे SQLCMD से साफ़ आउटपुट प्राप्त करने के लिए आवश्यक हैं (क्रम में; कोई हेडर नहीं, सफेद स्थान को ट्रिम करें, सीआरएलएफ रिक्त स्थान पर, एसटीडीईआरआर में त्रुटियां (आपका आउटपुट नहीं फ़ाइल!) और '^ _' यह है कि यूनिट सेपरेटर कमांड लाइन पर कैसे दिखाई देगा)। आपको "सेट नॉट चालू" भी जोड़ना होगा; आपकी क्वेरी या एसक्यूएल स्क्रिप्ट के लिए, अन्यथा आपको अपने आउटपुट में दिखाई देने वाले एक शानदार संदेश के रूप में पंक्ति-गणना मिल जाएगी!
महान जवाब देने !!!! दूसरों के लिए PowerShell में ऐसा करने के लिए देख रहे हैं - ध्यान दें कि '-s' के बाद की जगह महत्वपूर्ण है। :) –