微前端架构如何改变企业的开发模式与效率提升
600
2022-09-22
Unix & Linux 大学教程 学习总结
两年前我看这本书时,是一本812页的厚书,现在我总结成了40句话,什么时候成了1句话就好了。
Unix & Linux 大学教程 Harley Hahn0,操作系统最重要功能控制计算机并在计算机启动或者重新启动时初始化计算机支持与计算机交互所使用的界面为需要使用计算机资源(磁盘空间、文件位置、处理时间、内存等)的程序提供接口管理计算机的内存维护并管理文件系统调度工作提供账户和安全服务1,内核提供服务:内存管理(虚拟内存管理,包括分页)进程管理(进程创建、终止、调度)进程间通信(本地,网络)输入输出文件管理安全和访问控制网络访问(如TCP/IP)2,Unix=内核+使用工具(包括shell和gui)3, Linus Torvalds4,计算机系统:计算机=终端+主机终端=输入设施+输出设施5,抽象层次 应用程序/用户桌面环境窗口管理器X Window内核中的设备驱动程序硬件6,进程线程在Unix系统中,每个对象或者用文件表示,或者用进程表示。简单地讲,文件存放数据或者允许访问资源,而进程是正在执行的程序。进程可以分成更小的单元,称为线程,线程是一组运行在进程环境中的指令。因此可以将程序的结构描述为,在一个进程之内,不止一个线程在同时进行。7,运行级别0 关机1 单用户2 非标准化3 多用户:CLI4 非标准化5 多用户:GUI6 重启8,快捷键Ctrl + Alt + Left/Right 工作区的切换(基于gnome桌面)9,终端stty -a 获取当前终端行设置intr = ^C(停止正在运行程序); quit = ^\(停止程序并保存core文件); erase = ^?; kill = ^U(删除整行); eof = ^D(提示已经没有数据); start = ^Q(开始屏幕显示);erae = ^H(删除一个字符);stop = ^S(暂停屏幕显示); susp = ^Z(暂停,fg恢复到前台); rprnt = ^R(搜索history命令); werase = ^W(删除一个单词); lnext = ^V; flush = ^O;infocmp 打印终端信息 infocmp vt100 | less (infocmp需要安装ncurses)echo $TERM 得到的默认终端是xtermexport IGNOREEOF=5 可以按^D提示logout或者exit退出10,which type whereistype 是 shell 内嵌,查看内置命令,bash 69个help打印一些内置命令列表11,cal -j 5 2014查看2014年5月的每一天12,uptime,uname13,users,who,finger,w(谁正在做什么)14,bc -l (支持+,-,*,/,%,^,sqrt(x),s(x),c(x),a(x),ln(x),j(n,x))15,RTFM(Read the fucking manual),xman(1).命令 (2).系统调用 (3).函数库 (4).特殊文件 (5).文件格式 (6).游戏 (7).杂项信息 (8).系统管理 man -f 快速查寻命令用法 whatisman -k 关键字 aproposman builtin man bash16,环境变量envperintenvset/unset(csh) set term=vt100setenv/unsetenv(csh) setenv TEST helloexport(bash)set -/+o 显示shell选项控制(bash)17,引用和转义使用反斜线引用单个字符(称为转义了这个字符)使用单引号引用一串字符使用双引号引用一串字符,但是保留$,`,\的特殊意义18,搜素路径export PATH="/...:/..."set path=(/... /...)PS1 shell 提示export PS1="\u\w\@\$"prompt(csh)``命令替换19,fc -l history20,自动补全文件名补全命令补全变量补全用户标识补全主机名补全(bash)21,别名alias,umaliasalias 'a=alias'22,初始化文件.profile文件.rc文件登陆shell(.bash_profile)非登陆shell(.bashrc)23,输入输出<重定向标准输入(同0<)>重定向标准输出(同1>)>>追加标准输出(同1>>)2>重定向标准错误2>>追加标准错误2>&1将标准错误重定向到标准输出>&或者&>重定向标准输出+标准错误(只适用于Bash)|管道2>&1 |所有输出到管道set -o noclobber 可以禁用>,但是可以用>|(强制重写)24,编组和子shell(cd directory; command)25,管道线分流tee(从标准输入读取数据发送屏幕和文件各一份)cat 1 2 3 |tee 123|grep hh (tee可以输出保存不止一个副本)26,条件执行command1 && command2(命令1成功执行后执行命令2)command1 || command2(命令1没有成功后执行命令2)27,过滤器cat|grep|sort|less (1)分析问题(2)选择工具(3)与他人讨论(4)选择选项28,文件简单操作split 分割文件tac 反转文本行顺序rev 反转字符colrm 删除指定的数据列,然后将剩余的数据写入标准输出29,比较和抽取cmp 逐字节地比较两个文件comm 一行一行比较两个有序文本diff 比较无序文本文件cut -f 1,3-5 -d ':' /etc/passwd | sort (f列,d分隔符)cut -c1-8(c按字符)paste 可以将几个文件(其中每个文件都包含一列数据)组成一个大表paste 水平组合数据,cat垂直组合数据30,统计和格式化nl 创建行号wc 统计行、单词和字符:set list 可视化制表符和空格expand将制表符转换成空格(unexpand)fold分割行 fold -s -w 40 file (40个字符一行,单词不分割)31,选取、排列、组合及变换grep (global re print)ls -F /etc |grep -c "/" (c统计)-in(忽略大小写并按行号)-l (列出文件名)-v(reverse,相反)-x (占整行)-r(recursive,递归)-s(suppress,抑制)-E(egrep)looksort -dfnu(sort -u = sort|uniq = cat|sort|uniq)uniq -cdu(d只看重复行,u只看唯一行,c统计行数)join 合并有序数据strings在二进制中搜索字符串 strings /usr/bin/sorttr A-Z a-z < old > new大小写转换[:upper:] [:lower:] [:digit:]32,非交互式文本编辑sedsed 's/h/H/g'ole >new (-i in-place可以改变原始文件)(1)从输入流中读取一行(2)执行指定的命令,对该行进行必要的交换(3)将该行写入到输出流中number [,number] |/regex/ 对指定行进行操作或者包含特定字符串的行5,10s(5到10行)$s(最后一行)/OK/(字符串OK所在行)[0-9][0-9]包含两个连续数字的行-e 多条更改-f 文件33,正则表达式元字符.^$\< 匹配单词的开头\> 匹配单词的结尾[abc] 匹配abc中的任何字符[^abc] 匹配不在abc中的任何字符() 组:视为一个单独的单元| 匹配选择之一\ 引用:从字面上解释元字符运算符* 0或多次+ 1或多次? 0或1次{n} n次 (xyz){5}匹配字符"xyz"5次{n,} 最少n次{,m} 最多m次{n,m} n,m之间次 [0-9]{3,5}匹配3到5个数字类[:lower:] a-z[:upper:] A-Z [:alpha:] A-Za-z[:alnum:] A-Za-z0-9[:digit:] 0-9[:punct:] 标点符号[:blank:] 空格或制表符grep -w 'cat' datagrep '\
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~