ඔබ GNU භාවිතා කරන්නේ නම් විධානය cond නීභවනය කළ හැකිය sed
:
$ sed 's/^[ \t]*//;s/[ \t]*$//' < file
උදාහරණයක්
මෙන්න ඉහත විධානය ක්රියාත්මක වේ.
$ echo -e " \t blahblah \t " | sed 's/^[ \t]*//;s/[ \t]*$//'
blahblah
විධානය මඟින් අපේක්ෂිත අක්ෂර නිවැරදිව ඉවත් කරන hexdump
බව තහවුරු කිරීමට ඔබට භාවිතා කළ හැකිය sed
.
$ echo -e " \t blahblah \t " | sed 's/^[ \t]*//;s/[ \t]*$//' | hexdump -C
00000000 62 6c 61 68 62 6c 61 68 0a |blahblah.|
00000009
චරිත පන්ති
මේ වගේ කට්ටල වචනාර්ථයෙන් ලැයිස්තුගත කිරීම වෙනුවට ඔබට අක්ෂර පන්ති නම් භාවිතා කළ හැකිය [ \t]
:
$ sed 's/^[[:blank:]]*//;s/[[:blank:]]*$//' < file
උදාහරණයක්
$ echo -e " \t blahblah \t " | sed 's/^[[:blank:]]*//;s/[[:blank:]]*$//'
නිත්ය ප්රකාශන (රීජෙක්ස්) භාවිතා කරන බොහෝ GNU මෙවලම් මෙම පන්ති සඳහා සහාය වේ.
[[:alnum:]] - [A-Za-z0-9] Alphanumeric characters
[[:alpha:]] - [A-Za-z] Alphabetic characters
[[:blank:]] - [ \x09] Space or tab characters only
[[:cntrl:]] - [\x00-\x19\x7F] Control characters
[[:digit:]] - [0-9] Numeric characters
[[:graph:]] - [!-~] Printable and visible characters
[[:lower:]] - [a-z] Lower-case alphabetic characters
[[:print:]] - [ -~] Printable (non-Control) characters
[[:punct:]] - [!-/:-@[-`{-~] Punctuation characters
[[:space:]] - [ \t\v\f] All whitespace chars
[[:upper:]] - [A-Z] Upper-case alphabetic characters
[[:xdigit:]] - [0-9a-fA-F] Hexadecimal digit characters
වචනානුසාරයෙන් කට්ටල වෙනුවට මේවා භාවිතා කිරීම සැමවිටම අවකාශය නාස්තියක් සේ පෙනේ, නමුත් ඔබේ කේතය අතේ ගෙන යා හැකි වීම ගැන හෝ විකල්ප අක්ෂර කට්ටල සමඟ ගනුදෙනු කිරීමට සිදුවුවහොත් (ජාත්යන්තර යැයි සිතන්න), එවිට ඔබට පන්ති නම් භාවිතා කිරීමට අවශ්ය වනු ඇත වෙනුවට.
යොමුව