linux个⼈测试⽤例grep命令有什么用
1. 我想在某个⽬录下, 到某个⽂件中有某个字符(leon)的⽂件, 并列出来? (如果是在windows下, 可能需要⼀个⽂件⼀个⽂件的看, 但是在 linux 下可以实现)
find . –maxdepth 1 –exec grep leon {} \;
上⾯的命令, 虽然到了当前⽬录下的哪个⽂件有 leon 这个字符串, 但是并没有写出⽂件是什么.
find . –maxdepth 1 | xargs grep leon;
这个命令达到了我想要的效果.
另外, 通过 ls | xargs grep leon; 也可以达到我要的效果
但是, ls | grep leon ; 直接这么使⽤就不⾏.
分析:
| 管道命令是前⼀个命令的输出standout 被后⼀个命令所读取
ls | grep leon, 这个命令, 前⾯输出的是屏幕上显⽰的内容, 只是字符, 后边 grep 截取命令只是在这些字符中截取是否有 leon 这个字符
⽽ xargs 是将前⼀个命令的结果作为 standin, 这就好⽐ grep leon ⽂件名(输⼊内容), 这肯定是可以到的.
总之, 还是有点迷糊, 不过实验成功了.
2. Linux 字符集
locale -a 显⽰系统⽀持的所有字符集
LANG="zh_cn.utf8" 修改字符集
echo $LANG
export LANG
env | grep LANG
LANG="en_us.utf8"
echo $LANG
export LANG
env | grep LANG
另外在 etc/sysconfig/i18n 这个⽂件可以设置默认字符集, 最好还是以这个为准吧, 因为将来当你从 sqlplus ⽤ ! 切换到外边的bash时, 实际上是重新构建了⼀个bash, 这时就要参考这个字符集.