| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1334 人关注过本帖
标题:linux工具与编程
只看楼主 加入收藏
嘛事马肉
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2011-7-31
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:12 
linux工具与编程
从今天开始,小弟开始学习linux编程,参考教材是余国平前辈的《深入浅出Linux工具与编程》!
非常希望得到各位前辈大虾的指点,同时希望与同在起步路上的linux爱好者们互勉互励,坚持将linux这条路一直走下去!
就当做纪念或者笔记吧,小弟打算从今天开始,每天争取将自己的每天所学所感都记录下来,供像我这样的菜鸟们共勉!
呵呵,由于自己目前是个可以说菜鸟都算不上的,所以每天的记录可能比较白痴,请大家见谅,下面就正式开始吧!

搜索更多相关主题的帖子: linux 编程 今天开始 爱好者 Linux 
2012-04-04 13:08
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:5 
欢迎,努力。互勉。

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-04-04 15:25
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
收藏
得分:5 
顶下LZ   让我们一起学LINUX吧, 加油
2012-04-04 15:42
嘛事马肉
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2011-7-31
收藏
得分:0 
Linux系统与命令
这一章作为起步入门,主要应掌握linux操作系统的概念、组成和实现以及一些常见的命令:
1、linux重要的概念:
机器指令、程序、进程、中断、文件系统、文件、文件名、目录、相对路径、绝对路径、shell、inode节点;
(个人认为这其中一定要弄明白的是:程序与进程之间的关系;中断的概念以及CPU在处理中断时的处理方式;至于其他的概念也是挺重要的,我猜了解了这些概念至少在使用命令时应该更加运用自如了)
2、linux组成:
shell、文件系统、内核、实用工具;很显然,在这四者中非要分个主次出来的话,内核应该是最重要的吧!这个内核再分一下可以分出五个子系统出来:进程调度、内存管理、虚拟文件系统、网络接口和进程间通信。这个五个子系统相互之间存在一定的依赖关系:文件系统与内存管理、进程调度与内存管理之间存在相互依赖关系;其次,进程间通信对文件管理和进程调度皆有依赖;文件系统对网络接口和进程调度也有依赖关系;最后网络接口对进程调度有依赖关系。其实,简单点会所,感觉一个操作系统内核要实现的功能是很简单的,对于硬件实现控制功能,对于用户程序实现提供系统调用(也即一些API),内核的使命应该就算完成了吧。
(对于这个shell,还真是没有很好的认知)
3、linux目录结构:
目录结构给出了在树形目录下,各个文件夹中存放的文件内容,应该有助于用命令对系统的一些操作。
4、linux用户管理
这里应该知道linux系统存在三种用户:超级用户、系统用户和普通用户。
一开始对这个系统用户很迷惑,继续看才明白,系统用户是系统内建的用户,是不能用来登陆的。可能很多时候,我也就能充当个第三者了(普通用户)(*^__^*) 嘻嘻……
5、文件管理
我觉得这里应该了解文件属性的表示:
比如:-rwx rwx rwx
-代表的是文件类型为普通文件,第一个rwx代表的是最高用户级别文件拥有者的权限是:read、write and execute(不知道是不是这个单词,;-));后二者就分别代表组用户和其他用户对文件的访问权限了。
6、linux命令
命令太多了,估计要全部记住得把吃奶的劲也给使上,记几个最基本的吧!
useradd username 添加用户名 passwd 设密码 clear 清屏 mkdir rmdir cd cat……
另外,可能命令帮助help和man的用法掌握了也是很有必要的:
命令 --help      man 类型 命令名或函数名  对于man可能还要注意点:因为对于man可获得命令的帮助和系统函数调用的帮助,有的命令名可能与函数名刚好相同了,所以这里你要指出你想获得的帮助类型(这就好比,你想相亲,你得告诉婚介所你要的是male还是female,O(∩_∩)O)

