Chinaunix

标题: 请教tr,cut的用法 [打印本页]

作者: wuweikailove    时间: 2004-06-25 01:31
标题: 请教tr,cut的用法
哪位大哥大姐可以说下这两个工具的详细用法.谢了.
作者: bjgirl    时间: 2004-06-25 01:54
标题: 请教tr,cut的用法
1:tr,简单的说,用于任何字符的替换,如大小写之间的转换等,
如:
$echo abcd|tr a-z A-Z  #把所有小写字符变成大写
ABCD
$echo abcd|tr a A      #把字母a变成大写A
Abcd
$echo abcd#d|tr '#' ':' #把字符#变成:
abcd:d
...
对于文件同样适用,如:
tr A-Z a-z <filename  #把文件中的所有大写变成小写

2,cut,简单的说是提取文件中指定的列,如:
$echo a b c|cut -f1 -d' ' #取出第一列,-d' '表示指定分隔符是空格
a
$echo abc ddd fff|cut -f2 -d' '  #取出第二列
ddd
$cat /etc/passwd|cut -f1 -d':'  #取出passwd文件里所有的用户名,用':'作为分隔符

上述命令很实用,更多的信息,可以看它们的manpage
作者: wuweikailove    时间: 2004-06-25 10:45
标题: 请教tr,cut的用法
谢啦,再请教下:也就是说tr不可以将字符转变成中文的了?例如:
echo"  ${brhid}各社手续费一览表"|tr 59410 xx农信|tr 59380xx农信......
其中${brhid}的为59380,59410....
那只好等文本生成后用sed的了.
sed 's/各社手续费一览表/xx各社手续费一览表/' ~/tmp/sqsxf/sqsxf59410.txt
这样行吗?
作者: wuweikailove    时间: 2004-06-26 01:37
标题: 请教tr,cut的用法
to bjgirl:
谢啦,再请教下:也就是说tr不可以将字符转变成中文的了?例如:
echo" ${brhid}各社手续费一览表"|tr 59410 xx农信|tr 59380xx农信......
其中${brhid}的为59380,59410....
那只好等文本生成后用sed的了.
sed 's/各社手续费一览表/xx各社手续费一览表/' ~/tmp/sqsxf/sqsxf59410.txt
这样行吗?
作者: bjgirl    时间: 2004-06-26 02:03
标题: 请教tr,cut的用法
tr替换字符是一一对应的,如1<->1,4<->4,如果你非要在汉字<->字符之间
替换的话,我想出现的结果,也许不会令你满意
另外,建议你自己多动手实践实践




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2