版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,在Linux下工作,致攀登Linux高峰的勇士,余浩 (),序章,Linux技术不是一天练成的。我们假定您已经具备少量的Linux基础知识,所以本课程的重点将放在使用技巧的探讨部分,而基础命令将以复习的形式呈现。 由于 grep, sort, sed, awk, perl 命令过于强大,本课程暂不深入讨论。,基础命令的复习 文件操作命令 文本处理命令 打包、压缩与解压命令 进程管理命令,权限、进程的管理 环境变量与配置文件 了解配置文件 设置环境变量 设置PATH 设置别名 设置Vi/Vim 设置动态链接库 设置Perl库 软件的安装 其它可能用得到的技巧,本课件包含了大量的Linux使用技
2、巧,虽然算不上很具体、很全面,但我相信如果能认真将其阅读完,您的Linux操作技术将会更上一层楼。 2014年4月11日 深圳,shell,shell是Linux的命令解析器,它的任务就是解析用户输入的命令,是Linux中直接与用户交互的程序。 大多数Linux默认的shell是bash(BioLinux-7默认是zsh)。常见的shell有sh、bash、csh、tcsh、ksh、zsh,它们本身就是一种程序,各有各的特点。本课程以bash为例。 改变默认shell的命令是 chsh,无所不能的帮助文档,Help选项 COMMAND -help 或 COMMAND -help COMMAND
3、 -h Manual文档 man COMMAND Information文档 info COMMAND 官方Readme文档 网络(wiki、论坛),Manual文档截图,基础命令的回顾,良好的基础是高效工作的源泉,需要回顾的基础命令,常用的文件操作命令,常用的文本处理命令,常用的打包、压缩与解压命令,常用的进程管理命令,使用技巧的探讨,很多技巧是通过反复尝试而形成的,Linux的权限设置,Linux之所以安全,其自身的文件访问权限设置功不可没。 Linux的文件权限分为“读(r)、写(w)、执行(x)”,其作用域分为“所有者(own)、同组成员(groups)、其他成员(others)”。
4、文件只有当访问者属于正确的作用域,才能进行相应的访问。 改变权限和所有者的命令分别是 chmod 和 chown,属性所有者同组成员其他成员 -rwxrwxrwx -,数字表示法 r = 4 w = 2 x = 1 rw = 6 rx = 5 wx = 3 rwx = 7,属性 d = 目录 l = 软链接 - = 普通文件,管理任务与进程,在我们的正常工作中,对任务与进程的管理能力是必不可少的。事实上,大多数人只会简单地杀任务,却无法应对一些较为复杂的局面。 最常用的任务管理程序莫过于 top, PS, kill, pkill 命令。 运行 top 可以不带任何选项,它将提供一个控制台界面,
5、通过键盘操作。而 ps 命令往往需要带一些常用选项,如:-a, -u, -x 命令 kill 和 pkill 都是中止任务与进程的命令,区别在于 kill 命令通过PID中止进程,而 pkill 则通过进程名。 利用 kill 中止任务与进程:kill PID 利用 pkill 中止任务与进程:pkill PNAME 利用 pkill 和通配符配合使用,可以批量中止任务。,top VS. ps,top 命令(上图)和 ps 命令(下图)都是Linux下的任务管理程序,但这两者区别很大。 top 通过周期性地读取 /proc 中的文件,来达到监控进程的目的。 ps 是直接读取内存中的系统状态。
6、所以 ps 的反应要比 top 快,但 top 更加直观。,top,ps u,内存占用量,CPU占用比,内存占用比,进程的CPU时间,链接的妙用,Linux中的链接,相当于windows下的“拷贝”和“快捷方式”。然而,从使用角度来讲,链接的用处更为广泛,更加精巧。 链接分为软链接(快捷方式)和硬链接(拷贝)。不论哪种都可以通过 ln 或 link 这两个命令创建(其实是一个命令的两种写法)。创建软、硬链接的区别是软链接的创建需要加上 -s 这个选项。 创建硬链接:ln/link SOURCE TARGET 创建软链接:ln/link -s SOURCE TARGET 如果不输入 TARGET
7、 ,则会使用“本体”的文件名代替。,软链接,本体,硬链接,本体,软链接占用的磁盘空间,硬链接占用的磁盘空间,了不起的管道与重定向,Linux的管道和重定向是一项了不起的设计。对它们熟练使用的程度甚至一度被认为是Linux用户水平的标志。 管道的符号是“|”(分隔符),表示将其左边的标准输出作为右边的标准输入。,案例 11:,典型的“管道”,典型的“重定向”,没有空格,否则会报错,环境变量与配置文件,Linux的环境变量有点类似与Windows的控制面板中的各种选项(更像注册表),但其功能要强大许多,也更加安全。 配置文件是用来存储环境变量的。环境变量往往分为用户级别和系统级别。相应的,配置文件
8、也可以存放在用户目录和系统目录。 多数情况下,用户目录下的配置文件和系统目录下的配置文件,其文件名几乎相同,但用户目录的配置文件名开头往往会多一个点(“.”),表示这是个隐藏文件,通常只能通过 ls -a 或TAB自动补全(要双击TAB)查看。 用户没有设置某个环境变量,并不代表这个变量没有被设置。原因是当用户没有去设置某个环境变量时,这个环境变量自动将其系统级别的值作为默认值。 系统有环境变量和配置文件,一些程序也可以有自己的环境变量和配置文件。,ls -a 结果,一些重要的用户级别配置文件目录,有用户级别的配置文件一般就有对应的系统级别的配置文件,其文件名大致相同,但存储位置在/etc目录
9、。 有系统级别的配置文件不一定有对应的用户级别的配置文件,比如:Apache服务的配置文件只有系统级别(在/etc/httpd/里)。 用户级别的文件往往优先级高于系统级别(优先读取)。 如果某位用户发觉其登录节点发生异常,那么建议优先检查自己的$HOME文件夹中的配置文件是否有问题,大多数系统的故障都和环境变量的错误设置以及文件路径的不正确有关。 和配置文件一样,环境变量同样分为系统级别和用户级别,并且用户级别的环境变量的优先级高于系统级别。 通常情况下,常用的环境变量被写入配置文件中,在系统启动、登录时自动调用和设置。 设置好的环境变量要通过 export 命令(sh, bash)或 se
10、tenv 命令(csh, tcsh)使其生效。,常见的环境变量,有没有想过为什么在执行有些命令时,需要输入完整的路径,而有些命令只需要输入命令本身即可? 当输入命令时,系统将优先搜索 PATH 变量所指向的文件夹。 如果一个命令在两个不同的 PATH 变量里都存在,系统将优先使用排在前面(左边)的 PATH 变量里的命令(命令的优先级)。,案例 01:,查询PATH变量:,设置PATH变量:,关于命令的检索路径,不得不提一下的“优先级”,在Linux的使用过程中,随着软件的升级,常常会遇到这样的情况:同一款软件有许多不同的版本,比如:Perl 5.8.8, Perl 5.16.2, Perl
11、5.18.1等等。那么我们到底执行的是那个版本呢?这就涉及到了命令的优先级这个问题。 在前面我们提到了 PATH 变量中,排在左边的优先级高,也就是说系统从左到右在 PATH 变量中检索相应的命令,如果找到了,则无需再到下一个 PATH 中去找,如果找不到,则继续再下一个变量中寻找,直到检索完全部的 PATH 变量。 通过 which 命令,我们可以查询我们用的命令在哪个 PATH 中。,案例 02:,这是我的Perl的路径,当我执行 perl 命令时,其实就是执行的这个Perl 如果额外安装了新版本的Perl,这个路径可能会变化,设置别名最大好处是可以将繁琐的路径或命令用简单易懂的名字或符号
12、代替,有点类似数学中的“换元法”。 设置别名的方法有很多,其中最常见、最简单的是用 alias 命令。,案例 03:,bash Shell的语法是非常严格的,千万不要随意添加或删除空格,也不要随意换行 bash语句可以不用分号结尾,为什么要设置别名,Vi/Vim的简单配置,Vi/Vim是我们最常用的文本编辑器之一,它虽然功能强大,但其默认的设置使之看起来非常简陋,因此,我们需要对它进行简单的个性化。 前面提到过,Vi/Vim的用户级别配置文件是/.vimrc 我们只需要往里面加入配置命令就行了。以下是建议的配置:,案例 06:,忽略键盘模式兼容性,显示行号,在右下角显示当前行号和当前光标位置,
13、设置TAB缩进数和自动缩进数,将TAB转化为空格(慎重),设置智能缩进与自动缩进,高亮匹配与符号匹配,语法高亮和文件类型探测,set nowrap 取消自动换行,插入语:简单的Vi/Vim使用技巧,现代的程序几乎不可能从头到尾由一个人构架、编写和维护,因此,代码的相互交流成为非常普遍的事情。 动态链接库的诞生就是为了让大家共享一些优质的代码,并以此为基础开发出自己的程序,但同时却不会增加新程序的文件体积(相对于“静态链接库”)。 你可以将其理解为“参考文献”。,令人头疼的动态链接库,share library,code B,code A,library X,library X,code B,c
14、ode A,动态链接库,静态链接库,对于生物信息领域,常用的一些程序并非标准的C/C+编写;同时,程序的设计者为了保证兼容性,也并不一定非要将其程序所需的“动态链接库”放到默认的目录里。因此,就需要我们自定义“动态链接库”的路径。 常用的“动态链接库”添加方法是:设置变量 LD_LIBARAY_PATH 如果处在标准的编译程序过程中( make 编译),可以在MakeFile文件或 gcc 编译选项中修改 CFLAGS, CPPFLAGS, CXXFLAGS 或 LDFLAGS 参数值(其实就是修改相应的路径)来达到同样的目的。,自定义“动态链接库”路径,案例 04:,关于Perl库,Perl
15、库一般是用来存储Perl模块的 在Linux中,默认的Perl库位置是/usr/lib/perl5/, /usr/lib64/perl5/ 通过perl的 INC 数组,我们可以了解有哪些Perl库路径,方法是:perl -e print INCn 最简单的配置Perl库路径的方法是通过 PERLLIB 或 PERL5LIB 变量进行设置。,案例 05:,为了保证兼容性,这里的 $HOME 变量不一定能用 “” 代替,最容易被忽略的字符集设置,在众多的环境变量设置中,字符集的设置往往容易被忽略。 如果字符集设置不恰当,有可能导致我们没法正常运行脚本,包括:bash、perl、python、ru
16、by等解析型语言脚本。 查询字符集的命令是 locale,案例 07:,案例 08:,变量名和locale结果是一一对应的 如果确实不知道该怎样设置,除了LANG变量,其余的全部设置为“C”,软件的安装,操作系统本来就是拿来用的,安装软件的一般方法,一般用户在大型机中安装软件,最简单的方法是自行通过源代码编译。 经典的通过源码安装软件的命令是:./configure Enter; ESC。具体用法是先按下 ctrl + v,然后按下特殊字符即可。 如:sed s/M/ a.fa 将换行符换成TAB。,M就是换行符的表现方式,TAB的表现方式,如果不使用 ctrl + v,将会启动自动补全,行分隔符“n”的历史遗留问题,在Linux中,行分隔符是我们经常接触到的一个符号。有人称它为“回车”,有人称它为“换行”。 实际上,“回车”和“换行”是两个过程:“回车”指让光标回到行首;“换行”指光标移
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026天津宁河投资控股集团有限公司招聘1人笔试参考题库及答案详解
- 2026甘肃省消防救援总队机关招聘消防文员3人笔试备考试题及答案详解
- 2026北京航空航天大学实验学校聘用编中学部行政办公室职员F岗招聘1人笔试备考试题及答案详解
- 2026虎驼峰实业(集团)有限公司招聘50人笔试模拟试题及答案详解
- 2026四川爱创科技有限公司招聘海外营销中心总监岗位1人笔试备考题库及答案详解
- 2025年华夏银行(太原分行)校园招聘笔试考试试题及答案详解
- 2026贵州黔东南州镇远县乡镇政府专职消防员招录16人笔试备考题库及答案详解
- 2026中化学西南工程科技有限公司招聘14人笔试备考试题及答案详解
- 2026北航实验学校中学部招聘笔试备考试题及答案详解
- 2026江苏南京生物医药创新转化研究院招聘2人笔试备考试题及答案详解
- ip地址管理规范制度
- 2026年高考化学一轮复习:必修1默写小纸条(57天含答案)
- 吡喹酮在不同温度条件下的保质期确定研究-洞察及研究
- 2026年二级建造师之二建水利水电实务考试题库300道附答案【模拟题】
- 智能无人驾驶车辆标准体系研究报告
- 隧道安全隐患排查培训课件
- 教育部突发事件应急预案
- 讲解软体家具方案
- 数控刀具刀柄讲解
- GB/T 15620-2025镍及镍合金实心焊丝和焊带
- 小学生安全用电知识课件下
评论
0/150
提交评论