好了,第一章就算完了,下来就是多去当个第三者去试命令了!
2012-04-04 16:00
潇湘741
Rank: 2
等 级:论坛游民
帖 子:13
专家分:20
注 册:2011-9-4
收藏
得分:5 
,共同开始
2012-04-04 17:39
嘛事马肉
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2011-7-31
收藏
得分:0 
chapter 2了
简单归结起来,这一章主要讲了四点内容:正则表达式、find查找命令、sed、awk;下面就来分别回忆一下:
1、正则表达式
看到这个概念时,相信绝大多数朋友们跟小菜鸟我是一个想法,正则表达式,啥玩意儿呀?
余国平前辈是这么说的:正则表达式完成字符串的匹配搜索,可以对满足匹配条件的特定匹配串进行替换等处理!菜鸟我抱着迷糊加怀疑的态度去请教了度娘,度娘说的大概也就这意思,最终才把这蹦蹦乱跳的小心放了下来(看来度娘的魅力还是不可小觑啊O(∩_∩)O)
既然是表达式,就必定会有特定的符号规则,这个正则表达式也逃不过这点,没办法,只能多记记多练练了!
2、find查找命令
find命令的语法形式是这样滴:
find pathname -options [-print -exec -ok](其中的options是有很多选项的,比如-name -perm -prune -user等,表示以不同的方式查找)
常用的命令又是这样滴:
find /home/test -name aa.sh -print
此句表示在/home/test目录下查找名称为aa.sh的文件,并把它的路径打印出来。
3、sed
先说sed是什么玩意儿吧?
其实sed和awk应该算一类东西吧,都可以用来从文件和字符串中抽取所需的信息!
鉴于余前辈说的sed不常用,了解就可以了,我嘛,暂时是菜鸟就不了解了- -
4、awk
就像刚刚说的,awk可以用来从文件和字符串中按指定规则来分解抽取信息。但好像awk还要强一些,它是一种编程语言,其突出的的特点是对文本的列进行操作!
1)、awk有三种调用方式:命令、脚本和命令调用脚本。
2)、对于这个awk,我个人觉得一定得了解几个概念:
记录:所谓的记录其实很简单,就是一行(前提是你的记录分隔符是换行)
记录分隔符:就是用来区分相连的两个记录的符号,一般默认都是换行符
域:域嘛其实就是行里由域分隔符分开的列
域分隔符:很自然的域分隔符就是用来分隔列的符号了,一般默认是tab或者空格
3)、awk命令的一般形式
awk ' BEGIN{action}
awk_pattern1 {action}
……
awk_pattern2 {action}
END {action}
' inputfile
嗯,差不多就这些了,其实理论的目的是在于更好的实践,所以废话不多说,赶紧去实操去了~~~
2012-04-05 20:46
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:5 
回复 4楼 嘛事马肉
1. 最开始,我觉得程序与进程之间的区别搞不太明白也无所谓,因为这些东西说的比较抽象。但文件呀,目录这些比较具体的东西,编程的过程中经常会用到,可以理解理解。而且随着你之后的学习,马上就会加深对它们的印象。shell 是什么,你也可以百度一下。不过它是什么并不重要,它有什么作用,随着你学就会很快认识到了。

4. Linux 下系统的用户的概念,有点像 windows 下服务的那个意思。你可以把 linux 理解成一个宾馆,普通用户就是顾客,linux 当然是顾客至上的理念。你可以向接待员(相当于 shell)提出各种要求,然后就会有很多你看的见(实用工具,比如 find 之类的)或者看不见的(系统用户)工作人员在背后为你服务。当然还有一个像董事长(超级用户)一样的人,偶尔也会来住住。但他来了可以做很多你做不到的事情,比如裁员呀(删除系统文件),调动某些人的职位(配置系统)之类的。

5,那三个单词你都猜对了。充分理解用户和组的概念,对了解 Linux 的管理机制很有帮助。

6,的确命令很多,最常用的也许是 cd 和 ls。当然还有 bash 下的 tab 键!但重要的是在实践中记忆,生背是肯定不行的。而且 man (其实是 manual (手册)的缩写)是非常重要的东西,即使是老手,也是得一天到晚用 man 查东西。只不过查的主题可能不太一样。
不知道你的书上介绍了没有,反正我提一下吧。如果命令和函数是重名的,多半你查到的是命令,比如 man chmod。想查函数的话,用 man 2 chmod。
那个 2 表示在帮助手册第二章里找。手册是有组织结构的,第一章是命令,第二章是系统调用(就是你说的 内核API),第三章是库函数(比如 printf),等等。如果想知道 man 有关的东西,可以 man man,也可以 man --help。对很多比较熟悉的工具来说,后者更常用。

7,接着6里说的知识,你如果想看看正则表达式(regex,全称是 REGular EXpression)有关的东西,可以试试 man 7 regex。希望你的英语水平还好~~

8,find 是个超级牛力的工具。很多时候我们离不了它,但就我的经验来说,直接调用它的机率并不是很高。多半都是写在脚本里自动调用的。另一个很有实用价值的工具是 grep,以及它的变种。也许你之后会学到,grep 要求掌握正则表达式。

9,sed 和 awk,一般也都是用在脚本里。你之后学完 shell 编程,会更多的用到它们。(awk 其实我也不太会用,也就是别人写的我能看懂的水平。我自己几乎很少用到它,有其它工具可以代替;sed 很少巧,还是会经常用到的。)


以后有心得可以单独发帖总结。如果你愿意,可以在这个帖子里给个新帖子的链接。
有问题也可以发帖问,没有问题当然也可以交流一下。linux 版区很冷清的,你可以给它带来点活力。希望我可以帮到你。

[ 本帖最后由 pangding 于 2012-4-5 23:21 编辑 ]
2012-04-05 23:19
嘛事马肉
Rank: 2
等 级:论坛游民
帖 子:22
专家分:13
注 册:2011-7-31
收藏
得分:0 
回复 7楼 pangding
非常感谢斑竹的详细点评指导,看完你滴指导,很多地方是顿然茅塞顿开啊!比如那个man 2 write,一直不搞不懂里面这个2是什么意思,为什么用2,现在经斑竹这么一指点,明了!感谢啊
能给linux这里带来点活力,那是小弟滴荣幸啊,大家们加油加油……
2012-04-06 20:28
生活不容易
Rank: 1
等 级:新手上路
帖 子:5
专家分:1
注 册:2012-3-22
收藏
得分:0 
我想装linux虚拟机 可是好几次都没成功 求帮助
2012-04-10 19:37
鱼竿的传说
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2012-3-15
收藏
得分:0 
回复 9楼 生活不容易
如果你放心,可以远程帮你操作

  224664214

声明:非广告,都是些菜鸟,一起学习的

如果本回复有违论坛相关规定,谢谢斑竹删除!
2012-04-13 14:05
快速回复:linux工具与编程
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017567 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved