C高级自我学习(3)及Linux基础

stastic特性应用

1,全局静态变量
  • 内存中的位置:静态存储区
  • 初始化:未经初始化的全局变量会被程序自动赋值为0
  • 作用域:全局静态变量再声明他的文件之外是不可见的,从定义之处开始到文件结尾
    课本上的代码编译无法通过,不知问题出在什么地方
    静态变量的好处
    1)不会被其他文件所访问
    2)其他文件中可以使用相同的名字的变量,不会发生冲突
    局部变量可以和全局变量同名:在函数内访问同名的变量时,会优先访问局部变量;局部变量的作用域在那个循环体内的堆栈中,而全局变量存在于静态区中,动态申请数据存在于堆中。
2,局部静态变量
  • 和全局静态变量不同的地方是作用域为局部作用域,作用于定义它语句开始到语句块结束;
  • 用static修饰局部变量时,变量从原来的栈区变为了静态区,离开作用域后后也不会销毁,只是驻留在静态区中无法被访问。

课堂笔记

一,1,Ubuntu下的软件安装

Ubuntu软件下载:packagename for Linux

  • 图形化界面,Ubuntu软件安装中心
  • 命令行安装:apt-get
    update:保证用户的软件包是最新的(安装前建议更新)
    upgrade packagename:更新已安装的软件包
    install packagename:安装软件
    remmove packagename:卸载软件包
  • dpkg 用来安装下的packagename.deb软件
    sudo dekg -i packagename.deb
  • 安装软件可能碰到的问题解决
    安装之前更新源:
    sudo apt-get update
    安装软件:
    sudo apt-get install packagename
    或者
    sudo dgpk -i packagename.deb(必须提前下载此软件包且路径正确)
    情况一:
    若软件不能正常安装,执行下列语句,重新设置安装环境
    sudo apt-get -f install
    然后再次执行安装命令
    情况二:
    无法获得锁,资源被占用
    执行:ps -aux
    找到所有含apt-get的进程,使用kill命令杀死
    kill -9 PID
    PID:进程号
    然后再次执行安装命令
  • pstree:进程树
2,打包压缩命令

tar -czvf filename.tar.gz
tar -xzvf 待解压缩文件

3,用户管理

useradd 增加用户,使用时配合-m选项,创建宿主目录
passwd 修改密码
userdel 删除用户,配合-r选项,将用户宿主目录删除

二,vi编辑器的使用

1,基本介绍:基于命令操作的编辑器
2,vi的安装:sudo apt-get install vim
3,vim的配置文件
三种模式:

  • 命令模式:此模式下,所输入的命令,不会显,即在屏幕上,看不到用户所输入的命令(vi打开了默认就为命令模式),再输入模式下,回到命令模式下,按esc
  • 输入模式:
    此模式下,可以进入文件的编辑。
    进入输入模式:在命令模式下输入:i,o,O,a
    退出输入模式:esc----->命令模式
  • 末行模式:
    在命令模式下,输入进入末行模式
    4,输入模式
    i:在当前光标之前插入正文
    a:在当前光标之后插入正文
    o:在当前光标所在下一行插入正文
    O:在当前光标所在上一行插入正文
    s:替换光标之前的字符
    5,命令模式
    文本的快捷操作
  • 行复制:yy(复制光标所在行的内容到缓存区)
    nyy:从光标所在行开始复制n行
  • 粘贴:p(粘贴至光标所在行的下一行)
    P(粘贴至光标所在行的上一行)
  • 字符复制:按v进入可视模式
    v:逐个字符复制,可从某一行的任意位置进行复制
    V:按行复制
    选中要复制的正文后,按y键进行复制,按p键进行粘贴
  • 删除和撤销
    dd:整行的删除
    ndd:删除此后的n行正文
    dw:删除光标之后的一个字
    ndw:删除光标之后的n个字符
    x:删除光标所在的一个字符
    nx:删除光标所在位置及其后的n个字符
  • u:撤销
    rc:替换(用c代替当前字符,C可以是任意字符)
    nrc:用n个字符替换光标之前的n个字符
  • 行间快速跳转
    H:跳转到屏幕的最上方
    M:跳转到屏幕的中间
    L:跳转到屏幕的最下方
    nl
    gg:快速跳转到第一行
    G:跳转到最后一行
    6,末行模式
    :n 跳转到指定行
    :q 退出
    :q! 强制退出
    :w 保存
    :w! 强制保存
    :wq 保存退出
    :wq! 强制保存退出
    :qa 全部退出(多文件编辑时)
    :wqa 全部保存退出
    :wa 全部保存

:nw file 将第n行写入file文件
:a,bw file 将文件a 到 b 行写入file文件
:l,.w file 将第一行到当前行写入file文件
:f file 文件重命名
:f 打印文件的基本信息

字符串(string)搜索
/string
正向搜索,跳转到第一次出现的位置;按字母n跳转到下一次出现的位置;搜索完之后,会再次从文件头开始搜索
?string
反向搜索,同上
多文件编辑
vi file file1 file2 file3 ...
分屏查看/编辑
vi -o file.doc file1.doc ...
竖屏分屏编辑
vi -O file.doc file1.doc ...
:vs file 竖屏分屏打开file文件
:sp file 横屏分屏打开file文件
vi -x filename 文件加密

二、Shell脚本

1,简介
优点:快速开发,无需编译,事实修改
缺点:运行效率低,支持数据类型少
2,简单的shell程序
echo "hello world!"
输出hello world!并换行。
3,常量
数字常量:1 2 3 4 5
字符常量:a b c d e
字符串常量:"hello" "world"
4,简单的变量使用
1)变量名=值
变量的赋值时等号两边不能有空格!
$:应用变量值
echo:输出变量的值
2)变量名
变量名可以由字母,数字,下划线组成,通常用大写字母表示,便于区分。
变量名不能以数字开头
3)变量的是使用
变量在使用的时候无需指定数据类型,shell是一个动态决定数据类型的语言。变量使用时直接赋值,即“变量名=值”。等号两侧无空格!!
变量在引用的时候,形式为:$变量名
常以形式:${变量名} 或者 “$变量名”或者“${变量名}”
4)变量的赋值
Shell里面变量的赋值均以字符串的形式赋值。
%m.nf浮点型的应用
m:输出的总位数(加小数点位)
n:小数点后保留的位数
若小数部分+小数点+整数部分<m,则多出部分用空格代替输出右对齐方式输出
%-m.nf和以上的对齐方式不同

作业

1,熟练使用vi编辑器,并掌握常用命令
yy:复制,p:粘贴,v:逐个字符复制,dd:整行的删除,u:撤销,rc:替换,q:退出,:强制,w:保存,
2,练习Shell脚本的基本语法
变量名通常大写
赋值时,通常都以字符串的格式赋值进去。
打印语句:printf "%d" ${NUM}
echo ${NUM}
3,实现字符串的拼接和分割

4,预习if,case,以及循环语句
已完成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,215评论 9 467
  • 基础命令 主要的命令和快捷键 Linux系统命令由三部分组成:cmd + [options]+[operation...
    485b1aca799e阅读 1,088评论 0 0
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,149评论 2 34
  • 12月8日的学习还是和昨天一样,首先是昨天内容的回顾。感觉比昨天稍微好一些。然后就开始今天课程的内容了。一、基本命...
    彳亍的心阅读 266评论 0 0
  • dpkg 学习 安装mysql apt-get install mysql-server-5.6 apt-get ...
    sharonji阅读 433评论 0 0