lihuixian的个人博客分享 http://blog.sciencenet.cn/u/lihuixian

博文

常用Linux命令及常识

已有 3377 次阅读 2013-9-27 13:15 |个人分类:Linux命令|系统分类:科研笔记| Linux

一直不会用Linux系统,也很难有时间系统学习。本着实用主义的原则,就先把自己用到的一些命令记录下来。不至于再遇到的时候重复google或者再次打扰同事。

一个比较全的参考网址:http://linux.chinaitlab.com/special/linuxcom/

 

管道命令|与重定向<、>

管道命令操作符是:"|",它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard error 信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入 standard input.

  • 管道命令使用说明:

先看下下面图:

image

command1正确输出,作为command2的输入 然后comand2的输出作为,comand3的输入 ,comand3输出就会直接显示在屏幕上面了。

通过管道之后:comand1,comand2的正确输出不显示在屏幕上面

注意:

1、管道命令只处理前一个命令正确输出,不处理错误输出

2、管道命令右边命令,必须能够接收标准输入流命令才行。

管道命令与重定向的区别是:

1、左边的命令应该有标准输出 | 右边的命令应该接受标准输入
  左边的命令应该有标准输出 > 右边只能是文件
  左边的命令应该需要标准输入 < 右边只能是文件

2、管道触发两个子进程执行"|"两边的程序;而重定向是在一个进程内执行

一般如果是命令间传递参数,还是管道的好,如果处理输出结果需要重定向到文件,还是用重定向输出比较好。

我用到的实例

1、将脚本文件compile_test传给IDL执行后退出IDL。

idl < compile_test

2、对于文本的处理

cat table6.txt | grep III > table6_III.txt

上面语句实现的功能是:找出table6.txt文件中含有III的行,并将这些行输出到table6_III.txt文件中。

cat table6.txt | grep -v III | grep II >table6_II.txt

上面语句实现的功能是:找出table6.txt文件中含有II的行且不含油III的行,并将这些行输出到table6_II.txt文件中。(意思是要剔除掉含有III的行,只保留含有II的行。因为在找的过程中,含有III的行也符合含有II的条件)

参考网址:http://www.cnblogs.com/chengmo/archive/2010/10/21/1856577.html 

 

.bashrc  - The individual per-interactive-shell startup file.
这个文件主要保存个人的一些个性化设置,如命令别名、路径等。每次修改.bashrc后,使用source ~/.bashrc(或者 . ~/.bashrc,这里的第一个.相当于source)就可以立刻加载修改后的设置,使之生效。一般会在.bash_profile文件中显式调用.bashrc。登陆linux启动bash时首先会去读取~/.bash_profile文件,这样~/.bashrc也就得到执行了,个性化设置也就生效了。

参考网址:http://zhidao.baidu.com/question/129164766.html

 

grep 查找文件里符合条件的字符串

进入到所查找文件所在的路径执行grep命令。

如在当前路径下的所有IDL过程中查找xsize关键字:grep xsize *.pro

网络资源:grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。

常用参数:

-c或--count   计算符合范本样式的列数。
-d<进行动作>或--directories=<进行动作>   当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
-H或--with-filename   在显示符合范本样式的那一列之前,表示该列所属的文件名称。
-i或--ignore-case   忽略字符大小写的差别。
-l或--file-with-matches   列出文件内容符合指定的范本样式的文件名称。
-v或--revert-match   反转查找,实际上是不查找。

参考网址:http://www.linuxso.com/command/grep.html 

 

rm 删除文件或目录

参数: 
  -i 删除前逐一询问确认。(i->interactive)
  -f 即使原文件属性设为只读,亦直接删除,无需逐一确认。(f->force)
  -r 将目录及目录下的文件逐一删除。(r->recursive  [ri'kə:siv] [计]递归的;循环的)

这些参数可以配合使用,如将 directory 目录下的子目录及子目录中所有文件删除,并且无需逐一确认,则使用如下命令:rm -rf directory。

为了避免误删,删除某个文件一般使用 rm -i filename。也可以在配置文件.bashrc中添加命令别名来实现。如在.bashrc中加入 alias rm='rm -i'语句,则再执行rm filename时相当于执行了 rm -i filename。(alias ['eiliæs] 别名,化名)。此时如果想删除一批文件每次询问显得繁琐,可以在保证不误删的前提下使用rm -f filename。

 

vi 编辑器

删除至行尾:d$(将光标移至起始删除处敲 d$ 则删除至行尾)

参考网址:http://www.eepw.com.cn/article/48018.htm

在Windows系统下使用vi可以对文件进行块操作,具体指令如下:

ctrl+q 块操作

Y 拷贝

P 粘贴

O 新开一行

gg 到文件头

G 到文件尾

V 按行选

d 删除

移动光标: 左(h)、右(l)、上(k)、下(j)

U 取消操作

 

wget 用于下载网络资源

基本语法:wget [参数列表] URL

参考网址:http://linux.blogbus.com/logs/46636997.html

 

声明:以上内容大部分参考了网络上的资源,但大都不是原文拷贝,且参考网址较多,抱歉不能一一列出。



https://wap.sciencenet.cn/blog-473646-728276.html

上一篇:IDL中经常忘记而需要查阅的内容
下一篇:写文章时应该注意的一些细节
收藏 IP: 159.226.171.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-19 15:34

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部